◆观察服务
在早期版本的 Solaris 中,查看可用服务的唯一方法是使用 ps(1) 命令,并列出系统上所有的活动进程,然后查看与服务应用程序的名称相匹配的进程名称。遗憾的是,由于大多数系统都有许多进程,并且每次发行新版本的 Solaris 以及添加其他软件包时都会引入新服务,因此使用此方法进行跟踪非常困难。如今的许多服务已不再作为单个进程执行,这使得情况更加复杂。某些服务作为一系列进程或多线程进程执行,或者同时以这两种方式执行。
使用新的 svcs(1) 命令,可以更容易地观察系统服务的状态。"-p" 选项可显示与服务关联的所有进程:
% svcs -p network/smtp:sendmail
STATE STIME FMRI
online 18:20:30 svc:/network/smtp:sendmail
18:20:30 655 sendmail
18:20:30 657 sendmail
% ps -fp 655,657
UID PID PPID C STIME TTY TIME CMD
root 655 1 0 18:20:30 ? 0:01 /usr/lib/sendmail -bd -q15m
smmsp 657 1 0 18:20:30 ? 0:00 /usr/lib/sendmail -Ac -q15m
"-d" 选项可显示此服务所依赖的其他服务,而 "-D" 选项可显示依赖于此服务的其他服务:
% svcs -d network/smtp:sendmail
STATE STIME FMRI
online 18:20:14 svc:/system/identity:domain
online 18:20:26 svc:/network/service:default
online 18:20:27 svc:/system/filesystem/local:default
online 18:20:27 svc:/milestone/name-services:default
online 18:20:27 svc:/system/system-log:default
online 18:20:30 svc:/system/filesystem/autofs:default
标签: