Linux系統服務、目錄含義及其配置

微wx笑發表於2015-02-03

11.1服務簡介


Linux 系統服務有時也稱為守護程式,是在Linux啟動時自動載入並在Linux退出時自動停止的系統任務。在Linux 啟動過程中我們可以看得很多starting … 提示資訊,該資訊表示正在啟動系統服務,而在Linux 退出時,我們也能夠看到相應的Stopping … 資訊,表示系統服務正在停止。
Linux自身有許多系統任務如network 服務用於支援網路連線等。

11.1.1 服務分類


根據守護程式的啟動與管理方式可分獨立啟動與超級守護程式兩種。
1. 獨立啟動程式
獨立啟動快,但常駐記憶體,佔資源。
2. 超級守護程式
超級守護程式平時不啟動,只是由一個xinet服務啟動,有請求時xinet先響應,再去啟動實際的服務如ftp,沒有任務時,處理睡眠狀態,反應時間慢。
以上兩種服務可以同時存在。

11.1.2 服務有關埠資訊


有關埠資訊可以看/etc/services相關內容。

11.1.3 守護程式的命名


守護程式或服務的命名通常在相關命令後面加一個字母d來命名,如at與cron服務,會被稱為atd與crond,以xxxd的程式就是守護程式。

11.1.4 守護程式的位置


獨立啟動程式與超級守護程式的shell指令碼放置的位置不同。
1. 獨立啟動程式
獨立啟動程式放在/etc/init.d/目錄裡。RPM軟體的啟動都在這裡。
2. 超級守護程式
超級守護程式放在/etc/init.d/xinetd/目錄裡。
配置檔案:
/etc/xinetd.conf 超級守護程式的配置檔案
/etc/xinetd.d/* 其它單個服務的配置檔案
如:telnet服務的配置檔案 /etc/xinetd.d/telnet
啟動指令碼:
/etc/init.d/xinetd 它自己是做為一個獨立啟動程式來啟動的。如有telnet服務來的時候它才會去啟動/etc/init.d/xinetd/telnet服務。

11.1.5 守護程式的啟動


service程式是一個指令碼,它根據引數會調動/etc/init.d中的服務名稱指令碼。只能用於獨立啟動服務的啟動,有三種狀態。
start 啟動
stop 停止
restart 重啟
1. 獨立啟動程式啟動
/etc/init.d/smb start
service smb start

2. 超級守護程式啟動
超級守護程式啟動服務通常是不啟用的,如果要使用的話,還需要事先配置相應服務的配置檔案才能使用。

vi /etc/xinetd.d/telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
#       unencrypted username/password pairs for authentication.
service telnet
{
        disable = no                    需要手動開啟才行
        flags           = REUSE
        socket_type     = stream        
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        log_on_failure  += USERID
}

telnet服務安裝好後預設是關閉的,需要disable = no開啟,然後設為開機自啟動。
/etc/init.d/xinetd/telnet start
超級守護程式安裝與啟動可參見第十六章。

11.2系統開啟的服務


11.2.1觀察系統服務


示例:
netstat -tulp 顯示當前系統開啟的網路服務
netstat -lnp 顯示所有監聽的網路服務
netstat -anp 顯示所以網路連線狀態
示例:
chkconfig –list |more 顯示當前系統開啟的服務
chkconfig –list |grep smb 過濾顯示某一服務

11.2.2設定服務開機啟動


1.使用服務
示例:
chkconfig –level 345 smb on 開啟smb服務
chkconfig –level 345 smb off 關閉smb服務
chkconfig smb on 同上功能上樣
2.使用自動執行
/etc/rc.d/rc.local檔案,在裡面寫入開機時啟動的指令碼。

11.2.3服務新增與刪除


1.新增服務
將該自己寫的服務的指令碼檔案abc拷入/etc/init.d資料夾下保證其狀態可執行,再使用chkconfig 命令將服務新增到服務列表中。
示例:
chkconfig –add abc
將服務新增以後該服務即可以使用service 來啟動/停止了。
chkcofig命令會在/etc/rc.d/*等相關資料夾中放入到/etc/init.d/abc的快捷方式,此操作是由chkconfig自動完成的。

2.刪除服務
如果要刪除某項服務將上述命令的add 改為del 即可
示例:
chkconfig –del abc

11.2.4其它服務配置命令


1.ntsysv
Redhat與FC系統提供圖形介面管理工具。

2.setup
Setup也是呼叫的ntsysv工具進行管理的。

相關文章