runlpcmd 命令

用途

运行最小特权 (LP) 资源。

语法

要运行 LP 资源:
  • 在本地节点上:

    runlpcmd -N 资源名称RunCmdName [-h] [-TV] ["标志和参数"]

  • 在域内所有节点上:

    runlpcmd -a -N 资源名称RunCmdName [-h] [-TV] ["标志和参数"]

  • 在域内部分节点上:

    runlpcmd -n host1 [,host2,...] -N 资源名称RunCmdName [-h] [-TV] ["标志和参数"]

描述

runlpcmd 命令运行 LP 资源,这是根据 LP 访问控制表 (ACL)中的许可权授予用户访问权的 root 命令或脚本。 您可以使用 "runlpcmd命令调用与特定 "RunCmdName值对应的 LP 命令,其访问权限与调用用户的权限相匹配。 当使用 -N 标志调用 runlpcmd 时,将运行由 resource_name 参数指定的 LP 命令。 使用 flags_and_parms 参数指定调用命令所需的所有参数和标志。 如果未指定此参数,那么空字符串将传递给 LP 命令。 这是缺省值。

如果 CheckSum 属性值为 0,那么 runlpcmd 将返回错误 如果 ControlFlags 值设置为检查 CheckSum; 否则,不会返回任何错误。 如果 LP 命令的 ControlFlag 属性设置为在 LP 命令运行之前验证 CheckSum ,那么 runlpcmd 将执行此类检查。 仅当计算的 CheckSum 与相应 CheckSum 属性的值匹配时,才会运行该命令。 如果这两者不匹配,那么该命令将被拒绝。 但是,如果 ControlFlags 属性设置为缺省值,那么不会执行 CheckSum 验证。

您可以指定RunCmdName参数以及 "-N 资源名称标志和参数组合。 但是,在使用 RunCmdName 参数时会有一个限制。 如果有一个以上的资源与RunCmdName值和调用用户的权限相匹配,"runlpcmd将返回错误。 如果RunCmdName值与调用用户的权限匹配,"runlpcmd RunCmdName将成功返回。 为了规避此限制, runlpcmd 还允许用户通过使用 -N resource_name 标志和参数组合指定其唯一名称来运行 LP 命令。

在调用 LP 命令之前, runlpcmd 会检查 FilterScript 值是否存在。 如果是这样,那么它会将 FilterArg 值和命令行上指定的 flags_and_parms 参数字符串传递到 FilterScript。 如果 FilterScript 返回 0,那么 runlpcmd 将调用 LP 命令。 如果 FilterScript 执行导致非零值,那么 runlpcmd 将返回错误。 如果 FilterScript 为空,那么 runlpcmd 将执行某些检查 (如 ControlFlags中所指定) ,然后直接调用 LP 命令。

此命令的输出可能包含 "RC=return_code" 作为最后一行。

该命令可在任何节点上运行。 如果希望此命令在域中的所有节点上运行,请使用 -a 标志。 如果希望此命令在域中的节点子集上运行,请使用 -n 标志。 否则,该命令在本地节点上运行。

标志

-a
在域中的所有节点上更改一个或多个资源。 CT_MANAGEMENT_SCOPE 环境变量的设置确定集群作用域。 如果未设置 CT_MANAGEMENT_SCOPE ,那么 LP 资源管理器按以下顺序使用作用域设置:
  1. 管理域(如果存在)
  2. 对等域(如果存在)
  3. 本地作用域
runlpcmd 命令对 LP 资源管理器找到的第一个有效作用域运行一次。 例如,假定存在管理域和对等域,并且未设置 CT_MANAGEMENT_SCOPE 环境变量。 在这种情况下, runlpcmd –a 在管理域中运行。 要在对等域中运行 runlpcmd –a ,必须将 CT_MANAGEMENT_SCOPE 设置为 2
-n 主机1[,host2,…]
在域中指定要更改 LP 资源的一个或多个节点。 在缺省情况下,LP 资源在本地节点上进行更改。 –n 标志仅在管理域或对等域中有效。 如果没有设置 CT_MANAGEMENT_SCOPE 变量,那么 LP 资源管理器按照以下顺序使用作用域设置:
  1. 管理域(如果存在)
  2. 对等域(如果存在)
  3. 本地作用域

runlpcmd 命令对 LP 资源管理器找到的第一个有效作用域运行一次。

--N 资源名称
指定您想在域中的一个或多个节点上运行的 LP 资源的名称。
-h
将命令的用法语句写到标准输出。
-T
将命令的跟踪消息写到标准错误。
-V
将命令的详细消息写到标准输出。

参数

RunCmdName
指定您想在域中的一个或多个节点上运行的 LP 资源的名称。
" 标志与参数 "
指定使用 LP 命令和脚本时必需输入的标志和参数。 如果未指定此参数,那么空字符串将传递给 LP 命令。 这是缺省值。

安全性

要运行 runlpcmd 命令,您需要:
  • IBM.LPCommands 资源类的类 ACL 中的读许可权。
  • 资源 ACL 中的执行许可权。

    作为选择,如果在资源共享 ACL 中存在此许可权,那么资源 ACL 可以引导资源共享 ACL 的使用。

许可权在所连接系统的 LP ACL 中指定。 请参阅 lpacl 文件 ,以获取有关 LP ACL 的常规信息RSCT Administration Guide ,以获取有关修改 它们的信息。

退出状态

0
命令已成功运行。
1
RMC 发生错误。
2
命令行接口 (CLI) 脚本发生错误。
3
在命令行上指定了不正确的标志。
4
在命令行上指定了不正确的参数。
5
发生了一个由于不正确的命令行输入而导致的 RMC 错误。
6
未找到资源。

环境变量

CT_CONTACT
确定用来与 RMC 守护程序进行会话的系统。 当 CT_CONTACT 设置为主机名或 IP 地址时,该命令将联系指定主机上的 RMC 守护程序。 如果没有设置该环境变量,那么该命令会联系其运行所在的本地系统上的 RMC 守护程序。 RMC 守护程序会话的目标和管理作用域确定了被处理的 LP 资源。
CT_MANAGEMENT_SCOPE
确定用来与 RMC 守护程序进行会话以处理 LP 资源的管理作用域。 管理作用域确定可以处理资源的可能目标节点集。 有效值为:
0
指定本地作用域。
1
指定本地作用域。
2
指定对等域作用域。
3
指定管理域作用域。

如果未设置此环境变量,那么使用本地作用域。

实现细节

该命令是AIX® 的Reliable Scalable Cluster Technology(RSCT) 文件集的一部分。

标准输出

当指定 -h 标志时,此命令的用法语句将写入标准输出。 当指定 -V 标志时,此命令的详细消息将写入标准输出。

标准错误

所有跟踪消息都写到标准错误。

示例

要运行名为 LP1的 LP 资源,该资源具有必需的输入标志和参数 -a -p User Group,请输入:
runlpcmd LP1 "-a -p User Group"

位置

/opt/rsct/bin/runlpcmd
包含 runlpcmd 命令