当前位置: 首页 > news >正文

Linux useradd命令教程:如何创建新的用户账户(附实例详解和注意事项)

Linux useradd命令介绍

useradd是Linux中用于添加用户账户的命令。它可以用于创建新的用户,并可以配合不同的选项来指定用户的主目录、UID、GID、组等信息。

Linux useradd命令适用的Linux版本

useradd命令在大多数Linux发行版中都可以使用,包括但不限于Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora、Raspbian。如果在某些Linux发行版中无法使用useradd命令,可能需要安装相应的包。例如,在CentOS 7和CentOS 8中,可以使用以下命令进行安装:

[linux@bashcommandnotfound.cn ~]$ sudo yum install useradd  # CentOS 7
[linux@bashcommandnotfound.cn ~]$ sudo dnf install useradd  # CentOS 8

Linux useradd命令的基本语法

useradd命令的基本语法如下:

useradd [OPTIONS] USERNAME

其中,OPTIONS是命令选项,USERNAME是要创建的用户名。

Linux useradd命令的常用选项或参数说明

以下是useradd命令的一些常用选项:

选项说明
-d指定新用户的主目录
-e设置账户的到期日期
-g指定用户的初始组
-G指定用户所属的附加组
-m创建用户的主目录
-M不创建用户的主目录
-N不创建用户的主组
-p为用户设置密码
-r创建一个系统账户
-s指定用户的登录shell
-u指定用户的UID

Linux useradd命令实例详解

以下是一些useradd命令的使用实例:

实例1:创建新用户

[linux@bashcommandnotfound.cn ~]$ sudo useradd testuser

这个命令会创建一个名为testuser的新用户。

实例2:创建新用户并指定主目录

[linux@bashcommandnotfound.cn ~]$ sudo useradd -d /home/testuser testuser

这个命令会创建一个名为testuser的新用户,并将其主目录设置为/home/testuser

实例3:创建新用户并指定UID

[linux@bashcommandnotfound.cn ~]$ sudo useradd -u 1234 testuser

这个命令会创建一个名为testuser的新用户,并将其UID设置为1234。

实例4:创建新用户并指定初始组

[linux@bashcommandnotfound.cn ~]$ sudo useradd -g users testuser

这个命令会创建一个名为testuser的新用户,并将其初始组设置为users

实例5:创建新用户并指定附加组

[linux@bashcommandnotfound.cn ~]$ sudo useradd -G wheel testuser

这个命令会创建一个名为testuser的新用户,并将其附加组设置为wheel

实例6:创建新用户并设置密码

[linux@bashcommandnotfound.cn ~]$ sudo useradd -p password testuser

这个命令会创建一个名为testuser的新用户,并将其密码设置为password

实例7:创建新用户并指定登录shell

[linux@bashcommandnotfound.cn ~]$ sudo useradd -s /bin/bash testuser

这个命令会创建一个名为testuser的新用户,并将其登录shell设置为/bin/bash

实例8:创建新用户并设置账户的到期日期

[linux@bashcommandnotfound.cn ~]$ sudo useradd -e 2024-12-31 testuser

这个命令会创建一个名为testuser的新用户,并将其账户的到期日期设置为2024-12-31

实例9:创建一个系统账户

[linux@bashcommandnotfound.cn ~]$ sudo useradd -r testuser

这个命令会创建一个名为testuser的新系统账户。

实例10:创建新用户但不创建主目录

[linux@bashcommandnotfound.cn ~]$ sudo useradd -M testuser

这个命令会创建一个名为testuser的新用户,但不会创建用户的主目录。

实例11:创建新用户但不创建主组

[linux@bashcommandnotfound.cn ~]$ sudo useradd -N testuser

这个命令会创建一个名为testuser的新用户,但不会创建用户的主组。

实例12:创建新用户并指定多个附加组

[linux@bashcommandnotfound.cn ~]$ sudo useradd -G wheel,users testuser

这个命令会创建一个名为testuser的新用户,并将其附加组设置为wheelusers

实例13:创建新用户并指定UID和GID

[linux@bashcommandnotfound.cn ~]$ sudo useradd -u 1234 -g 1234 testuser

这个命令会创建一个名为testuser的新用户,并将其UID和GID都设置为1234。

实例14:创建新用户并指定主目录和登录shell

[linux@bashcommandnotfound.cn ~]$ sudo useradd -d /home/testuser -s /bin/bash testuser

这个命令会创建一个名为testuser的新用户,并将其主目录设置为/home/testuser,登录shell设置为/bin/bash

实例15:创建新用户并设置密码和账户的到期日期

[linux@bashcommandnotfound.cn ~]$ sudo useradd -p password -e 2024-12-31 testuser

这个命令会创建一个名为testuser的新用户,并将其密码设置为password,账户的到期日期设置为2024-12-31

