2021-05-12 14:32:11
Linux開機自啟動總結
Linux開機自啟動總結:
在作為伺服器使用的Linux(Cent OS)系統中,開機自動啟動若干服務是常見的。我們使用的指令是chkconfig,通過它將我們自定義的封裝了各種服務的sh指令碼新增到開機啟動項,並設定該指令碼的執行級別,啟動順序及停止順序。在這裡,我們介紹完基本的知識之後,會以LNMP中涉及的基本必須的服務開啟為例封裝一個指令碼,並使用chkconfig將該指令碼加入開啟啟動。
· 開機啟動介紹
· 指令碼命令封裝
· 指令碼開機自啟
1、啟動設定介紹
先看以下設定(自定義指令碼中),這些設定為系統可識別設定:
#add for chkconfig #代表使用新增指令碼方式為chkconfig
#chkconfig:2345 60 20 #2345指指令碼執行級別,234為文字介面,5為圖形介面,60為指令碼啟動的次序號,20為指令碼停止的次序號;如果其他程式啟動號小於60,那麼待它們執行之後,才執行60號。
#processname: lnmp_autostart #指定啟動的進程 這裡為sh指令碼
#description: the lnmp basic service of the shell #指令碼簡短描述
好了,有了上面的啟動設定之後,並將其新增到sh指令碼中即可。
2、指令碼命令封裝
A、Shell多條指令分割符說明
;號->各個命令都執行,不保證每個命令都執行成功;
&&號->若前面指令執行成功,才往下繼續執行,保證每條指令執行成功;
||號->若遇到一條指令成功執行,就返回不再執行;
B、以lnmp基本的服務為例:
$ cd /etc/init.d // 切換到開啟初始化init目錄
$ sudo touch lnmp_autostart.sh // 新建服務指令碼 並設定可執行
$ sudo chmod a+x lnmp_autostart.sh
$ sudo vim lnmp_autostart.sh // 編輯指令碼檔案
lnmp_autostart.sh:
[lnmp]
#!/bin/sh
#開機自動啟動的設定
#add for chkconfig
#chkconfig:2345 60 20
#processname:lnmp_autostart
#description: the lnmp basic service of the shell
#要啟動的服務指令集
/usr/local/bin/sudo PHP-fpm&&
echo ‘fpm start success!’&&
/usr/local/nginx/sbin/sudo nginx&&
echo ‘nginx start success!’&&
/usr/local/opt/MySQL/bin/mysql.server start&&
echo ‘mysql server is ok!’&&
…
3、指令碼開機自啟
$ chkconfig --add lnmp_autostart.sh
NOTE:
上面使用chkconfig將sh指令碼加入開啟自動啟動,然後重新啟動系統即刻生效;
另外,可以使用chkconfig --del刪除指定的啟動進程;
好了,到這裡已經介紹完了開機自動啟動,簡單吧。
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-01/139312.htm
相關文章