歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 使用chkconfig來管理Linux的服務

使用chkconfig來管理Linux的服務

日期:2017/2/28 16:23:30   编辑:Linux教程
chkconfig 用得最多的估計是在裝完Linux後關閉一大堆無用的服務,特別是sendmail,我們還可以用chkconfig這個命令來管理Linux的服務,在此之前先復習一下Linux的運行級別,Linux一般會有7個運行級別:

0 - 停機
1 - 單用戶模式
2 - 多用戶,但是沒有NFS ,不能使用網絡
3 - 完全多用戶模式,我最喜歡的模式
4 - “打醬油” 模式,沒有用到
5 - X11
6 - 重新啟動 (如果將默認啟動模式設置為6,Linux將會不斷重啟)

0和7屬於臨時運行級別不應設置為默認,默認的運行級別在 /etc/inittab 中設置。

言歸正傳,chkconfig可以為我們定制服務,以TSM為例,安裝好TSM的Server後,在目錄/opt/tivoli/tsm/server/bin中可以找到一個文件dsmserv.rc,將其ln到/etc/init.d這個目錄中,最後改改名字,讓它開起來更像一個服務的名字:

1 [root@FWDB init.d]$ pwd 2 /etc/rc.d/init.d 3 [root@FWDB init.d]$ ln -s /opt/tivoli/tsm/server/bin/dsmserv.rc ./dsmserv 4 [root@FWDB init.d]$ ll *dsm* 5 lrwxrwxrwx 1 root root 37 Nov 8 10:43 dsmserv -> /opt/tivoli/tsm/server/bin/dsmserv.rc

此時可以觀察一下我們熟悉的/etc/rcX.d,X是指不同運行級別:

1 [root@FWDB init.d]$ ls /etc/rc3.d/*dsm* 2 /etc/rc3.d/K10dsmserv 3 [root@FWDB init.d]$ ls /etc/rc5.d/*dsm* 4 /etc/rc5.d/K10dsmserv

我們可以像管理普通的服務那樣控制TSM的隨機啟動和關閉了:

1 [root@FWDB init.d]$ chkconfig --level 3 dsmserv on 2 [root@FWDB init.d]$ ls /etc/rc3.d/*dsm* 3 /etc/rc3.d/S90dsmserv 4 [root@FWDB init.d]$ service dsmserv restart 5 Stopping dsmserv... 6 dsmserv stopped Successfully :-) 7 8 Starting dsmserv ... Succeeded :-)

這個TSM的輸出顯得有點山寨。

大家可以留意下,啟動和關閉TSM的順序是不同的,分別是90和10,數值越小越優先啟動和關閉,這是在哪裡的定義的呢? 這是在dsmserv.rc這個文件的中定義的:

0 [root@FWDB init.d]$ head -n 8 dsmserv 1 #!/bin/bash 2 # 3 # dsmserv Start/Stop IBM Tivoli Storage Manager 4 # 5 # chkconfig: - 90 10 6 # description: Starts/Stops the IBM Tivoli Storage Manager Server 7 # processname: dsmserv 8 # pidfile: /var/run/dsmserv.pid

其中,第5行的90代表Start的順序,10代表Kill(Stop)的順序,不過更常用的做法是:

1 # chkconfig: 2345 90 10

指定需要注冊的運行級別。注意一下,這種腳本的這兩行是必須的,否則chkconfig --add會報錯的:

1 # chkconfig: _____________ 2 # description: _____________

管理嘛,能添加也能刪除,調用 chkconfig --del 就可以了。

Copyright © Linux教程網 All Rights Reserved