linux設置開機自啓動

 

一.、在/etc/rc.local文件中添加自啓動命令

執行命令: 編輯"/etc/rc.local",添加你想開機運行的命令html

運行程序腳本:而後在文件最後一行添加要執行程序的全路徑。mysql

例如,每次開機時要執行一個hello.sh,這個腳本放在/usr下面,那就能夠在"/etc/rc.local"中加一行"/usr/./hello.sh",或者" cd /opt && ./hello.sh "linux

注意,你的命令應該添加在:exit 0 以前sql

 

 

 

2、在/etc/init.d目錄下添加自啓動腳本

linux在「/etc/rc.d/init.d」下有不少的文件,每一個文件都是能夠看到內容的,其實都是一些shell腳本或者可執行二進制文件
Linux開機的時候,會加載運行/etc/init.d目錄下的程序,所以咱們能夠把想要自動運行的腳本放到這個目錄下便可。系統服務的啓動就是經過這種方式實現的。shell

 

3、運行級別設置

簡單的說,運行級就是操做系統當前正在運行的功能級別。apache

不一樣的運行級定義以下:
# 0 - 停機(千萬不能把initdefault 設置爲0 )
# 1 - 單用戶模式         進入方法#init s = init 1
# 2 - 多用戶,沒有 NFS
# 3 - 徹底多用戶模式(標準的運行級)
# 4 - 沒有用到
# 5 - X11 多用戶圖形模式(xwindow)
# 6 - 從新啓動 (千萬不要把initdefault 設置爲6 )

例:在Ubuntu/debain裏,可使用update-rc.d命令來把示例腳本:/etc/init.d/proxy安裝到各個runlevel中。ide

update-rc.d proxy defaults 99

update-rc.d後面有三個參數,分別是/etc/init.d下的腳本名字,默認安裝方式,運行的優先級。優先級的數字越大,表示越遲運行,這裏咱們把本身寫的服務放在最後運行。post

若是要卸載隨機啓動的服務,執行ui

update-rc.d -f proxy remove

在update-rc.d安裝的時候提示了警告信息,是由於咱們寫的/etc/init.d/proxy太簡陋了,只包含了咱們想要的命令,連LSB的信息也沒有提供。spa

update-rc.d: warning: /etc/init.d/proxy missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>

只須要對自啓動腳本作一些小改動,就能夠避免那個警告了。以下:

#!/bin/sh
### BEGIN INIT INFO
# Provides: proxy
# Required-Start: $remote_fs
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start or stop the HTTP Proxy.
### END INIT INFO

case "$1" in
start)
start-stop-daemon --start --background --exec /root/proxy.py
;;
stop)
start-stop-daemon --stop --name proxy.py
esac

到此,一個最簡單的隨機啓動服務寫好了,看起來文章挺長的,但其實也就幾個命令而已。
在下次開機啓動的時候,proxy.py就會以root用戶身份被自動運行。

 

4、把腳本註冊爲系統服務

在/etc/init.d下新建示例腳本文件(startTest.sh),該腳本會啓動/opt/test.sh。內容以下:

. /etc/init.d/functions
start() {
echo "Starting my process "
cd /opt
./test.sh
}
stop() {
killall test.sh
echo "Stoped"
}

寫了腳本文件以後事情尚未完,繼續完成如下幾個步驟:

chmod +x startTest         #增長執行權限
chkconfig --add startTest     #把startTest添加到系統服務列表
chkconfig startTest on       #設定startTest的開關(on/off)
chkconfig --list startTest.sh   #就能夠看到已經註冊了startTest的服務

 

  

版權聲明: 
做者:ssooking  聯繫郵箱:ssooking@yeah.net 
若無特殊說明,所發博文皆爲原創,轉載請務必註明出處、保留原文地址。歡迎交流分享!若是您有任何問題,請聯繫我!
轉載自:https://www.cnblogs.com/ssooking/p/6094740.html
相關文章
相關標籤/搜索