跳过导航链接 | |
退出打印视图 | |
![]() |
在 Oracle Solaris 11.1 中管理服务和故障 Oracle Solaris 11.1 Information Library (简体中文) |
下列任务显示如何监视 SMF 服务。
以下任务列表说明了监视 SMF 服务所需的过程。
|
以下过程可用来显示哪些服务正在运行。
在不使用任何选项的情况下运行此命令,会显示由 FMRI 指定的服务的状态报告。
$ svcs -l FMRI
示例 2-1 显示 sendmail 服务的状态
以下示例显示包括依赖性的服务的状态。而且,使用了 -p 选项,以便显示有关进程 ID、启动时间和命令运行的信息。
$ svcs -lp network/smtp:sendmail fmri svc:/network/smtp:sendmail name sendmail SMTP mail transfer agent enabled true state online next_state none state_time Tue Aug 09 19:25:54 2011 logfile /var/svc/log/network-smtp:sendmail.log restarter svc:/system/svc/restarter:default contract_id 114 manifest /etc/svc/profile/generic_limited_net.xml manifest /lib/svc/manifest/network/smtp-sendmail.xml dependency require_all/refresh file://localhost/etc/mail/sendmail.cf (online) dependency require_all/refresh file://localhost/etc/nsswitch.conf (online) dependency optional_all/none svc:/system/filesystem/autofs (online) dependency require_all/none svc:/system/filesystem/local (online) dependency require_all/none svc:/network/service (online) dependency require_all/refresh svc:/milestone/name-services (online) dependency optional_all/refresh svc:/system/identity:domain (online) dependency optional_all/none svc:/system/system-log (online) process 101077 /usr/lib/sendmail -bd -q15m
示例 2-2 显示所有服务的状态
以下命令列出系统上安装的所有服务以及每个服务的状态。该命令既显示已禁用的服务又显示已启用的服务。
$ svcs -a
示例 2-3 显示所有通知参数
以下命令列出了所有 FMA 事件通知参数以及 SMF 状态转换参数。
$ svcs -n
示例 2-4 显示由 inetd 控制的服务的状态
以下命令列出由 inetd 控制的服务,其中包括每个服务的 FMRI、运行状态以及服务是处于启用还是禁用状态。
$ inetadm
此命令显示选定服务在 admin 层的所有更改。
% /usr/sbin/svccfg -s FMRI listcust
以下过程显示如何确定依赖指定服务的服务实例。
$ svcs -D FMRI
示例 2-5 显示依赖 multiuser 里程碑的服务实例
以下示例显示如何确定依赖 multiuser 里程碑的服务实例。
$ svcs -D milestone/multi-user STATE STIME FMRI disabled Aug_09 svc:/application/time-slider:default disabled Aug_09 svc:/application/management/net-snmp:default online Aug_09 svc:/system/intrd:default online Aug_09 svc:/system/boot-config:default online Aug_09 svc:/milestone/multi-user-server:default
以下过程显示如何确定指定的服务实例所依赖的服务。
$ svcs -d FMRI
示例 2-6 显示 multiuser 里程碑依赖的服务实例
以下示例显示 multiuser 里程碑依赖的服务实例:
$ svcs -d milestone/multi-user:default STATE STIME FMRI disabled Aug_09 svc:/network/nfs/client:default disabled Aug_09 svc:/network/smb/client:default disabled Aug_09 svc:/system/mdmonitor:default disabled Aug_09 svc:/application/print/server:default online Aug_09 svc:/system/resource-controls:default online Aug_09 svc:/system/metasync:default online Aug_09 svc:/system/rmtmpfiles:default online Aug_09 svc:/system/utmp:default online Aug_09 svc:/system/name-service/cache:default online Aug_09 svc:/system/device/audio:default online Aug_09 svc:/network/rpc/bind:default online Aug_09 svc:/milestone/name-services:default online Aug_09 svc:/network/iscsi/initiator:default online Aug_09 svc:/milestone/single-user:default online Aug_09 svc:/system/filesystem/local:default online Aug_09 svc:/network/inetd:default online Aug_09 svc:/system/cron:default online Aug_09 svc:/system/filesystem/autofs:default online Aug_09 svc:/system/filesystem/ufs/quota:default online Aug_09 svc:/system/power:default online Aug_09 svc:/system/system-log:default online Aug_09 svc:/system/system-log:default online Aug_09 svc:/system/auditd:default online Aug_09 svc:/network/smtp:sendmail
此过程会使系统在每次某个服务或选定服务的状态发生更改时,生成一个电子邮件通知。您可以选择使用 SMTP 或 SNMP。通常,仅应在由于其他某个原因配置了 SNMP 时选择 SNMP。
缺省情况下,在发生维护状态转换时发送 SNMP 陷阱。如果使用 SNMP 进行监视,可以为其他状态转换配置额外陷阱。
以下示例说明如何为 SMF 和 FMA 事件设置通知参数,以及如何列出和删除通知参数。
示例 2-7 为所有 SMF 服务状态事件配置通知
以下命令创建一个通知,当服务进入 maintenance 状态时即发送电子邮件通知。
# /usr/sbin/svccfg setnotify -g maintenance mailto:sysadmins@example.com
您也可以选择以 from 选项列出的状态开始并以 to 选项列出的状态结束的服务。此选项的有效 SMF 状态为:degraded、maintenance、offline 和 online。可以使用 -g all 选项为所有状态转换事件生成电子邮件通知。有关更多信息,请参见 smf(5) 手册页中的“通知参数”部分。
示例 2-8 为单个服务配置通知
以下命令创建一个通知,当 switch 服务进入 online 状态时,该通知将发送电子邮件。
# /usr/sbin/svccfg -s svc:/system/name-service/switch:default setnotify to-online \ mailto: sysadmins@example.com
示例 2-9 为 FMA 事件配置通知
以下命令创建一个通知,当修复了 FMA 问题时,该通知将发送 SNMP 邮件。
# /usr/sbin/svccfg setnotify problem-repaired snmp:
FMA 事件类包括 problem-diagnosed、problem-updated、problem-repaired 和 problem-resolved。有关更多信息,请参见 smf(5) 手册页中的“通知参数”部分。
示例 2-10 列出通知设置
以下命令显示 FMA 服务诊断的新问题的通知设置。可以通过在 listnotify 命令中包括服务状态而不是事件类,或者不包括任何参数,显示 SMF 服务状态转换事件的通知设置。
# /usr/sbin/svccfg listnotify problem-diagnosed
示例 2-11 删除通知设置
以下命令可删除与 switch 服务转换到 online 服务状态相关的通知设置。您可以使用 FMA 事件类取代服务状态。
# /usr/sbin/svccfg -s svc:/system/name-service/switch:default delnotify to-online