Linux useradd命令的注意事项

  • 使用useradd命令需要root权限或者sudo权限。
  • 如果在使用useradd命令时遇到bash: useradd: command not found错误,可能需要安装相应的包。

Linux useradd相关命令

useradd 是一个用于在 Linux 系统上创建新用户账户的命令。以下是与用户管理相关的一些命令,以及一些其他常用的 Linux 命令:

useradd 命令:创建新的用户账户
passwd 命令:更新用户的认证令牌(密码)
usermod 命令:修改已存在用户的设置
userdel 命令:删除用户账号和相关文件
adduser 命令:用于添加用户
groupadd 命令:创建一个新的用户组
groupmod 命令:修改用户组属性
groupdel 命令:删除用户组
chage 命令:改变用户密码过期信息
gpasswd 命令:管理员工具,用于组管理
id 命令:打印实际和有效用户和群组 ID
whoami 命令:打印当前有效用户ID
groups 命令:打印当前用户的组
finger 命令:用户信息查找程序
last 命令:显示用户的最近登录信息
sudo 命令:允许权限用户执行命令
touch 命令:改变文件时间戳
tar 命令:存档文件
grep 命令:文件搜索工具,可以使用正则表达式
find 命令:在目录树中搜索文件
awk 命令:用于模式扫描和处理语言
sed 命令:流式文本编辑器
chmod 命令:更改文件模式权限
chown 命令:更改文件的用户和/或组所有权
cut 命令:删除文件每行中的部分字段

相关文章:

Linux useradd命令教程:如何创建新的用户账户(附实例详解和注意事项)

Linux useradd命令介绍 useradd是Linux中用于添加用户账户的命令。它可以用于创建新的用户,并可以配合不同的选项来指定用户的主目录、UID、GID、组等信息。 Linux useradd命令适用的Linux版本 useradd命令在大多数Linux发行版中都可以使用,包括但不限…...

基于ollama搭建本地chatGPT

ollama帮助我们可以快速在本地运行一个大模型,再整合一个可视化页面就能构建一个chatGPT,可视化页面我选择了chat-ollama(因为它还能支持知识库,可玩性更高),如果只是为了聊天更推荐chatbox 部署步骤 下载…...

C++11 数据结构3 线性表的循环链式存储,实现,测试

上一节课,我们学了线性表 单向存储结构(也就是单链表),这个是企业常用的技术,且是后面各种的基本,一定要牢牢掌握,如果没有掌握,下面的课程会云里雾里。 一 ,循环链表 1…...

初识DOM

目录 前言: 1.初识DOM: 1.1DOM树: 1.2节点(Node): 1.2.1元素节点: 1.2.2属性节点: 1.2.3文本节点: 1.3Document对象: 2.操作网页元素: 2.1找出元素: 2.1.1document.getElementById(id)&#xff1…...

计算机视觉实验五——图像分割

计算机视觉实验五——图像分割 一、实验目标二、实验内容1.了解图割操作,实现用户交互式分割,通过在一幅图像上为前景和背景提供一些标记或利用边界框选择一个包含前景的区域,实现分割①图片准备②代码③运行结果④代码说明 2.采用聚类法实现…...

移动Web学习06-移动端适配Less预处理器项目案例

项目目标:实现在不同宽度设备中等比缩放的网页效果 Less代码 import ./base; import ./normalize;// 变量: 存储37.5 rootSize: 37.5rem; *{margin: 0;padding: 0; } body {background-color: #F0F0F0; }// 主体内容 .main {// padding-bottom: (50 / 37.5rem);pa…...

LangChain-25 ReAct 让大模型自己思考和决策下一步 AutoGPT实现途径、AGI重要里程碑

背景介绍 大模型ReAct(Reasoning and Acting)是一种新兴的技术框架,旨在通过逻辑推理和行动序列的构建,使大型语言模型(LLM)能够达成特定的目标。这一框架的核心思想是赋予机器模型类似人类的推理和行动能…...

24/04/15总结

多线程: 线程 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位 并发:在同一时刻,有多个指令在单个cpu上交替执行 并行:在同一时刻,有多个指令在多个cpu上同时执行 多线程的实现方式 1.继承…...

vue3、vue2中nextTick源码解析

nexttick是啥 nextTick是Vue提供的一个全局API,由于Vue的异步更新策略导致我们对数据的修改不会更新,如果此时想要获取更新后的Dom,就需要使用这个方法. vue的异步更新策略意思是如果数据变化,vue不会立刻更新dom,而是开启一个队列,把组件更…...

【氮化镓】GaN HEMTs结温和热阻测试方法

文章《Temperature rise detection in GaN high-electron-mobility transistors via gate-drain Schottky junction forward-conduction voltages》,由Xiujuan Huang, Chunsheng Guo, Qian Wen, Shiwei Feng, 和 Yamin Zhang撰写,发表在《Microelectroni…...

c++11 标准模板(STL)本地化库 - 平面类别(std::codecvt) - 在字符编码间转换,包括 UTF-8、UTF-16、UTF-32 (四)

