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