【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

查看所有用户组。




【美图欣赏】

相关推荐
乌托邦的逃亡者34 分钟前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
ldj202039 分钟前
Jenkins 流水线配置
运维·jenkins
古希腊数通小白(ip在学)3 小时前
stp拓扑变化分类
运维·服务器·网络·智能路由器
Muxiyale4 小时前
使用spring发送邮件,部署ECS服务器
java·服务器·spring
l1x1n05 小时前
Vim 编辑器常用操作详解(新手快速上手指南)
linux·编辑器·vim
12点一刻5 小时前
搭建自动化工作流:探寻解放双手的有效方案(2)
运维·人工智能·自动化·deepseek
未来之窗软件服务5 小时前
东方仙盟AI数据中间件使用教程:开启数据交互与自动化应用新时代——仙盟创梦IDE
运维·人工智能·自动化·仙盟创梦ide·东方仙盟·阿雪技术观
FreeBuf_6 小时前
微软365 PDF导出功能存在本地文件包含漏洞,可泄露敏感服务器数据
服务器·microsoft·pdf
lixzest6 小时前
C++ Lambda 表达式详解
服务器·开发语言·c++·算法
ajassi20006 小时前
开源 python 应用 开发(三)python语法介绍
linux·python·开源·自动化