【Linux】adduser命令使用

我们经常在linux系统中创建用户。有时候用的是 useradd有时候用的是 adduser ,好混乱啊到底用哪个啊。今天咱们一起来学习一下。


adduser与useradd的区别

useradd 命令是内置的 Linux 命令,在任何 Linux 系统中都可用。然而,使用这种低级别的工具创建用户是比较繁琐的,因为默认情况下,它不会创建主目录和用户密码。

adduser 不是标准的 Linux 命令,它本质上是一个 perl脚本,在后台调用 useradd 命令。这个高级实用程序在 Linux 中创建用户的时候效率更高,它提供了创建主目录、设置密码以及其他一些参数的选项。

useradd 只创建用户,不会创建用户密码和工作目录,创建完了需要使用 passwd 去设置新用户的密码。

adduser 在创建用户的同时,会创建工作目录和密码(提示你设置),做这一系列的操作。其实 useradd、userdel 这类操作更像是一种命令,执行完了就返回。而 adduser 更像是一种程序,需要你输入、确定等一系列操作。

adduser实际并不是一个真正的命令文件,而仅仅是useradd的一条别名命令,因此这两个命令的使用方法完全相同。


今天我学习一下adduser。

我们今天用的是cenos系统。

语法

bash 复制代码
adduser [参数] 用户名

命令常用选项及作用

执行令 adduser--help

执行命令结果

参数

  • -b, --base-dir BASE_DIR 新账户的主目录的基目录
  • -c, --comment COMMENT 新账户的备注信息,备注信息保存在 /etc/passwd 的备注栏中
  • -d, --home-dir HOME_DIR 新账户的主目录
  • -D, --defaults 显示或更改默认的 useradd 配置
  • -e, --expiredate EXPIRE_DATE 新账户的过期日期,日期格式为 YYYY-MM-DD。如果未指定,useradd 将使用在 /etc/default/useradd 中指定的到期日期 EXPIRE,或默认情况下使用空字符串(无过期)
  • -f, --inactive INACTIVE 指定在密码过期后多少天即关闭该账号。如果为 0 账号立即被停用;如果为 -1 则账号一直可用。默认值为 -1
  • -g, --gid GROUP 指定用户所属的主组。主组必须已经存在
  • -G, --groups GROUPS 指定用户所属的附加组,多个组使用逗号分隔
  • -h, --help 显示帮助信息并推出
  • -k, --skel SKEL_DIR 指定用户的骨架目录。与选项 -m (或 --create-home)联用,骨架目录包含要复制到用户主目录中的文件和目录
  • -K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值(UID_MIN、UID_MAX、UMASK、PASS_MAX_DAYS 等)
  • -l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
  • -m, --create-home 创建用户的家目录。useradd 默认会创建 home 目录,除非 /etc/login.defs 中的 CREATE_HOME 设置为no
  • -M, --no-create-home 不创建用户的主目录。即使 /etc/login.defs 中的 CREATE_HOME 设置为 yes
  • -N, --no-user-group 不创建同名的组
  • -o, --non-unique 允许使用重复的 UID 创建用户
  • -p, --password PASSWORD 设置账户密码,注意是使用 crypt(3) 加密后的用户密码,不是密码的明文。默认是用户密码不可用。推荐使用 passwd 命令给用户设置密码
  • -r, --system 创建一个系统账户
  • -R, --root CHROOT_DIR 设置根目录。在 Linux 系统中,系统默认的根目录是 /
  • -s, --shell SHELL 新账户的登录 Shell
  • -u, --uid UID 新账户的用户 ID
  • -U, --user-group 创建与用户同名的组,并将用户添加到此组中。为默认动作,除非 /etc/login.defs 中 USERGROUPS_ENAB 被设置为 no 或显示使用选项 -N, --no-user-group。
  • -Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER。

常用命令示例

命令:adduser 用户名

执行命令 :adduser test2

添加一个用户名是:test2的一般用户。

命令:adduser -e 时间 用户名

执行命令 :adduser -e 2023-13-31 test3

添加一个用户名是:test3的一般用户并设置账户有效期。

命令:adduser -g组名 用户名

执行命令 :adduser -groot test4

添加一个用户名是:test4的一般用户并指定用户所在的组为root用户组。

命令:adduser -r 用户名

执行命令 :adduser -r test2

添加创建一个系统用户。

命令:adduser -d 目录

执行命令 :adduser -d /home/zhangsanfeng test2

为新添加的用户指定/home目录 。

命令:cat /etc/passwd

执行命令 :cat /etc/passwd

查看所有用户。

命令:cat /etc/group

执行命令 :cat /etc/group

查看所有用户组。




【美图欣赏】

相关推荐
kunge201325 分钟前
Ubuntu22.04 安装virtualbox7.1
linux·virtualbox
清溪54926 分钟前
DVWA中级
linux
m0_7482540937 分钟前
2025最新华为云国际版注册图文流程-不用绑定海外信用卡注册
服务器·数据库·华为云
MUY09901 小时前
应用控制技术、内容审计技术、AAA服务器技术
运维·服务器
楠奕1 小时前
elasticsearch8.12.0安装分词
运维·jenkins
Sadsvit1 小时前
源码编译安装LAMP架构并部署WordPress(CentOS 7)
linux·运维·服务器·架构·centos
xiaok1 小时前
为什么 lsof 显示多个 nginx 都在 “使用 443”?
linux
java资料站1 小时前
Jenkins
运维·jenkins
苦学编程的谢2 小时前
Linux
linux·运维·服务器
G_H_S_3_2 小时前
【网络运维】Linux 文本处理利器:sed 命令
linux·运维·网络·操作文本