【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

查看所有用户组。




【美图欣赏】

相关推荐
单音GG23 分钟前
推荐一个基于协程的C++(lua)游戏服务器
服务器·c++·游戏·lua
Shepherd06191 小时前
【Jenkins实战】Windows安装服务启动失败
运维·jenkins
shitian08111 小时前
用轻量云服务器搭建一个开源的商城系统,含小程序和pc端
服务器·小程序·开源
Biomamba生信基地1 小时前
Linux也有百度云喔~
linux·运维·服务器·百度云
米饭是菜qy1 小时前
TCP 三次握手意义及为什么是三次握手
服务器·网络·tcp/ip
yaoxin5211231 小时前
第十九章 TCP 客户端 服务器通信 - 数据包模式
服务器·网络·tcp/ip
new_abc2 小时前
Ubuntu 22.04 ftp搭建
linux·运维·ubuntu
flying robot2 小时前
RPM的使用
linux
鹿鸣天涯2 小时前
‌华为交换机在Spine-Leaf架构中的使用场景
运维·服务器·网络