前言:
在日常使用linux系統過程中,安裝服務後系統不會自動啟動服務的。就算手動啟動了服務,只是當前生效,一旦服務器重啟後,系統不會自動啟動這些服務。如果每次重啟服務器都要自己手動啟動這些服務,一臺還闊以接受,如果是一個集群等等,那麼難免會有點淡淡的憂傷。所以,我們接下來就來設置一下開機啟動服務。
1、 利用systemctl命令添加啟動項
以centos7中的docker服務為例
注意:
centos7自啟項已不再使用chkconfig查看,而是systemctl
1.1、查看開機自啟項列表
systemctl list-unit-files
左—>右依次是:
服務名稱、狀態。
enabled:開機啟動
disabled:開機不啟動
還是比較多的,咱們過濾一下
只查看啟動項
systemctl list-unit-files | grep enabled
發現一個咱們常用的firewalld.service
1.2、設置docker服務開機啟動
systemctl enable docker
從服務列表中查看
systemctl list-unit-files | grep docker
發現如下已經enable
啟動服務
systemctl start docker.service
1.3、測試服務是否自啟,重啟OS
init 6
1.4、查看服務狀態
systemctl status docker
1.5、補充
移除開機啟動服務
systemctl disable docker
以docker為例
2、 修改配置文件[/etc/rc.d/rc.local],添加開機自啟腳本
關於/etc/rc.d/rc.local文件:
Centos中的運行模式2、3、5都把/etc/rc.d/rc.local做為初始化腳本中的最後一個,所以用戶可以在這個文件中添加一些需要在其他初始化工作之後,登錄之前執行的命令。
2.1以tomcat為例:
注意:這裡也可以自己寫一個腳本[同理],為了方便直接使用tomcat自帶的
獲取startup.sh路徑
/root/General/apache-tomcat-8.5.31/bin
2.2、修改配置文件[/etc/rc.d/rc.local]
vim /etc/rc.d/rc.local
添加
/root/General/apache-tomcat-8.5.31/bin/startup.sh
2.3、給rc.local x[執行]的權限
注意:在centos7中,/etc/rc.d/rc.local的權限被降低了
chmod a+x rc.local
2.4、使文件生效
將剛剛修改的文件加載到內存
source /etc/rc.d/rc.local
2.5、查看tomcat進程
ps -ef | grep tomcat
2.6、重啟
init 6
在瀏覽器中訪問以下
測試成功。
為了規範一點,下一篇centos7利用systemctl添加自定義系統服務。
歡迎大家給予寶貴的意見或者建議。
歡迎大家補充或者共享一些其他的方法。
感謝支持。
閱讀更多 程序員日常筆記 的文章