groupmod - 修改系统上的组定义
概要
groupmod [选项] 组名
描述
groupmod 命令通过修改组数据库中的相应条目来修改指定组名的定义。
选项
适用于 groupmod 命令的选项如下:
-a, --append
如果使用 -U 指定组员,则将其附加到现有的成员列表中,而不是替换它。
-g, --gid 组 ID
给定组名的组 ID 将更改为组 ID。
组 ID 的值必须是非负十进制整数。此值必须是唯一的,除非使用 -o 选项。
如果用户将该组作为主组,则会更新以保持该组作为其主组。
任何具有旧组 ID 且必须继续属于该组的文件,都必须手动更改其组 ID。
不会对 GID_MIN、GID_MAX、SYS_GID_MIN 或 SYS_GID_MAX(位于 /etc/login.defs 中)进行任何检查。
-h, --help
显示帮助消息并退出。
-n, --new-name 新组名
组的名称将从组名更改为新组名。
-o, --non-unique
与 -g 选项一起使用时,允许将组 GID 更改为非唯一值。
-p, --password 密码
加密密码,如 crypt(3) 返回的那样。
注意:不建议使用此选项,因为密码(或加密密码)将对用户可见,用户可以通过列出进程来查看。
您应该确保密码符合系统的密码策略。
-R, --root CHROOT_DIR
在 CHROOT_DIR 目录中应用更改,并使用 CHROOT_DIR 目录中的配置文件。仅支持绝对路径。
-P, --prefix PREFIX_DIR
在 PREFIX_DIR 目录中应用更改,并使用 PREFIX_DIR 目录中的配置文件。此选项不使用 chroot,而是用于准备交叉编译目标。存在一些限制:NIS 和 LDAP 用户/组未经过验证。PAM 身份验证使用主机文件。不支持 SELINUX。
-U, --users
要添加为组员的用户名列表,以逗号分隔。
默认行为(如果未指定 -g 和 -U 选项)由 /etc/login.defs 中的 USERGROUPS_ENAB 变量定义。
配置
/etc/login.defs 中的以下配置变量会更改此工具的行为:
MAX_MEMBERS_PER_GROUP(数字)
每个组条目的最大成员数。当达到最大值时,将在 /etc/group 中启动一个新的组条目(具有相同的名称、相同的密码和相同的 GID)。
默认值为 0,这意味着组中成员的数量没有限制。
此功能(拆分组)允许限制组文件中的行长度。这对于确保 NIS 组的行不超过 1024 个字符非常有用。
如果您需要强制执行此限制,可以使用 25。
注意:并非所有工具都支持拆分组(即使在 Shadow 工具套件中也是如此)。除非您确实需要,否则不应使用此变量。
文件
/etc/group
组帐户信息。
/etc/gshadow
安全的组帐户信息。
/etc/login.defs
Shadow 密码套件配置。
/etc/passwd
用户帐户信息。
退出值
groupmod 命令的退出值为:
0 E_SUCCESS:成功
2 E_USAGE:无效的命令语法
3 E_BAD_ARG:选项的参数无效
4 E_GID_IN_USE:组 ID 已经在使用中
6 E_NOTFOUND:指定的组不存在
9 E_NAME_IN_USE:组名已经在使用中
10 E_GRP_UPDATE:无法更新组文件
11 E_CLEANUP_SERVICE:无法设置清理服务
12 E_PAM_USERNAME:无法确定您的用户名,以便与 pam 一起使用
13 E_PAM_ERROR:pam 返回错误,请查看 syslog 设施 ID groupmod 中的 pam 错误消息
参见
chfn(1), chsh(1), passwd(1), gpasswd(8), groupadd(8), groupdel(8), login.defs(5), useradd(8), userdel(8), usermod(8).