/etc/init.d/目錄

一、關於/etc/init.d

 如果你使用過linux系統,那麼你一定聽說過init.d目錄。這個目錄到底是幹嘛的呢?
     它歸根結底只做了一件事情,但這件事情非同小可,是爲整個系統做的,
     因此它非常重要。init.d目錄包含許多系統各種服務的啓動和停止腳本。
     它控制着所有從acpid到x11-common的各種事務。當然,init.d遠遠沒有這麼簡單。
     (譯者注:acpid 是linux操作系統新型電源管理標準 ;X11也叫做X Window系統
     ,X Window系統 (X11或X)是一種位圖顯示的 視窗系統 。它是在 Unix 和 類Unix 操作
     系統 ,以及 OpenVMS 上建立圖形用戶界面 的標準工具包和協議,並可用於幾乎已有的
     現代操作系統)。

當你查看/etc目錄時,你會發現許多rc#.d 形式存在的目錄(這裏#代表一個指定的初始化
    級別,範圍是0~6)。在這些目錄之下,包含了許多對進程進行控制的腳本。這些腳本
    要麼以"K"開頭,要麼以"S"開頭。以K開頭的腳本運行在以S開頭的腳本之前。這些
    腳本放置的地方,將決定這些腳本什麼時候開始運行。在這些目錄之間,系統服務
    一起合作,就像運行狀況良好的機器一樣。然而,有時候你希望能在不使用kill 或killall
    命令的情況下,能幹淨的啓動或殺死一個進程。這就是/etc/init.d能夠派上用場的地方了!

如果你在使用Fedora系統,你可以找到這個目錄:/etc/rc.d/init.d。實際上無論init.d放在
    什麼地方,它都發揮着相同的作用。

 爲了能夠使用init.d目錄下的腳本,你需要有root權限或sudo權限。每個腳本都將被作爲
     一個命令運行,該命令的結構大致如下所示:

 /etc/init.d/command 選項

 comand是實際運行的命令,選項可以有如下幾種:

start
stop
reload
restart
force-reload
大多數的情況下,你會使用start,stop,restart選項。例如,如果你想關閉網絡,
你可以使用如下形式的命令:

     /etc/init.d/networking stop

    又比如,你改變了網絡設置,並且需要重啓網絡。你可以使用如下命令:

    /etc/init.d/networking restart

    init.d目錄下常用初始化腳本有:

networking
samba
apache2
ftpd
sshd
dovecot
mysql
當然,你可能有其他更多常用的腳本,這個取決於你安裝了什麼linux操作系統。

二、關於/etc/rc.local

  rc.local也是我經常使用的一個腳本。該腳本是在系統初始化級別腳本運行之後再執行的
        ,因此可以安全地在裏面添加你想在系統啓動之後執行的腳本。常見的情況是你可以再
        裏面添加nfs掛載/mount腳本。此外,你也可以在裏面添加一些調試用的腳本命令。例如
        ,我就碰到過這種情況:samba服務總是無法正常運行,而檢查發現,samba是在系統
        啓動過程中就該啓動執行的,也就是說,samba守護程序配置保證了這種功能本應該
        正確執行。碰到這種類似情況,一般我也懶得花大量時間去查爲什麼,我只需要簡單
        的在/etc/rc.local腳本里加上這麼一行:

      /etc/init.d/samba start

 這樣就成功的解決了samba服務異常的問題。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章