groupadd - 创建一个新的组
概要
groupadd [选项] 新组名
描述
^ roupadd 命令使用命令行中指定的值以及系统中的默认值来创建新的组帐户。 新组将被添加到系统文件中,如所必需的那样。
组名只能包含小写和大写字母、数字、下划线或连字符。 它们可以以美元符号结尾。 连字符不允许出现在组名的开头。 完全数字的组名和组名 . 或 .. 也不允许。
组名最多可以有 32 个字符长。
选项
适用于 groupadd 命令的选项如下:
-f, --force
此选项导致命令在指定的组已经存在时,简单地以成功的状态退出。 当与 -g 一起使用时,并且指定的 GID 已经存在,则会选择另一个(唯一的)GID(即,-g 被禁用)。
-g, --gid GID
组的数值 ID。 GID 必须是唯一的,除非使用 -o 选项。 该值必须为非负数。 默认情况下,将使用大于或等于 GID_MIN 且大于所有其他组的最小 ID 值。
另请参阅 -r 选项和 GID_MAX 的描述。
-h, --help
显示帮助信息并退出。
-K, --key KEY=VALUE
覆盖 /etc/login.defs 中的默认值(GID_MIN、GID_MAX 等)。 可以指定多个 -K 选项。
示例:-K GID_MIN=100 -K GID_MAX=499
注意:-K GID_MIN=10,GID_MAX=499 目前尚不起作用。
-o, --non-unique
允许创建具有已使用数值 ID 的组。 结果是,对于此 GID,映射到组 NEWGROUP 可能不是唯一的。
-p, --password PASSWORD
定义组帐户的初始密码。 预期 PASSWORD 已加密,如 crypt(3) 返回的那样。
如果没有此选项,组帐户将被锁定且没有定义密码,即系统帐户文件 /etc/group 或 /etc/gshadow 中相应的字段中将有一个感叹号。
注意:不建议使用此选项,因为密码(或加密密码)将对列出进程的用户可见。
您应该确保密码符合系统的密码策略。
-r, --system
创建一个系统组。
新系统组的数值标识符将在 login.defs 中定义的 SYS_GID_MIN-SYS_GID_MAX 范围内选择,而不是 GID_MIN-GID_MAX。
-R, --root CHROOT_DIR
在 CHROOT_DIR 目录中应用更改,并使用 CHROOT_DIR 目录中的配置文件。 仅支持绝对路径。
-P, --prefix PREFIX_DIR
将更改应用于根文件系统下位于目录 PREFIX_DIR 中的配置文件。 此选项不使用 chroot,而是用于准备交叉编译目标。 存在一些限制:NIS 和 LDAP 用户/组不会被验证。 PAM 身份验证使用主机文件。 没有 SELINUX 支持。
-U, --users
一个逗号分隔的用户名列表,用于将用户添加到组中。
如果未指定 -g、-N 和 -U 选项,则默认行为由 /etc/login.defs 中的 USERGROUPS_ENAB 变量定义。
配置
/etc/login.defs 中的以下配置变量会更改此工具的行为:
GID_MAX (数字), GID_MIN (数字)
useradd、groupadd 或 newusers 用于创建常规组的组 ID 范围。
GID_MIN(以及 GID_MAX)的默认值为 1000(以及 60000)。
MAX_MEMBERS_PER_GROUP (数字)
每个组条目的最大成员数。当达到最大值时,将在 /etc/group 中启动一个新的组条目(具有相同的名称、相同的密码和相同的 GID)。
默认值为 0,表示组中成员数量没有限制。
此功能(拆分组)允许限制组文件中的行长度。这对于确保 NIS 组的行不超过 1024 个字符非常有用。
如果您需要强制执行此限制,可以使用 25。
注意:并非所有工具(即使在 Shadow 工具套件中)都支持拆分组。除非您真的需要,否则不应使用此变量。
SYS_GID_MAX (数字), SYS_GID_MIN (数字)
useradd、groupadd 或 newusers 用于创建系统组的组 ID 范围。
SYS_GID_MIN(以及 SYS_GID_MAX)的默认值为 101(以及 GID_MIN-1)。
文件
/etc/group
组帐户信息。
/etc/gshadow
安全的组帐户信息。
/etc/login.defs
Shadow 密码套件配置。
注意事项
您不能添加 NIS 或 LDAP 组。这必须在相应的服务器上执行。
如果组名已存在于外部组数据库(如 NIS 或 LDAP)中,groupadd 将拒绝组创建请求。
退出值
groupadd 命令退出时返回以下值:
0 成功
2 无效的命令语法
3 选项的参数无效
4 GID 已经使用(在不使用 -o 选项的情况下)
9 组名已经使用
10 无法更新组文件
参见
chfn(1), chsh(1), passwd(1), gpasswd(8), groupdel(8), groupmod(8), login.defs(5), useradd(8), userdel(8), usermod(8).