Sun Management Center 3.6.1 用户指南

CLI 命令

有关命令类型和概念的概述,请参见CLI 命令和参数概述。有关基本的 CLI 命令所使用的参数的详细信息,请参阅预定义的参数和标记

基本 CLI 命令

以下列表介绍了基本的 CLI 命令。

alias

说明

使用 alias 命令可以为经常使用的命令或包含复杂参数的命令创建别名。别名不能与现有 CLI 命令的名称相同。别名定义中的空格必须用双引号(",ASCII 字符 0x22)括起。

当用户退出 CLI 会话时,用户指定的别名将保存在 aliases 目录下的一个文件内。当用户登录到 CLI 会话中时,便可以使用这些别名。

语法

alias [<pseudonym>="command [parameters]"]

示例


> alias assign=set
> alias alarms="getAlarms severity=dwn"

如果调用时没有带任何参数,alias 命令将打印一份已定义的别名列表以及这些别名对应的值。下例显示了调用时不包含参数的 alias 命令的结果。


> alias
assign - set
alarms - getAlarms severity=dwn
attrib

说明

attrib 命令用来检索拓扑对象的属性。

语法

attrib [group=groupName [name=attribName] [-key]]

browse

说明

browse 命令用于激活拓扑的浏览模式。

语法

browse

cd

说明

cd 命令用于更改当前的拓扑路径。如果没有指定任何路径,则把默认的域设置为当前路径。如果指定了一个数值 (n),则当前路径将被设置为第 n 级子路径,如 list 命令所示。

语法

cd [path|number]

clear

说明

clear 命令用于删除当前会话期间设置的所有参数。但是,此命令不会删除从命令行设置的参数。此命令与 unset 命令作用相似,但是不要求参数名是变量。

语法

clear

data

说明

data 命令用于显示拓扑对象的详细信息。如果指定了一个数值 (n),则路径将被设置为第 n 级子路径,如 list 命令所示。

语法

data [path|number|-key]

end

说明

end 命令用于取消激活拓扑的浏览模式。

语法

end

exit

说明

exit 命令用于终止您的服务器连接和 CLI 会话。

语法

exit [-onError]

参数

onError

如果在执行上一条命令的过程中发生了异常,onError 参数可用于终止该 CLI 会话。该参数仅可用于批处理模式下。


注 –

exit 命令和 quit 命令具有完全相同的功能。


goto

说明

goto 命令用于导航到符合大小写模式的拓扑路径。如果发现多条匹配的路径,将提示用户选择其中一条路径。

语法

goto <pattern>

help

说明

help 命令用于显示有关 CLI 命令及其参数的信息。帮助信息适于显示在非位图模式的终端屏幕上。执行 help 命令而不包含参数时,该命令将按字母顺序显示可用 CLI 命令的列表及其简要说明。首先列出基本命令,然后是扩展命令。

语法

help [-e][-h] [<command>|about|legal]

参数

-e-hcommandaboutlegal

-e 以详细模式显示帮助文本。也支持使用以下格式:<command> -e

-h 以正常模式显示帮助文本。也支持使用以下格式:<command> -h

command 显示特定于该命令的信息。

about 显示 CLI 的版本信息。

legal 显示 CLI 的许可证条款。

示例

下例显示了 getAlarms 命令的帮助。


> help getAlarms
getAlarms [a=host[,host]+] [alarm_filter_list]
 - Get alarm information on an agent or a list of agents under a
set of filter conditions. If no agent is provided, all alarms will
be obtained. All the filter conditions are "ANDED" to provide the
result. The filter conditions as specified in alarm_filter_list
comprises:
  domain=domain and/or
  m=module[+instance] and/or
  managed_object=managed_object and/or
  property=property and/or
  property_instance=property_instance and/or
  qualifier=qualifier and/or
  severity=[DIS,DWN,ERR,OFF,INF,IRR,WRN] and/or
  state=[C,F,O] and/or
  ack=[A,N]
history

说明

history 命令用于列出或执行以前输入到 CLI 会话中的命令。如果调用 history 命令时没有带任何参数,并且之前设置了历史记录,则会列出以前输入的所有命令。 如果调用 history 命令时带有一个数字参数,并且之前设置了历史记录,则会执行符合该参数的命令。

语法

history [num]

kill

说明

kill 命令用于终止正在后台运行的所有命令。

语法

kill

list

说明

list 命令用于列出某条路径下的对象。如果指定了一个数值 (n),则路径将被设置为第 n 级子路径,如该命令所示。

语法

list [path|number]

locate

说明

locate 命令用于查找所有符合指定模式的拓扑路径。该模式区分大小写。

语法

locate <pattern>

login

说明

login 命令用于建立与 Sun Management Center 服务器的连接。您可以将 serverHost 参数和 serverPort(可选)参数指定为变量。如果未指定主机,系统会提示用户指定一台主机。如果没有指定任何端口,将使用 2099。login 命令还会提示您输入用户名和密码。

语法

login [serverHost=host] [serverPort=portNumber] [user=userName] [password=userPassword]

参数

serverHostserverPortuserpassword

logout

说明

logout 命令用于终止您与 Sun Management Center 服务器的连接,但不会终止 CLI 会话。

语法

logout

print

说明

print 命令将上一个扩展命令的输出以指定的格式定向到指定的目标。缺省情况下,print 命令将此输出以纯文本格式定向到终端屏幕。如果设置了参数 appendo,则输出将被定向到由这两个参数指定的文件中,而不会显示在屏幕上。如果没有指定 ncols 参数,则将默认的列数设置为 4。


注 –

print 命令不会保存在命令历史记录中。


语法

print [f=plain|xml|html] [style=table|list|<custom>] [columns= columnList] [ncols=num] [o=outputFile | append=appendFile]

参数

fstylecolumns ncolsoappend

quit

说明

quit 命令用于断开与服务器的连接,并终止 CLI 会话。


注 –

quit 命令和 exit 命令之间没有差别。


语法

quit

reset

说明

reset 命令用于将命令行中指定的所有参数的值恢复为 CLI 会话开始时指定的值。会话过程中(而非命令行中)定义的参数将保持不变。如果提供了特定的参数名称作为 reset 命令的变量且已在命令行指定了该参数,则该参数的值将恢复为初始值。否则,该参数的值将保持不变。


注 –

reset 命令不会保存在命令历史记录中。


语法

reset [<parameter>]*

set

说明

set 命令用于指定参数值或显示参数值。参数值由 set 命令指定的参数在当前会话中是全局参数。在该会话期间,全局命令适用于所有命令。如果执行 set 命令时没有带任何变量,则会显示当前会话期间定义的所有参数的值。如果使用一个已指定为变量的参数执行 set 命令,则将显示该参数的值。

语法

set [<parameter>[=value]]* [height=num] [history=num] [log=file] [logmode=detailed|command|"from n"] [more=on|off] [prompt=prompt]

示例

下例显示了此命令的所有三种情况。


> set height=10
> set
height=10
> set height
height=10
status

说明

status 命令用于显示正在后台运行的所有命令的状态。

语法

status

unalias

说明

unalias 命令用于删除作为变量指定的一个或多个别名。

语法

unalias [<pseudonym>]*

unset

说明

unset 命令用于从当前的会话中删除指定的参数(一个或多个)。

语法

unset [<parameter>]*


注 –

unset 命令不保存到命令历史记录中。


where

说明

where 命令用于显示当前的拓扑路径。

语法

where

扩展 CLI 命令

以下各节讲述了 CLI 中可用的几种扩展命令类型:

模块扩展命令

用于管理模块的扩展命令共有 7 条。

用于模块命令的参数

模块命令可以使用以下参数。有关 am 参数的详细信息,请参阅预定义的参数和标记

moduleName

模块的本地化名称

moduleDesc

模块的文本描述

moduleParams

以逗号分隔的模块参数列表

-default

模块的默认设置

模块命令

disableModule

说明

disableModule 命令用于禁用一个或多个代理中的一个或多个模块。

语法

disableModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

参数

am

enableModule

说明

enableModule 命令用于启用一个或多个代理中的一个或多个模块。

语法

enableModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

参数

am

getLoadedModules

说明

getLoadedModules 命令用于获取一个或多个代理中已安装模块的列表。

语法

getLoadedModules a=host[:port][,host[:port]]*

参数

a

getModule

说明

getModule 命令用于获取一个或多个代理中特定模块的信息。

语法

getModule a=host[:port][,host[:port]]* m=module[+instance]

参数

am

getModules

说明

getModules 命令用于获取一个或多个代理中所有可用模块的列表。

语法

getModules a=host[:port][,host[:port]]*

参数

a

loadModule

说明

loadModule 命令用于将模块加载到一个或多个代理内。

语法

loadModule a=host[:port][,host[:port]]* m=module[+instance] [moduleName= name] [moduleDesc=description] [moduleParams= key=value[,key=value]*] [-default]

参数

ammoduleName moduleDescmoduleParams-default

unloadModule

说明

unloadModule 命令用于卸载一个或多个代理中的一个或多个模块。

语法

unloadModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

参数

am

模块命令示例

要确定在 agentHost 名称为 seattle 的主机上加载的模块,可以在 CLI 提示符下键入以下命令:


> getLoadedModules a=seattle

要在主机 seattle 的端口 1776 上加载 kernel-reader 模块,可以键入以下命令:


> loadModule a=seattle:1776 m=kernel-reader

对象属性扩展命令

有四个用于管理对象属性和属性值的扩展命令。

对象属性命令的参数

以下参数可以由对象属性命令使用。有关 am 参数的详细信息,请参阅预定义的参数和标记

mgtObj

mgtObj 参数的值是被管理对象的名称,该对象的属性(attribute 和 property)正在被设置或被检索。

property

property 参数的值是属性 (property) 的名称,该属性的子属性 (attribute) 正在被设置或被检索。

propInst

propInst 参数的值是属性 (property) 实例的名称,该属性的子属性 (attribute) 和值正在被设置或被检索。

rowValues

rowValues 参数的值是以逗号分隔的“名称-值”参数对列表。name 是行中列的名称。value 是该列中的值。

attribute

attribute 参数的值是以逗号分隔的子属性 (attribute) 名称列表,其所属属性 (property) 的子属性和值正在被设置或检索。当与 setAttributes 命令一起使用时,attribute 参数中的每个属性名都一定在 value 参数中有一个对应的值。

value

value 参数的值是一个逗号分隔值列表。这些值与 attribute 参数中指定的属性相对应。与 setAttributes 命令一起使用时,每个指定的属性必须有一个值。

对象属性命令

您可以使用以下命令设置和检索对象属性和属性值:

addRow

说明

addRow 命令可以将具有指定值的行添加到表格内。

语法

addRow a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject [property=property] [propInst=propertyInstance] rowValues=name=value[,name=value]

参数

ammgtObj propertypropInstrowValues

delRow

说明

delRow 命令可以将具有指定值的行从表中删除。

语法

delRow a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject [property=property] [propInst=propertyInstance] rowValues=name=value[,name=value]

参数

ammgtObj propertypropInstrowValues

getAttributes

说明

getAttributes 命令可以检索属性信息,或者从一个或多个代理检索指定的属性。

语法

getAttributes a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject property=property [propInst=propertyInstance] [attribute=attribute[,attribute]*]

参数

ammgtObj propertypropInstattribute

setAttributes

说明

setAttributes 命令可以设置单个属性,也可以设置一个或多个代理中的多个属性。此外,您还可以将指定属性的值重置为 null。

语法

setAttributes a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject property=property [propInst=propertyInstance] [attribute=attribute[,attribute]*] value=value[,value]*

参数

ammgtObj propertypropInstattributevalue

对于在 attribute 参数中指定的每个属性,value 参数中必须有一个相应的值。

对象属性命令的示例

以下命令检索主机 haiku 端口 1161 处 agent-stats 模块中的被管理对象 totalstatssize 属性 (property) 的所有子属性 (attribute):


> getAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size

以下命令将上例指定的 size 属性 (property) 中的 alarmlimits.error-gt 子属性 (attribute) 设置为 2


> setAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size attribute=alarmlimits.error-gt value=2

以下命令从被管理对象中(由 mgtObj 参数指定)删除由 rowValues 参数指定的行:


> delRow a=haiku:1161 \
m=filemon mgtObj=filemonstats/filemonTable/filemonEntry \
rowValues="name=test,desc=this,filename=/etc/passwd"

警报扩展命令

有五个用于管理警报的扩展命令。

警报命令参数

扩展命令可将以下参数用于报警。有关 am 参数的详细信息,请参阅预定义的参数和标记

ack

ack 参数的值是多个以逗号分割的值列表,用来表示被管理的报警是否得到确认。ack 参数的有效值包括:ACK(已确认)和 NOACK(尚未确认)。

command

command 参数的值是即将执行的报警操作。

domain

domain 参数的值表示要管理其报警的 Sun Management Center 域的名称。如果未指定任何域,将使用缺省域。

mgtObj

mgtObj 参数的值表示要管理其报警的被管理对象的名称。

note

note 参数的值表示正在运行的命令的文本说明。

property

property 参数的值表示要管理其报警的属性的名称。

propInst

propInst 参数的值表示要管理其报警的特定属性实例的名称。

qualifier

qualifier 参数的值表示与被管理属性(将管理其报警)相关联的限定符的名称。

severity

severity 参数的值是所管理的警报的严重程度值的列表,此列表中的值由逗号分隔。severity 参数可以使用以下值:

  • ERR — 错误

  • WRN — 警告

  • INF — 信息

  • IRR — 不合理

  • DWN — 关闭

  • DIS — 禁用

  • OFF — 关闭

state

state 参数的值是所管理的警报的状态值列表,其中的状态值由逗号分隔。状态参数的有效值包括:Open、Closed 和 Fixed。

警报命令

您可以使用以下命令检查报警值和设置报警操作:

ackAlarms

说明

ackAlarms 命令用于确认一个或多个代理中的报警。

语法

ackAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [note=reason]

参数

adomainmmgtObjpropertypropInstqualifierseveritystatenote

如果没有为 state 参数指定任何值, state 将使用默认值 Open。

delAlarms

说明

delAlarms 命令用于删除一个或多个代理中的警报。

语法

delAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK] [note=reason]

