一、 监控SMF服务
1 . 查看所有服务的状态
使用命令:svcs –a
图1是JDS桌面环境下的svcs –a 命令的输出。

图1 输出说明:
svcs 命令显示服务实例的状态(STATE)、开始时间(STIME)和 FMRI。每个服务的状态都为下列状态之一:
degraded-服务实例处于启用状态,但是以有限的功能运行。
disabled-服务实例处于禁用状态且尚未运行。
legacy_run-传统服务不由 SMF 进行管理,但是可查看服务。此状态只能由传统服务使用。
maintenance-服务实例遇到错误,必须由管理员解决。
offline-服务实例处于启用状态,但是尚未运行或者无法运行。
online-服务实例处于启用状态,并且已成功启动。
uninitialized-此状态是所有服务在配置经过读取之前的初始状态。
svc模式的FMRI表示SMF服务,而lrc模式的FMRI表示旧的基于rc脚本的服务。
第三列FMRI就是服务名称。上述输出中显示了在Solaris 10中捆绑的Samba、Apache 1.3.x服务名称,由于它们仍然沿用了rc脚本的启动方式,所以它们的名称是以lrc开头的,这类服务无法用svcadm来管理。比如试图运行命令svcadm enable lrc:/etc/rc3_d/S90samba,系统会报错。上述输出中显示了ssh服务的服务名为svc:/network/ssh:default。用FMRI表示的服务名称可以唯一地标识一个服务,但是名称通常都比较冗长,不便记忆。所以SMF允许服务名称的缩写,只要可以唯一标识服务,scheme,instance,category都可以省。所以ssh服务的名称可以简写成ssh。简写的服务名在SMF的命令行工具中都可以使用。以下是常见服务的名称 :
2 查看没有未正常启动的服务服务 FMRI
sshd svc:/network/ssh:default
cron svc:/system/cron:default
automount svc:/system/filesystem/autofs:default
Apache2 svc:/system/filesystem/autofs:default
sendmail svc:/network/smtp:sendmail
nfs svc:/network/nfs/server:default
使用命令:svcs –x
图2是CDE桌面环境下的svcs –x 命令的输出。

以ssh服务为例:
svcs -l network/ssh:default
fmri svc:/network/ssh:default
名称 SSH server
启用 是
状态 online
next_state none
state_time 2007年6月24日 21时8分01秒
logfile /var/svc/log/network-ssh:default.log
重启程序 svc:/system/svc/restarter:default
4. 显示某个服务所依赖的服务contract_id 50
dependency require_all/none svc:/system/filesystem/local (online)
dependency optional_all/none svc:/system/filesystem/autofs (online)
dependency require_all/none svc:/network/loopback (online)
dependency require_all/none svc:/network/physical (online)
dependency require_all/none svc:/system/cryptosvc (online)
dependency require_all/none svc:/system/utmp (online)
dependency require_all/restart file://localhost/etc/ssh/sshd_config (online)
以ssh服务为例:
5显示依赖于某个服务的其他服务svcs -d network/ssh:default
STATE STIME FMRI
online 21:07:58 svc:/network/loopback:default
online 21:08:09 svc:/network/physical:default
online 21:08:23 svc:/system/cryptosvc:default
online 21:08:28 svc:/system/filesystem/local:default
online 21:08:35 svc:/system/utmp:default
online 21:08:50 svc:/system/filesystem/autofs:default
以ssh服务为例:
# svcs -D network/ssh:default
STATE STIME FMRI
online 18:16:53 svc:/milestone/multi-user-server:default