mklpcmd 命令
用途
给资源监视和控制 (RMC) 子系统定义新的最小特权 (LP) 资源,并指定用户许可权。
语法
mklpcmd [-n 东道主] [-l] [ -c 0 │ 1 │ 2 │ 3 ] [–R RunCmdName] [-s FilterScript] [-A FilterArg] [-h] [-TV] 资源名称 命令路径 [ ID 许可证 ] …
描述
mklpcmd 命令向资源监视和控制 (RMC) 子系统子系统定义新的 LP 资源。 LP 资源是根据 LP 访问控制表 (ACL)中的许可权授予用户访问权的 root 命令或脚本。 使用 resource_name 参数指定 LP 资源。 command_path 参数指定可用 LP 访问权运行的命令或脚本。 指定命令或脚本的完整路径名。 如果创建资源时存在 command_path ,那么 LP 资源管理器将计算 CheckSum 并分配 CheckSum 属性值。 如果 command_path 不存在,那么 LP 资源管理器会将 0 指定为 CheckSum 属性值。
使用 -l 标志来锁定 LP 资源。 在删除资源之前,必须将资源解锁。 使用 -c 标志来指定资源的控制设置。
您还可以使用 mklpcmd 命令在创建资源时为用户指定许可权。 要这样做,您需要对资源具有管理员许可权。 管理员许可权使您能够设置和编辑许可权。 您可以用该命令指定多个用户标识和许可权。 请参阅 Examples 部分以获取更多信息。
该命令可在任何节点上运行。 在管理域或对等域中,使用 -n 标志在 host指定的节点上定义 LP 资源。 否则,该命令在本地节点上运行。
标志
- -主机
- 指定位于域中的节点,将在该节点中定义 LP 资源。 在缺省情况下,LP 资源在本地节点上定义。 –n 标志仅在管理域或对等域中有效。 如果没有设置 CT_MANAGEMENT_SCOPE 变量,那么 LP 资源管理器按照以下顺序使用作用域设置:
- 管理域(如果存在)
- 对等域(如果存在)
- 本地作用域
mklpcmd 命令对 LP 资源管理器找到的第一个有效作用域运行一次。
- -l
- 将新的 LP 资源定义为锁定,这样不会因意外而更改资源。 在取消设置 Lock 属性之前,无法从 RMC 子系统中除去该资源。
如果没有指定该标志,那么新资源不被锁定。 这是缺省情况。
- --c0│1│2│3
- 设置 ControlFlags 属性,该属性用于指定 LP 命令的控制功能。 如果未指定 ControlFlags ,那么缺省情况下会将其设置为 1 。 使用该标志可指定以下的一个值:
- 0
- 不验证 CheckSum 值。
- 1
- 不验证 CheckSum 值。 这是缺省情况。
- 2
- 验证 CheckSum 值。
- 3
- 验证 CheckSum 值。
当尝试使用 runlpcmd 命令运行 LP 资源时, ControlFlags 属性的值确定在运行由该资源表示的命令之前执行哪些检查。
在此 RSCT 发行版中, ControlFlags 属性值指定是否验证 CheckSum 值。
在 RSCT 的前发行版中, ControlFlags 属性值还指定是否不允许 runlpcmd 的输入自变量中存在某些字符。 检查这些字符是否不再是必需的。
为了保持与 RSCT 先前发行版中定义的 LP 资源的兼容性, ControlFlags 属性值在验证 CheckSum 值时保持不变。 因此,值 0 和 1 指示不验证 CheckSum 值,值 2 和 3 指示将验证 CheckSum 值。
- -R RunCmdName
- 指定此资源的 RunCmdName 值,该值将用作 runlpcmd 命令的参数。
- --s 脚本路径
- 指定过滤器脚本的标准路径。
- --A 论点
- 指定要传递给过滤器脚本的参数字符串。
- -h
- 将命令的用法语句写到标准输出。
- -T
- 将命令的跟踪消息写到标准错误。
- -V
- 将命令的详细消息写到标准输出。
参数
- 资源名称
- 要定义到 RMC 子系统的 LP 资源的名称或标识。
- 命令路径
- 命令或脚本的完整标准路径名。
- ID perm ...
- 在创建资源时指定用户的许可权。 此参数是可选的。
- 标识
- 指定 ACL 条目的用户身份。 请参阅 lpacl 信息的 User identities 部分以获取此参数的有效格式。
- 性能
- 指定 ACL 条目的用户许可权。 该参数可以由以下任何值的组合构成:
- r
- 读许可权 (由 q, l, e和 v 许可权组成)
- w
- 写许可权 (由 d, c, s和 o 许可权组成)
- a
- 管理员许可权
- x
- 执行许可权
- q
- 查询许可权
- l
- 枚举许可权
- e
- 事件许可权
- v
- 验证许可权
- d
- 定义和取消定义许可权
- c
- 刷新许可权
- s
- 设置许可权
- o
- 联机、脱机和重置许可权
- 0
- 无许可权
安全性
- 要运行带有一个或多个 标识:perm 参数的 mklpcmd 命令,您需要:
- IBM.LPCommands 资源类的类 ACL 中的读和写许可权。
- 资源初始 ACL 中的读许可权和管理员许可权。
作为备用方案,如果这些许可权存在于资源共享 ACL 中,那么资源初始 ACL 可以引导资源共享 ACL 的使用。
- 要运行没有 标识:perm 参数的 mklpcmd 命令,您需要 IBM.LPCommands 资源类的类 ACL 中的写许可权。
退出状态
- 0
- 命令已成功运行。
- 1
- RMC 发生错误。
- 2
- 命令行接口 (CLI) 脚本发生错误。
- 3
- 在命令行上指定了不正确的标志。
- 4
- 在命令行上指定了不正确的参数。
- 5
- 发生了一个由于不正确的命令行输入而导致的 RMC 错误。
- 6
- 未找到资源。
环境变量
- CT_CONTACT
- 确定用来与 RMC 守护程序进行会话的系统。 当 CT_CONTACT 设置为主机名或 IP 地址时,该命令将联系指定主机上的 RMC 守护程序。 如果未设置 CT_CONTACT ,那么该命令将与运行该命令的本地系统上的 RMC 守护程序联系。 RMC 守护程序会话的目标和管理作用域确定了被处理的 LP 资源。
- CT_MANAGEMENT_SCOPE
- 确定用来与 RMC 守护程序会话以处理 LP 资源的管理作用域。 管理作用域确定了能处理资源的可能目标节点集。 有效值为:
- 0
- 指定本地作用域。
- 1
- 指定本地作用域。
- 2
- 指定对等域作用域。
- 3
- 指定管理域作用域。
如果未设置此环境变量,那么使用本地作用域。
实现细节
该命令是AIX® 的Reliable Scalable Cluster Technology(RSCT) 文件集的一部分。
标准输出
当指定 -h 标志时,此命令的用法语句将写入标准输出。 当指定 -V 标志时,此命令的详细消息将写入标准输出。
标准错误
所有跟踪消息都写到标准错误。
示例
- 要创建名为 LP1 的 LP 资源,该资源指向本地节点上名为 /tmp/user1/lpcmd1 的命令,请输入:
mklpcmd LP1 /tmp/user1/lpcmd1 - 要创建名为 LP2 的 LP 资源,该资源指向管理域中 nodeB 上名为 /tmp/my_command1 的命令,请输入:
mklpcmd -n nodeB LP2 /tmp/my_command1 - 要在 ControlFlags 设置为 3 (这意味着 验证 CheckSum 值) 的情况下创建名为 lp3 的 LP 资源,请输入:
mklpcmd -c 3 LP3 /tmp/cmd_lp3 - 要创建名为 lp4 的 LP 资源,该资源指向 /tmp/testscript,具有 RunCmdName 值 test, FilterScript 值 /tmp/filterscr以及过滤器参数 node1 和 node2,请输入:
mklpcmd -R test -f /tmp/filterscr -A "node1,node2" lp4 /tmp/testscript - 要创建名为 lp5 的 LP 资源,该资源指向 /usr/bin/mkrsrc 并授予用户 user1@LOCALHOST 和 user2@LOCALHOST 读,写和执行许可权,请输入:
mklpcmd lp5 /usr/bin/mkrsrc user1@LOCALHOST rwx user2@LOCALHOST rwx
位置
- /opt/rsct/bin/mklpcmd
- 包含 mklpcmd 命令