AIX命令参考大全,卷 5,s - u - setgroups 命令

[ 页的底部 | 上一页 | 下一页 | 目录 | 索引 | 法律条款 ]

AIX命令参考大全,卷 5,s - u

setgroups 命令

用途

重新设置会话进程组集。

语法

setgroups [ - ] [ -a GroupSet ] [ -d GroupSet ] [ -r [ Group ] ] [ GroupSet ]

描述

缺省情况下,setgroups 命令为当前 shell 显示用户当前组集和进程组集。用户数据库文件定义用户组集。当给定标志和 GroupSet 参数时,该命令会重新设置 GroupSet 参数列出的进程组集。GroupSet 参数是一个逗号分隔的组名列表。用户数据库文件中定义了可用的组。

您也可以使用 setgroups 命令从当前组集中添加或删除组。使用 -r 标志,您能重新设置实际组标识。如果指定了 Groupset 参数但没有指定标志,则 setgroups 命令重新设置所有的组并且把第一组放在实际组列表中。setgroups 命令不更改控制终端的安全性特征。

当运行 setgroups 命令时,系统始终用新的 shell 代替旧的 shell。不管命令是否成功,该命令都会替换 shell。因此,命令不会返回错误代码。

setgroups -r 命令和 newgrp 命令相同。

标志

-a GroupSet GroupSet 参数指定的组添加到当前的会话中。新设置中的组数一定不要超过 NGROUPS_MAX 组数,limits.h 文件中定义了它的值。实际组标识不变。
-d GroupSet 从当前会话中除去 GroupSet 参数指定的组。如果除去了实际组,则当前集内所列的下一组成为实际组。
-r Group 为当前进程重新设置实际组。如果未指定 Group 参数,并且当前实际组并非主组,则 -r 标志移除当前实际组并且将其复位成原始主组。如果指定了 Group 参数,则这与 newgrp 命令的行为相同。
- 将会话的组集重新初始化为它的初始登录状态。

安全性

存取控制:此命令是常规用户程序。该命令应该作为程序安装在“可信计算库”(TCB)中。带有 setuid(SUID)位集的 root 用户应该拥有此命令。

文件存取:

方式 文件
r /etc/passwd
r /etc/group

审计事件:

事件                       信息
USER_SetGroups realgroup, groupset

示例

  1. 作为用户 sah,您可以显示当前组员身份和进程组集,请输入:

    setgroups

    出现与以下内容类似的输出:

    sah:
    
       user groups = staff,payroll
       process groups = staff,payroll
  2. 要将 finance 组添加到当前会话的进程组中,请输入:
    setgroups  -a  finance
  3. 要将实际组设置为 finance,请输入:

    setgroups finance、staff、payroll

    这样就把 finance 设置为实际组。staffpayroll 组构成补充组列表。

  4. 要从当前进程组集中删除 payroll 组,请输入:
    setgroups  -d  payroll
  5. 要将进程组集更改回缺省设置,请输入:
    setgroups   -
    登录之后会将当前会话复位为原始状态。

文件

/usr/bin/setgroups 包含 setgroups 命令。
/etc/group 包含基本组属性。
/etc/passwd 包含基本用户属性。

相关信息

login 命令、newgrp 命令、setsenv 命令、tsm 命令。

[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 | 法律条款 ]