本文章向大家介紹Linux Ubuntu 20.04 —添加開機啟動(服務/腳本),主要包括Linux Ubuntu 20.04 —添加開機啟動(服務/腳本)使用實例、應用技巧、基本知識點總結和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。
我們一直強調成都做網站、網站建設對于企業(yè)的重要性,如果您也覺得重要,那么就需要我們慎重對待,選擇一個安全靠譜的網站建設公司,企業(yè)網站我們建議是要么不做,要么就做好,讓網站能真正成為企業(yè)發(fā)展過程中的有力推手。專業(yè)網站制作公司不一定是大公司,成都創(chuàng)新互聯作為專業(yè)的網絡公司選擇我們就是放心。
系統(tǒng)啟動時需要加載的配置文件
一、修改開機啟動文件:/etc/rc.local(或者/etc/rc.d/rc.local)
二、自己寫一個shell腳本
將寫好的腳本(.sh文件)放到目錄 /etc/profile.d/ 下,系統(tǒng)啟動后就會自動執(zhí)行該目錄下的所有shell腳本。
三、通過chkconfig命令設置
四、自定義服務文件,添加到系統(tǒng)服務,通過Systemctl管理
1.寫服務文件:如nginx.service、redis.service、supervisord.service
2.文件保存在目錄下:以754的權限。目錄路徑:/usr/lib/systemd/system。如上面的supervisord.service文件放在這個目錄下面。
3.設置開機自啟動(任意目錄下執(zhí)行)。如果執(zhí)行啟動命令報錯,則執(zhí)行:systemctl daemon-reload
4.其他命令
5.服務文件示例:
Linux 使用的是基于運行級( run-levels )概念的稱為 SysVinit 的專用啟動工具。 它在不同的系統(tǒng)上可能是完全不一樣的, 所以不能認為一個腳本在某個 Linux 發(fā)行版上工作正常。
SysVinit 以運行級的模式來工作,一般有 7 (從 0 到 6)個運行級 (實際上可以有更多的運行級,但都是用于特殊情況而且一般使用不到。 參見 init(8)以獲得更多信息),每個運行級對應于一套設定好的任務, 當啟動一個運行級的時候, 計算機就需要執(zhí)行相應的任務。
默認的運行級是 3,下面是對不同運行級的描述:
可以使用 runlevel 命令查看:
也可以在 /etc/inittab 文件中看到以下:
也就是說我們系統(tǒng)的運行級別目前是3,那么需要看的就是 /etc/rc3.d 下的內容,其實里面都是軟連接,所有的軟鏈指向 /etc/init.d/ 中的腳本文件,命名規(guī)范如下:
因此我們如果需要定義一個服務啟動的優(yōu)先級(順序),則需指定腳本的 number 即可。
linux設置開機自啟動執(zhí)行命令 :
執(zhí)行命令 : 編輯"/etc/rc.local",添加你想開機運行的命令
運行程序腳本 :然后在文件最后一行添加要執(zhí)行程序的全路徑。
例如,每次開機時要執(zhí)行一個hello.sh,這個腳本放在/usr下面,那就可以在"/etc/rc.local"中加一行"/usr/./hello.sh",或者" cd /opt ./hello.sh "
注意,你的命令應該添加在:exit 0 之前
linux在“/etc/rc.d/init.d”下有很多的文件,每個文件都是可以看到內容的,其實都是一些shell腳本或者可執(zhí)行二進制文件 Linux開機的時候,會加載運行/etc/init.d目錄下的程序,因此我們可以把想要自動運行的腳本放到這個目錄下即可。系統(tǒng)服務的啟動就是通過這種方式實現的。
簡單的說,運行級就是操作系統(tǒng)當前正在運行的功能級別。
例:在Ubuntu/debain里,可以使用update-rc.d命令來把示例腳本:/etc/init.d/proxy安裝到各個runlevel中。
update-rc.d后面有三個參數,分別是/etc/init.d下的腳本名字,默認安裝方式,運行的優(yōu)先級。優(yōu)先級的數字越大,表示越遲運行,這里我們把自己寫的服務放在最后運行。
如果要卸載隨機啟動的服務,執(zhí)行
在update-rc.d安裝的時候提示了警告信息,是因為我們寫的/etc/init.d/proxy太簡陋了,只包含了我們想要的命令,連LSB的信息也沒有提供。
只需要對自啟動腳本做一些小改動,就可以避免那個警告了。如下:
到此,一個最簡單的隨機啟動服務寫好了,看起來文章挺長的,但其實也就幾個命令而已。 在下次開機啟動的時候,proxy.py就會以root用戶身份被自動運行。
在/etc/init.d下新建示例腳本文件(startTest.sh),該腳本會啟動/opt/test.sh。內容如下:
寫了腳本文件之后事情還沒有完,繼續(xù)完成以下幾個步驟:
用戶想要在linux開機的時候自啟動相關的程序。那我們要怎么設置呢?下面由我為大家整理了linux下開機自啟動命令的相關知識,希望對大家有所幫助!
linux下開機自啟動命令
1.開機啟動時自動運行程序
Linux加載后, 它將初始化硬件和設備驅動, 然后運行第一個進程init。init根據配置文件繼續(xù)引導過程,啟動其它進程。通常情況下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目錄下的腳本文件,可以使init自動啟動其它程序。
例如:編輯 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在開機啟動后直接進入X-Window。
擴展:其他情況下linux自啟動程序命令
2.登錄時自動運行程序
用戶登錄時,bash首先自動執(zhí)行系統(tǒng)管理員建立的全局登錄script :/etc/profile。然后bash在用戶起始目錄下按順序查找三個特殊文件中的一個:/.bash_profile、/.bash_login、 /.profile,但只執(zhí)行最先找到的一個。
因此,只需根據實際需要在上述文件中加入命令就可以實現用戶登錄時自動運行某些程序(類似于DOS下的Autoexec.bat)。
3.退出登錄時自動運行程序
退出登錄時,bash自動執(zhí)行個人的退出登錄腳本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",則在每次退出登錄時自動執(zhí)行 "tar" 命令備份 *.c 文件。
4.定期自動運行程序
linux有一個稱為crond的守護程序,主要功能是周期性地檢查 /var/spool/cron目錄下的一組命令文件的內容,并在設定的時間執(zhí)行這些文件中的命令。用戶可以通過crontab 命令來建立、修改、刪除這些命令文件。
例如,建立文件crondFile,內容為"00 9 23 Jan * HappyBirthday",運行"crontab cronFile"命令后,每當元月23日上午9:00系統(tǒng)自動執(zhí)行"HappyBirthday"的程序("*"表示不管當天是星期幾)。 (/etc/crontab中配置命令即可)也可以
5.定時自動運行程序一次
定時執(zhí)行命令at 與crond 類似(但它只執(zhí)行一次):命令在給定的時間執(zhí)行,但不自動重復。at命令的一般格式為:at [ -f file ] time ,在指定的時間執(zhí)行file文件中所給出的所有命令。也可直接從鍵盤輸入命令:
6.創(chuàng)建開機自啟動腳本
1) 將你的啟動腳本復制到 /etc/init.d目錄下
以下假設你的腳本文件名為 test。
2) 設置腳本文件的權限
$ sudo chmod 755 /etc/init.d/test
3) 執(zhí)行如下命令將腳本放到啟動腳本中去:
$ cd /etc/init.d
$ sudo update-rc.d test defaults 95
注:其中數字95是腳本啟動的順序號,按照自己的需要相應修改即可。在你有多個啟動腳本,而它們之間又有先后啟動的依賴關系時你就知道這個數字的具體作用了。該命令的輸出信息參考如下:
update-rc.d: warning: /etc/init.d/test missing LSB informationupdate-rc.d: see
卸載啟動腳本的方法:
$ cd /etc/init.d
$ sudo update-rc.d -f test remove
命令輸出的信息參考如下:
Removing any system startup links for /etc/init.d/test … /etc/rc0.d/K95test /etc/rc1.d/K95test /etc/rc2.d/S95test /etc/rc3.d/S95test /etc/rc4.d/S95test /etc/rc5.d/S95test /etc/rc6.d/K95test
本周我們學習了如何使用Linux編輯腳本程序,當我們編寫好腳本的時候,我們需要返回終端界面,使用各種編譯器運行程序,但是有時候我們需要在系統(tǒng)開機的時候就自動運行這些程序,下面我們就來看一下在Linux下將腳本設定成開機自動運行的方法。
Linux在啟動時,會自動執(zhí)行/etc/rc.d目錄下的初始化程序,因此我們可以把啟動任務放到該目錄下。假設我們需要運行的腳本文件是test1目錄下的test.py。
在系統(tǒng)中找到/etc/rc.local文件,系統(tǒng)會根據該文件來啟動所指定的腳本或命令。
我們需要用超級用戶登錄,并在上述文件最后添加需要運行的腳本文件。
隨后cd /home/test1返回test1目錄以對其進行更改。?
su test1 -c "python /home/test1/test.py" --把要執(zhí)行的命令作為一個參數傳遞級su
下面我們就可以實現這個腳本的開機自動運行。
網站名稱:啟動腳本linux命令 linux執(zhí)行啟動腳本命令
URL分享:http://jinyejixie.com/article0/hpcsoo.html
成都網站建設公司_創(chuàng)新互聯,為您提供搜索引擎優(yōu)化、云服務器、網站改版、App開發(fā)、定制開發(fā)、外貿建站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