Linux下/etc/init.d和/etc/rc.d/rc.local的區(qū)別說明:
/etc/init.d是個目錄,這個目錄里面用于放置shell腳本,注意是腳本,這些腳本是啟動腳本,用于Linux中服務(wù)的啟動、停止、重啟,比如各種Linux中的服務(wù)都會有啟動腳本放在這里,像是ssh服務(wù)的文件sshd就在這里面。而/etc/rc.d/rc.local是一個文件,這個文件用于用戶自定義開機啟動程序,也就是說用戶可以把需要開機啟動的程序、命令寫入這個文件,這樣就可以在系統(tǒng)啟動時自動執(zhí)行這個命令,比如把一個shell腳本的完整路徑寫入這個文件,那這個shell腳本就會在開機后自動執(zhí)行。
開機自啟動Tomcat:
每次開機都要啟動tomcat,用shell腳本來實現(xiàn)tomcat開機自啟動或者直接修改系統(tǒng)文件來實現(xiàn)。
一、改腳本文件rc.local:vim /etc/rc.d/rc.local
這個腳本是使用者自定的開機啟動程序,可以在里面添加想在系統(tǒng)啟動之后執(zhí)行的腳本或者腳本執(zhí)行命令
1、如下內(nèi)容:
export Java_HOME=/opt/jdk1.8.0_65
/opt/tomcat包名/bin/startup.sh start
2、esc 退出編輯,:wq 保存修改
3、將rc.local修改為可執(zhí)行
chmod +x /etc/rc.d/rc.local
二、在/etc/init.d目錄下創(chuàng)建啟動shell腳本文件
1、/etc/init.d里增加一個開機 運行腳本tomcatstart
vi /etc/init.d/tomcatstart
#!/bin/bash
#chkconfig: 2345 08 92
#description: Start
echo “Starting Tomcat Service …”
/opt/tomcat8/bin/startup.sh
2、給些啟動腳本加上執(zhí)行
chmod +x /etc/init.d/tomcatstart
3、利用chkconfig命令將腳本設(shè)置為自啟動
chkconfig –add tomcatstart
三、shell腳本說明
#!/bin/bash
#chkconfig: 2345 08 92
#description: Start
第一行,告訴系統(tǒng)使用的shell,所有的shell腳本都是這樣。
第二行,chkconfig后面有三個參數(shù)2345,08和92告訴chkconfig程序,需要在/etc/rc.d/rc2.d~rc5.d目錄下,創(chuàng)建名字為 S08tomcatstart的文件連接,連接到/etc/rc.d/init.d目錄下的的tomcatstart腳本。第一個字符是S,系統(tǒng)在啟動的時候,運行腳本tomcatstart,就會添加一個start參數(shù),告訴腳本,現(xiàn)在是啟動模式。
同時在/etc/rc.d/rc0.d和/etc/rc.d/rc6.d目錄下,創(chuàng)建名字為K92tomcatstart的 文件連接,第一個字符為K,在關(guān)閉系統(tǒng)的時候,會運行tomcatstart,添加一個stop參數(shù),告訴腳本,現(xiàn)在是關(guān)閉模式。
注意上面的三行中:第二、第三行是必須的,否則在運行chkconfig –add tomcatstart時,會報錯。
四、rhel7開機啟動自己的shell腳本
1、執(zhí)行如下命令將/etc/rc.d/rc.local文標(biāo)記為可執(zhí)行文件
在rhel7中,/etc/rc.d/rc.local文件的權(quán)限被降低了,開機的時候執(zhí)行在自己的腳本是不能起動一些服務(wù)的,執(zhí)行下面的命令可以文件標(biāo)記為可執(zhí)行的文件
chmod +x /etc/rc.d/rc.local
2、打開/etc/rc.d/rc.local文件,在最后面添加如下腳本
vi /etc/rc.d/rc.local
/etc/init.d/tomcatstart
這樣tomcatstart這個腳本在開機的時候就會被執(zhí)行了,以后再這里面寫啟動服務(wù)的命令就可以了
rhel7開機自啟動腳本可查看另外一篇:http://m.0106606.com/Linux/2019-07/159389.htm