Apache2 apache2 svc:/system/filesystem/autofs:default
sendmail sendmail svc:/network/smtp:sendmail
nfs nfs/server svc:/network/nfs/server:default
管理SMF服務(wù)
管理SMF服務(wù)包括配置、查看、啟用/禁用、啟動(dòng)/停止服務(wù)等任務(wù) 。這些任務(wù)分別可以用svccfg, svcs, svcadm命令完成 。
svccfg命令
svccfg命令用來管理SMF repository 。運(yùn)行不帶參數(shù)的svccfg命令進(jìn)入一個(gè)交互式的shell,在該shell里可以對(duì)服務(wù)、服務(wù)實(shí)例進(jìn)行配置、導(dǎo)入、導(dǎo)出、備份、恢復(fù)操作 。
最常用的操作是新增一個(gè)SMF服務(wù)時(shí)導(dǎo)入該服務(wù)的manifest文件,可以使用svccfg import 的方法 。使用svccfg import時(shí)要注意在目前版本的Solaris中(版本小于等于Solaris 10 1/06 ),如果manifest xml文件語法有錯(cuò),該命令不會(huì)報(bào)告xml文件出錯(cuò)的具體位置,只會(huì)報(bào)一個(gè)籠統(tǒng)的錯(cuò)誤信息 。例如,postfix.xml文件的service元素沒有閉合,運(yùn)行以下命令:
-bash-3.00# svccfg -v import postfix.xml
svccfg: couldn't parse document
該命令會(huì)報(bào)無法解析文檔的錯(cuò)誤 。因此,編寫完manifest xml文件應(yīng)當(dāng)驗(yàn)證一下文件的有效性 。
svcs命令
svcs用于查看服務(wù)的狀態(tài),
svcs -a用于查看所有狀態(tài)的服務(wù)
svcs -x用于查看未正常啟動(dòng)的服務(wù)
svcs -l 用于查看單個(gè)服務(wù)的詳細(xì)信息
svCADm命令
svcadm用來啟用/禁用、啟動(dòng)/停止SMF服務(wù) 。
svcadm enable fmri -- 啟用一個(gè)SMF服務(wù),同時(shí)運(yùn)行該服務(wù)
svcadm disable fmri -- 禁用一個(gè)SMF服務(wù),同時(shí)停止該服務(wù)
svcadm restart fmri -- 重啟一個(gè)SMF服務(wù)
svcadm refresh fmri -- 刷新一個(gè)SMF服務(wù),相當(dāng)于讓服務(wù)重新載入配置文件
svcadm mark fmri -- 將SMF服務(wù)標(biāo)記為維護(hù)狀態(tài)
svcadm clear fmri -- 清除SMF服務(wù)的維護(hù)狀態(tài)
svcadm milestone milestone -- 進(jìn)入指定的服務(wù)里程碑,相當(dāng)于進(jìn)入相應(yīng)的運(yùn)行級(jí)別
如果不指定參數(shù),svcadm將輸出該命令的使用方法 。
如:
-bash-3.00# svcadm
Usage: svCADm [-v] [cmd [args ... ]]
svcadm enable [-rst] ... - enable and online service(s)
svcadm disable [-st] ... - disable and offline service(s)
svcadm restart ... - restart specifIEd service(s)
svcadm refresh ... - re-read service configuration
svcadm mark [-It] ... - set maintenance state
svcadm clear ... - clear maintenance state
svcadm milestone [-d] - advance to a service milestone
Services can be specified using an FMRI, abbreviation, or fnmatch(5)
pattern, as shown in these examples for svc:/network/smtp:sendmail
svcadm svc:/network/smtp:sendmail
svcadm network/smtp:sendmail
svcadm network/*mail
svcadm network/smtp
svcadm smtp:sendmail
svcadm smtp
svcadm sendmail
SMF服務(wù)排錯(cuò)
使用svcs -xv可以查找未正常啟動(dòng)的服務(wù) 。SMF對(duì)每個(gè)服務(wù)實(shí)例都在/var/svc/log目錄創(chuàng)建了一個(gè)和服務(wù)FMRI對(duì)應(yīng)的日志文件,比如apache2服務(wù)的FMRI為svc:/network/http:apache2,那么apache2服務(wù)狀態(tài)變化的日志存放在名為network-http:apache2.log的文件中,
如運(yùn)行以下命令
-bash-3.00# ls -l /var/svc/log |grep network
-rw-r--r-- 1 root root 534 Feb 9 00:08 milestone-network:default.log
-rw-r--r-- 1 root root 77 Jan 30 15:25 network-dns-client:default.log
-rw-r--r-- 1 root root 169 Jan 30 15:27 network-dns-server:default.log
-rw-r--r-- 1 root root 803 Feb 13 01:17 network-http:apache2.log
-rw-r--r-- 1 root root 2843 Jan 30 15:30 network-inetd-upgrade:default.log
-rw-r--r-- 1 root root 2929 Feb 12 01:58 network-inetd:default.log
-rw-r--r-- 1 root root 2835 Feb 12 01:58 network-initial:default.log
-rw-r--r-- 1 root root 77 Jan 30 15:25 network-ipfilter:default.log
-rw-r--r-- 1 root root 77 Jan 30 15:25 network-iscsi_initiator:default.log
輸出的第四行列出了apache2服務(wù)的日志文件名 。通過查看這些文件可以獲得服務(wù)未正常啟動(dòng)的線索 。
推薦閱讀
- 用Solaris 10中的SMF管理Oracle數(shù)據(jù)庫的運(yùn)行
- 解讀SMF:Solaris系統(tǒng)服務(wù)管理好幫手
- Solaris服務(wù)管理工具SMF常規(guī)任務(wù)使用
- solaris9 網(wǎng)絡(luò)安裝記錄
- 在Sun E450服務(wù)器上安裝Solaris 10
- 用Solaris架設(shè)FTP虛擬服務(wù)器
- 使用SMC管理Solaris 10服務(wù)器日志
- 1 Solaris10下載、安裝和配置
- 升級(jí)Solaris 10內(nèi)的DNS服務(wù)器
- Solaris 10服務(wù)器網(wǎng)絡(luò)接口配置實(shí)戰(zhàn)
