歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在SUSE Linux 10 中使用rc.local

在SUSE Linux 10 中使用rc.local

日期:2017/2/28 15:46:20   编辑:Linux教程

SUSE10中沒有rc.local, 感覺用起來不是很方便

suse linux 沒有這個檔案,另外策略就是也不喜歡使用者這樣管理啟動服務。

若你有某各服務服務需要是在進入 runlevel 後才執行的話,於 suse 下正規做法應該是自己寫一個 rc script 檔案放置於 /etc/init.d/ 目錄內,然後使用 chkconfig or inssev 程式來管理配置能夠於某個 runlevel 環境開機時是否要啟用關閉該服務項目。

該 rc script 檔案寫法可以自己參考一下 /etc/init.d/ 裡面現成的 script 檔案,應該很容易就寫一個自己的版本。

另外 suse 有個 /etc/init.d/boot.local 檔案是由 /etc/init.d/boot 這個 script 所啟動的,而且是最後 boot script 工作完成要准備進入 runlevel 環境執行各項 rc script 前所執行。而 rh 的 /etc/rc.d/rc.local 檔案是 runlevel 環境執行各項 rc script 時最後一個階段執行的。

所以若你要跑的程式適合於 runlevel 這項服務之前就執行的話,suse linux 可以放於 boot.local 檔案。

1 方法一
1.1 步驟一
編輯/etc/init.d/rc腳本,在最後一個exit 0之前,加入以下內容:
rc_local=/etc/rc.d/rc.local
current_runlevel=$(runlevel | awk '{ print $NF }')
if [ -x $rc_local ];then
((current_runlevel>1)) && ((current_runlevel<6)) && {
echo -e "\n\n\n"
echo "-----------------------Startup $rc_local---------------------------"
$rc_local
}
fi
以上為腳本內容
1.2 步驟二
然後創建/etc/rc.local文件,並賦予755權限:
chmod 0755 /etc/rc.d/rc.local


2 方法二
2.1 步驟一
創建/etc/rc.d/rclocal文件,加入以下內容:
case "$1" in
start)
if ! test -x /etc/init.d/rc.local ; then
echo '/etc/rc.local is not exsit!'
exit 1
fi
/etc/init.d/rc.local &
;;
stop)
;;
esac
以上為腳本內容
2.2 步驟二
創建/etc/rc.d/rc.local,把你要開機執行的腳本都加到裡面
2.3 步驟三
chmod 0755 /etc/rc.d/rc.local /etc/rc.d/rclocal
2.4 步驟四

chkconfig --add rclocal

Copyright © Linux教程網 All Rights Reserved