参数

adomainm mgtObjpropertypropInst qualifierseveritystate acknote

如果没有为 state 参数指定任何值,state 将使用默认值 Closed。

getAlarms

说明

getAlarms 命令用于检索一个代理或一组代理的报警信息。

语法

getAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

参数

adomainm mgtObjpropertypropInst qualifierseveritystateack

如果不指定任何参数,getAlarms 将返回全部报警信息。

runAlarmAction

说明

runAlarmAction 命令可为域(可能是一个代理,也可能是一组代理)中的所有报警运行手动或延迟报警操作。

语法

runAlarmAction a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

参数

adomainm mgtObjpropertypropInst qualifierseveritystateack

setAlarmAction

说明

setAlarmAction 命令可为域(可能是一个代理,也可能是一组代理)中的所有报警设置手动或延迟报警操作。

语法

setAlarmAction a=host[:port][,host[:port]]* command=command [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

要为报警设置电子邮件警报,可使用如下命令格式

command="email.sh:<email-id>:<message>"

command="email:<email-id>:<message>"

参数

acommanddomainmmgtObjpropertypropInstqualifierseveritystateack

警报命令示例

以下命令用于从主机 haiku 中检索严重程度为 ERRDWN 的所有报警:


> getAlarms a=haiku severity=ERR,DWN

拓扑扩展命令

有九个用于管理拓扑的扩展命令。

拓扑命令参数

扩展命令可将以下参数用于拓扑。有关 at 参数的详细信息,请参阅预定义的参数和标记

agentPort

agentPort 参数的值表示代理的端口号。如果未指定 agentPort 参数,将使用缺省值 161。agentPort 参数是可选的。仅当未指定 url 参数且不需要缺省端口时才指定此参数。

arch

arch 参数的值表示拓扑对象的体系结构。

domain

domain 参数的值是您必须为 setCurrentDomain 命令指定的 Sun Management Center 域的名称。

domainmode

domainmode 参数的值可以是 followignore。如果该参数的值为 followimport 命令会将文件中的组和域信息都导入到指定的目标域内。如果该参数的值为 ignoreimport 命令将忽略有关域的信息。

family

family 参数的值表示拓扑对象的对象系列。如果没有进行指定,将自动获取该参数的值。

filename

filename 参数的值表示文件的名称。exportimport 命令使用该参数导出和导入拓扑数据。

fullDesc

fullDesc 参数的值表示正在创建的实体或组的文本说明。

isPolled

isPolled 参数的值可以是 truefalse。如果值为 true,则实体根据轮询类型 (pollType) 轮询状态信息。默认值为 true

mode

mode 参数的值可以是 appendoverwrite。如果该参数的值为 append,则 export 会将拓扑数据添加到文件的末尾。如果该参数的值为 overwriteexport 命令将使用拓扑数据覆盖文件。

nodemode

nodemode 参数的值可以是 replaceignore。如果文件中的数据与域中的数据不一致,当该参数的值为 replace 时,将使用文件中的值替换域中的值。如果该参数的值为 ignore,则会忽略所有不一致的数据。

pollType

pollType 参数的值表示此实体的巡回检测类型。pollType 参数可以使用以下值:

  • agroup – 识别安装和运行激活代理的组

  • ahost – 识别安装和运行激活代理的主机

  • amod – 识别包含激活代理的模块

  • aprox – 识别运行 SNMP 代理服务器模块的代理

  • dummy – 识别未被监视的设备

  • ping – 使用 ICMP ping 命令识别要监视的主机

  • snmp – 用于识别通过 SNMP ping 命令进行监视的主机

readInfo

readInfo 参数的值表示 SNMP 轮询对象的 SNMPv1 读团体。

targetHost

targetHost 参数的值表示目标主机的名称。

targetIp

targetIP 参数的值表示目标主机的 IP 地址。

topoCfg

topoCfg 参数的值表示被管理实体的拓扑表示方法的配置信息。

topoType

topoType 参数的值表示被管理实体的拓扑表示类型。

url

url 参数的值表示被轮询实体的 URL。可以使用以下格式指定 url 参数的值:

ping://hostname
snmp://hostname:port/oid/#.#.#.#
snmp://hostname:port/[mod,sym]/path
validity

validity 参数的值表示被导出的拓扑数据的有效日期(以天为单位)。validity 参数的值可以是:Unlimited7153090

writeInfo

writeInfo 参数的值表示 SNMP 巡回检测对象的 SNMPv1 写团体名。

拓扑命令

用于管理拓扑的扩展命令共有九条。

createEntity

说明

createEntity 命令用于创建被管理的实体。

语法

createEntity t=topoObject pollType=ahost|amod|aprox|dummy|ping|snmp [fullDesc=text] [targetHost=host] [agentPort=port] [targetIp=ip] [family=family] [isPolled=true|false] [topoType=text] [topoCfg=text] [readInfo=text] [writeInfo=text] [url=url]

参数

tpollTypefullDesctargetHostagentPort targetIpfamilyisPolled topoTypetopoCfgreadInfo writeInfourl

如果指定了 urlagentPort 参数,则不会使用默认的 161 端口。

createGroup

说明

createGroup 命令用于创建拓扑域或组。

语法

createGroup t=topoObject [family=base|building-view|campus-view|network-view|subnetwork-view] [fullDesc=desc]

参数

tfamilyfullDesc

如果即将创建的实体是一个组,则必须指定 family 参数。

如果即将创建的实体是一个域,则将忽略 family fullDesc 参数。

delTopoObject

说明

delTopoObject 命令用于删除位于被管理的拓扑分层结构内的被管理拓扑对象。同时还删除指定拓扑对象下的所有对象。

语法

delTopoObject t=topoObject

参数

t

export

说明

export 命令可将一个或多个域中的拓扑数据导出到一个文件内。

语法

export filename=filename domain=domain|"All Domains" mode=append|overwrite validity=Unlimited|7|15|30|90 [comment=text]

参数

文件名模式有效性注释

getAgentPort

说明

getAgentPort 命令用于返回在拓扑域中的指定主机上运行的 Sun Management Center 代理的端口号。如果存在多个代理,则返回端口号列表。

语法

getAgentPort a=host[,host]* [t=topoObject]

参数

at

如果没有指定 t 参数,则会使用默认的域。

getAllTopoObjects

说明

getAllTopoObjects 命令可以返回被管理的拓扑分层结构中所有满足特定条件的被管理对象的列表,这些条件由 archfamily pollType 参数指定。

语法

getAllTopoObjects t=topoObject [arch=os] [family=platform] [pollType=aview|ahost|amod|aprox|dummy|ping|snmp]

参数

tarchfamilypollType

getCurrentDomain

说明

getCurrentDomain 命令可以返回当前域的名称。

语法

getCurrentDomain

参数

getDomains

说明

getDomains 命令可返回当前服务器环境中所有被管理域的列表。

语法

getDomains

参数

getTopoObject

说明

getTopoObject 命令可返回所有被管理的拓扑对象的列表,这些拓扑对象直接位于由参数 t 所指定的拓扑对象下,并且满足 arch familypollType 参数所指定的条件。

语法

getTopoObject t=topoObject [arch=os] [family=platform] [pollType=aview|ahost|amod|aprox|dummy|ping|snmp]

参数

tarchfamilypollType

import

说明

export 命令可将拓扑数据从文件导入域内。

语法

import filename=filename domainmode=follow|ignore nodemode=replace|ignore [domain=domain]

参数

filenamedomainmode nodemodedomain

setCurrentDomain

说明

setCurrentDomain 命令用于将主域设置为 domain 参数中指定的值。

语法

setCurrentDomain domain=domainName

参数

domain

拓扑命令示例

以下命令用于返回所有 Sun Management Center 代理主机的列表,这些代理主机位于运行 SunOS 5.7 软件的 menlo_park 域的 building12 组中的 sun4u 族:


> getTopoObject t=/menlo_park/building12 pollType=ahost \
arch="SunOS 5.7" family=sun4u

以下命令将创建一个名为 headquarters_test 的组,该组位于名为 building19 的现有域中:


> createGroup t=/headquarters_test/building19 \
fullDesc="test headquarters domain" family=building-location

以下命令将创建名为 myHost 的被管理实体,该实体位于 test_domain 域的 building12 组中。拓扑对象是一个在端口 1161 中运行代理的主机。


> createEntity t=/test_domain/building12/myHost \
fullDesc="my test host" family=ultra-2 topoType="" \
topoCfg="" isPolled=false pollType=ahost readInfo="" \
writeInfo="" targetHost=osftserv targetIp="" agentPort=1161