8.3. 从命令行管理用户
您可以使用命令行界面(CLI)来管理用户和组。这可让您在 Red Hat Enterprise Linux 环境中添加、删除和修改用户和用户组。
8.3.1. 使用命令行添加新用户 复制链接链接已复制到粘贴板!
您可以使用 useradd
工具添加新用户。
先决条件
-
有
Root
访问权限
流程
添加新用户,使用:
useradd <options> <username>
# useradd <options> <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
useradd
命令的选项替换 options,并使用用户名称替换 username。例 8.1. 添加新用户
添加用户 ID 为
5000
的用户sarah
,使用:useradd -u 5000 sarah
# useradd -u 5000 sarah
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要验证新用户是否已添加,使用
id
工具程序。id sarah
# id sarah
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 该命令返回:
uid=5000(sarah) gid=5000(sarah) groups=5000(sarah)
uid=5000(sarah) gid=5000(sarah) groups=5000(sarah)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.3.2. 使用命令行添加新组 复制链接链接已复制到粘贴板!
您可以使用 groupadd
工具添加新组。
先决条件
-
有
Root
访问权限
流程
要添加新组,请使用:
groupadd options group-name
# groupadd options group-name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
groupadd
命令的命令行选项替换 options,并使用 group-name 替换 group-name。例 8.2. 添加新组
要添加组 ID 为
5000
的组sysadmins
,请使用:groupadd -g 5000 sysadmins
# groupadd -g 5000 sysadmins
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要验证新组是否已添加,使用
tail
实用程序。getent group sysadmin
# getent group sysadmin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 该命令返回:
sysadmins:x:5000:
sysadmins:x:5000:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.3.3. 从命令行将用户添加到补充组中 复制链接链接已复制到粘贴板!
您可以将用户添加到补充组中,以管理权限或启用对特定文件或设备的访问权限。
先决条件
-
有
root
访问权限
流程
要在用户的附加组中添加一个组,请使用:
usermod --append -G <group_name> <username>
# usermod --append -G <group_name> <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要验证新的组被添加到用户
sysadmin
的附加组中,请使用:groups <username>
# groups <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.3.4. 创建组目录 复制链接链接已复制到粘贴板!
在 UPG 系统配置下,您可以将 set-group 身份权限 (setgid 位)应用到目录。setgid
位使得管理共享目录的组项目变得更加简单。当您将 setgid
位应用到某个目录中时,在该目录中创建的文件会自动分配给拥有该目录的组群。在此组中具有写和执行权限的任何用户现在可以在目录中创建、修改和删除文件。
先决条件
-
有
Root
访问权限
流程
创建目录:
mkdir <directory-name>
# mkdir <directory-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建组:
groupadd <group-name>
# groupadd <group-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 向组中添加用户:
usermod --append -G <group_name> <username>
# usermod --append -G <group_name> <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将目录的用户和组群所有权与 group-name 组关联:
chgrp <group_name> <directory>
# chgrp <group_name> <directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置写入权限以允许用户创建和修改文件和目录,并设置
setgid
位以在目录中应用此权限:chmod g+rwxs <directory>
# chmod g+rwxs <directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要验证设置权限的正确性,请使用:
ls -ld <directory>
# ls -ld <directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 该命令返回:
*drwx__rws__r-x.* 2 root _group-name_ 6 Nov 25 08:45 _directory-name_
*drwx__rws__r-x.* 2 root _group-name_ 6 Nov 25 08:45 _directory-name_
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.3.5. 在命令行上删除用户 复制链接链接已复制到粘贴板!
您可以使用命令行删除用户帐户。此外,下面提到的命令是删除用户帐户的命令,也可选择性地删除用户数据和元数据,如其主目录和配置文件。
-
您有
root
访问权限。 - 用户当前存在。
确保用户已退出登录:
loginctl terminate-user user-name
# loginctl terminate-user user-name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要仅删除用户帐户,而不删除用户数据:
userdel user-name
# userdel user-name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要删除用户、数据和元数据:
删除用户、其主目录、其邮件假脱机及其 SELinux 用户映射:
userdel --remove --selinux-user user-name
# userdel --remove --selinux-user user-name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除其他用户元数据:
rm -rf /var/lib/AccountsService/users/user-name
# rm -rf /var/lib/AccountsService/users/user-name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此目录存储系统在主目录可用之前所需的有关用户的信息。根据系统配置,用户在登录屏幕进行身份验证之前,主目录可能无法使用。
重要如果您没有删除此目录,并在稍后重新创建同一用户,则重新创建的用户仍可以使用从已删除的用户继承来的某些设置。