手册页部分 1M: 系统管理命令

退出打印视图

更新时间: 2014 年 7 月
 
 

groupmod(1M)

名称

groupmod - 修改系统上的组定义

用法概要

/usr/sbin/groupmod [-S repository] [-g gid [-o]] [-n name]
     [-U [+|-]user1[,user2]...] group

描述

groupmod 命令通过在系统信息库的组数据库中修改相应的条目来修改指定组的定义。

管理员可以修改对其具有 solaris.group.assign/groupname 形式的匹配授权的所有组。此授权自动分配给创建组的管理员。管理员必须具有 solaris.group.assign 授权才能修改其他所有组。

选项

支持以下选项:

–g gid

为组指定新的组 ID。此组 ID 必须是小于 MAXUID(在 <param.h> 中定义)的十进制非负整数。组 ID 缺省值为大于 99 的下一个可用(唯一)编号。( 组 ID 0-99 由 SunOS 保留以供以后应用。)

–n name

为组指定新的名称。name 参数是一个不超过八个字节、由小写字母和数字字符集中的字符组成的字符串。如果未能满足这些限制,将会显示警告消息。未来的 Solaris 发行版可能会拒绝接受不满足这些要求的组字段。name 参数必须至少包含一个字符,并且不得包括冒号 (:) 或 NEWLINE (\n)。

–o

允许 gid 重复(不唯一)。管理员必须具有 solaris.group.assign 授权才能使用此选项。

–S repository

有效的系统信息库包括 filesldap。系统信息库指定将更新哪个名称服务。当未指定 repository 时,groupmod 会查询 nsswitch.conf(4)。当系统信息库为 files 时,用户名和其他项目可以存在于其他名称服务系统信息库中,并且可以分配给 files 系统信息库中的组。当系统信息库为 ldap 时,所有可分配的属性必须存在于 ldap 系统信息库中。

–U [+|-]user1[,user2]

更新组的用户列表,如下所述:

  • 列表前面的前缀 + 将该列表添加到现有用户列表。

  • 列表前面的前缀 - 从现有用户列表中删除该列表中的各个用户。

  • 当列表前面没有前缀时,使用指定的新用户列表替换现有的用户列表。

操作数

支持下列操作数:

group

要修改的现有组名称。

退出状态

groupmod 实用程序退出时返回以下值之一:

0

成功。

2

无效的命令语法。显示 groupmod 命令的用法消息。

3

为选项提供的参数无效。

4

gid 不唯一(当未使用 –o 选项时)。

6

group 不存在。

9

name 已作为组名称存在。

10

无法更新 /etc/group 文件。

文件

/etc/group

组文件

属性

有关下列属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
system/core-os

另请参见

users(1B)groupadd(1M)groupdel(1M)logins(1M)useradd(1M)userdel(1M)usermod(1M)group(4)nsswitch.conf(4)attributes(5)

附注

groupmod 实用程序仅可修改系统信息库的组数据库中的组定义。如果使用网络名称服务(例如 NIS)通过其他条目补充本地 /etc/group 文件,则 groupmod 无法更改网络名称服务提供的信息。groupmod 会针对外部名称服务验证组名称和组 ID 的唯一性,并使用 files 系统信息库中的条目。

如果组条目(/etc/group 中的一行)超过 2047 个字符,那么 groupmod 将失败。