Init-Script
rc、rc.local 和 rc.sysinit 有什麼區別?
我試圖在啟動時顯示目前執行級別的啟動腳本列表。我寫了以下程式碼。
rl=`runlevel | cut -d " " -f2` ls /etc/rc.d/rc$rl.d/S* | cut -d "/" -f5 sleep 10
如果我將此程式碼放入
rc.local
文件中,它就可以工作。但是,如果我將它放在
rc
文件或單獨的腳本文件abc
中/etc/init.d
並通過在執行級別目錄中創建軟連結,它就不起作用。但是像下面這樣的簡單命令可以在所有方法中執行。
ls /etc/init.d
除非某些腳本已啟動,否則某些命令(例如執行級別或管道)將無法工作?或者還有別的什麼?
如果我將程式碼放入
rc
文件中,我的程式碼會在重啟前後執行。
rc
那麼,rc.local
和rc.sysinit
文件有什麼區別呢?- 我究竟需要在哪裡編輯這些文件?
我還可以在 2、3、4 和 5 執行級別中找到
S99local
-> 軟連結。rc.local
這是否意味著它
rc.local
不會在執行級別 1 上執行?
rc
Linux 發行版通常不使用,但在 BSD中使用rc.local
用於在啟動期間能夠執行額外的命令而無需添加符號連結。rc.sysinit
似乎是Red Hat特定的,並且在此過程的早期執行。它作為第一個腳本之一rc.local
執行,稍後執行。我還可以在 2、3、4 和 5 執行級別中找到 rc.local 的 S99local -> 軟連結。這是否意味著 rc.local 不會在執行級別 1 上執行?
正確,這意味著作為符號連結的 S99local
/etc/rc.local
將是進入執行級別2
、、3
和時4
最後執行的腳本之一5
。它不會像單使用者1
執行級別那樣1
為執行級別執行,通常用於救援/維護工作。