Skip to main content

用户管理

用户管理

用户管理常用的功能包括:添加用户、修改用户、删除用户、密码管理、添加用户组、修改用户组、删除用户组。

添加用户

useradd命令用来创建用户信息。

■命令格式:useradd [选项] <参数>

■常用选项

useradd常用选项

选项 描述
-c comment:给新用户添加备注。
-d home_dir:为HOME目录指定一个名字(如果不想用登录名作为主目录名的话)。
-m 创建用户的HOME目录。
-M 不创建用户的HOME目录(当默认设置里指定创建时,才用到)。
-N 不创建与用户同名的组。
-r 创建系统帐户(由系统使用,区别于个人账户)。
-p passwd:为用户帐户指定默认密码。
-s shell:指定默认登录的shell。
-u uid:为帐户指定一个唯一的UID。
-U --user-group:创建与用户同名的组,并将用户添加到组中。

■执行示例

◆执行useradd testuser1命令,添加用户testuser1。

◆执行useradd -m testuser2命令,创建用户主目录。

◆执行useradd -s /bin/bash testuser3命令,指定用户登录后使用的shell。

◆执行useradd -U testuser4命令,创建一个和用户同名的组,并将用户添加到组中。

:::note

:::

■执行less /etc/passwd命令,可以查看新增加用户的信息。

■执行cat /etc/shells命令,可以查看系统安装了哪些shell。

修改用户

usermod命令可用来修改用户帐号的各项设定。

■命令格式:usermod [选项] <参数>

■常用选项

usermod常用选项

选项 描述
-a --append:把用户追加到某些组中,仅与-G一起使用。
-d --home:用户的新HOME目录。如果同时使用-m选项,则会将当前HOME目录的内容移动到新HOME目录中,如果新HOME目录不存在,则创建。
-l --login:用户的名称将会从原用户名称修改为新用户名称。
-G --groups GROUP1[,GROUP2,...[,GROUPN]]]:用户属于的附加组列表。组之间使用逗号隔开,没有空格。
-u --uid UID:设置用户ID的新数值。

■执行示例

◆执行“usermod -aG testuser4,testuser1”命令,把testuser1用户加入testuser4组。可以执行id testuser1命令,查看是否成功追加到组。

◆执行usermod -l testuser5 testuser1命令,修改testuser1的用户名为testuser5。

◆执行usermod -d /home/testuser4 -m testuser1命令,修改testuser1用户的HOME目录为/home/testuser4 。

◆执行usermod -u 10002 testuser1命令,修改用户testuser1的UID为新值。

删除用户

■命令格式:userdel [选项] <参数>

■常用选项

userdel常用选项

参数 描述
-h --help:显示帮助信息。
-r --remove:用户HOME目录中的文件将随用户HOME目录和用户邮箱一起删除,在其它文件系统中的文件需要手动搜索并删除。
-Z --selinux-user:为用户删除所有的SELinux用户映射。

■执行示例

◆执行userdel testuser1命令,将删除testuser1相关的用户数据文件,如/etc/passwd、/etc/group、/etc/shadow等都将被删除,但不删除home目录及文件。

◆执行userdel -r testuser1命令,删除用户HOME目录及其它相关文件,home目录及文件也将被删除。

:::warning

请不要轻易用-r参数,它会在删除用户的同时删除用户所有的文件和目录。如果用户目录下有重要的文件,切记在删除前请备份。 :::

密码管理

■命令格式:passwd [选项] <参数>

■常用选项

passwd常用选项

选项 描述
-l 锁定密码,即禁用帐号。
-u 解锁指定用户的密码。
-d 删除用户密码,这是禁用一个用户密码的快速方法。

■执行示例

[root@localhost ~]# passwd test          #修改test这个用户的密码。

更改用户 test 的密码 。

新的 密码:

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。

[root@localhost ~]# passwd -l test        #锁定test这个用户。

锁定用户 test 的密码 。

passwd: 操作成功

[root@localhost ~]# passwd -u test       #解锁test这个用户。

解锁用户 test 的密码。

passwd: 操作成功

:::note

passwd调用的认证模块与“/etc/pam.d/system-auth”和“/etc/pam.d/password-auth”中的相关配置有关,配置详情请参见“常用模块介绍”章节中的“pam_pwquality.so”和“pam_deepin_pw_check.so”。 :::

添加用户组

■命令格式:groupadd [选项] <参数>

■常用选项

groupadd常用选项

选项 描述
-o --non-unique:允许创建有重复 GID 的组。
-g GID:指定新用户组的组标识号。
-r --system:创建一个系统用户组。

■执行示例

◆执行groupadd testgrp命令,添加用户组testgrp。

◆执行groupadd -r testgrp2命令,创建一个系统用户组。

◆执行groupadd -g 1110 testgrp3命令,向系统中增加一个新组testgrp3,同时指定新组的组标识号是1110。

◆执行useradd -m -g testgrp testuser6命令,创建用户testuser6并添加到testgrp组。

:::note

:::

■创建用户并添加到组中时,必须保证组已存在。

■执行less /etc/group命令,可查看用户组是否添加成功。

修改用户组

■命令格式:groupmod [选项] <参数>

■常用选项

groupmod常用选项

选项 描述
-g GID:为用户组指定新的组标识号。
-n 修改用户组的名称。

■执行示例

◆执行groupmod -n newgrp testgrp命令,将用户组testgrp的名称修改成newgrp。

◆执行groupmod -g 111111 newgrp命令,修改用户组newgrp的用户组ID为111111。

删除用户组

■命令格式:groupdel [选项] 参数

■常用选项

选项 描述
-R chroot到的目录。
-P /etc/* 文件所在的前缀目录。
-f 强制删除。

■执行示例:执行groupdel testgrp命令,删除用户组testgrp。

:::note

当没有用户属于该组或用户组不是任何用户的主组的情况下,才可以删除该用户组,其它情况下均不能删除该用户组。 :::