本地化库 本地环境设施包含字符分类和字符串校对、数值、货币及日期/时间格式化和分析,以及消息取得的国际化支持。本地环境设置控制流 I/O 、正则表达式库和 C 标准库的其他组件的行为。 平面类别 在字符编码间转换,包括 UTF-8、UTF-16、UTF-32 std::…...

【状态压缩 容斥原理 组合数学】100267. 单面值组合的第 K 小金额

本文涉及知识点 状态压缩 容斥原理 组合数学 二分查找算法合集 LeetCode100267. 单面值组合的第 K 小金额 给你一个整数数组 coins 表示不同面额的硬币,另给你一个整数 k 。 你有无限量的每种面额的硬币。但是,你 不能 组合使用不同面额的硬币。 返回…...

.net框架和c#程序设计第三次测试

目录 一、测试要求 二、实现效果 三、实现代码 一、测试要求 二、实现效果 数据库中的内容&#xff1a; 使用数据库中的账号登录&#xff1a; 若不是数据库中的内容&#xff1a; 三、实现代码 login.aspx文件&#xff1a; <% Page Language"C#" AutoEventW…...

架构师系列-搜索引擎ElasticSearch(五)- 索引设计

索引创建后&#xff0c;要非常谨慎&#xff0c;创建不好后面会出现各种问题。 索引设计的重要性 索引创建后&#xff0c;索引分片只能通过_split和_shrink 接口对其进行成倍的增加和缩减。 ES的数据是通过_routing分配到各个分片上的&#xff0c;所以本质上不推荐区改变索引的…...

kafka ----修改log4j、jmx、jvm参数等

1、修改log4j 日志路径 在kafka-run-class.sh文件中修改如下配置&#xff0c;将 LOG_DIR变量指定为自己想要存储的路径 # Log directory to use if [ "x$LOG_DIR" "x" ]; thenLOG_DIR"$base_dir/logs" fi2、修改jmx参数 在kafka-run-class.s…...

Python 全栈 Web 应用模板:成熟架构,急速开发 | 开源日报 No.223

tiangolo/full-stack-fastapi-template Stars: 15.6k License: MIT full-stack-fastapi-template 是一个现代化的全栈 Web 应用模板。 使用 FastAPI 构建 Python 后端 API。使用 SQLModel 进行 Python SQL 数据库交互&#xff08;ORM&#xff09;。Pydantic 用于数据验证和设…...

STM32之DHT11温湿度传感器

目录 一 DHT11温湿度传感器简介 1.1 传感器特点 1.2 传感器特性 1.3 传感器引脚说明 二 测量原理及方法 2.1 典型应用电路 2.2 单线制串行简介 2.2.1 串行接口 (单线双向) 2.2.2 数据示例 2.3 通信时序 三 单片机简介 3.1 STM32F103C8T6最小系统板 四 接线说明 …...

paddle ocr

paddle安装教程&#xff0c;git clone xxxgit https://blog.csdn.net/Castlehe/article/details/117356343 只有paddle 1.x 的教程&#xff1a;https://github.com/PaddlePaddle/PaddleOCR/blob/static/doc/doc_en/quickstart_en.md 报错是因为安装的是paddle 2.x而教程只给了…...

Xcode 15.0 新 #Preview 预览让 SwiftUI 界面调试更加悠然自得

概览 从 Xcode 15 开始&#xff0c;苹果推出了新的 #Preview 宏预览机制&#xff0c;它无论从语法还是灵活性上都远远超过之前的预览方式。#Preview 不但可以实时预览 SwiftUI 视图&#xff0c;而且对 UIKit 的界面预览也是信手拈来。 想学习新 #Preview 预览的一些超实用调试…...

【VS2019】x64 Native Tools Command Prompt for Vs 2019使用conda命令进入环境

【VS2019】x64 Native Tools Command Prompt for Vs 2019使用conda命令进入环境 安装完VS2019后&#xff0c;打开终端x64 Native Tools Command Prompt for Vs 2019&#xff0c;直接运行conda会出现‘conda’ 不是内部或外部命令&#xff0c;也不是可运行的程序 原因分析&am…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中&#xff0c;可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行&#xff0c;可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令&#xff0c;并忽略错误 rm somefile…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

线程同步:确保多线程程序的安全与高效!

全文目录&#xff1a; 开篇语前序前言第一部分&#xff1a;线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分&#xff1a;synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...

pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)

目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 &#xff08;1&#xff09;输入单引号 &#xff08;2&#xff09;万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...

C++--string的模拟实现

一,引言 string的模拟实现是只对string对象中给的主要功能经行模拟实现&#xff0c;其目的是加强对string的底层了解&#xff0c;以便于在以后的学习或者工作中更加熟练的使用string。本文中的代码仅供参考并不唯一。 二,默认成员函数 string主要有三个成员变量&#xff0c;…...