Linux系統如何設定開機自動執行指令碼? | IT人
文章推薦指數: 80 %
Linux系統如何設定開機自動執行指令碼?在工作中,我們經常有個需求,那就是在系統啟動之後,自動啟動某個指令碼或服務。
在Windows 下,我們有很多 ...
Togglenavigation
IT人
IT人
Linux系統如何設定開機自動執行指令碼?
lhrbest發表於
2020-06-29
Linux
Linux系統如何設定開機自動執行指令碼?
在工作中,我們經常有個需求,那就是在系統啟動之後,自動啟動某個指令碼或服務。
在Windows下,我們有很多方法可以設定開機啟動,但在Linux系統下我們需要如何操作呢?
Linux下同樣可以設定開機啟動,下面我們就介紹三種簡單但可行的開機啟動設定方法。
方法一:修改/etc/rc.d/rc.local檔案
/etc/rc.d/rc.local
檔案會在Linux系統各項服務都啟動完畢之後再被執行。
所以你想要自己的指令碼在開機後被執行的話,可以將自己指令碼路徑加到該檔案裡。
但是,首先需要確認你有執行這個檔案的許可權。
$ chmod +x /etc/rc.d/rc.local
為了演示,我們建立了一個指令碼,當它被執行之後,將在家目錄下寫入有特定資訊的檔案。
$ vim auto_run_script.sh
#!/bin/bash
date >> /home/alvin/output.txt
hostname >> /home/alvin/output.txt
儲存退出後,再給它賦予可執行許可權:
$ chmod +x auto_run_script.sh
然後,我們再將指令碼新增到
/etc/rc.d/rc.local
檔案最後一行:
$ vim /etc/rc.d/rc.local
/home/alvin/auto_run_script.sh
接下來,我們就可以試試效果了。
直接重啟系統就可以了:
$ sudo reboot
重啟之後,就會在家目錄下看到指令碼執行的結果了。
方法二:使用crontab
大家知道,crontab是Linux下的計劃任務,當時間達到我們設定的時間時,可以自動觸發某些指令碼的執行。
我們可以自己設定計劃任務時間,然後編寫對應的指令碼。
但是,有個特殊的任務,叫作
@reboot
,我們其實也可以直接從它的字面意義看出來,這個任務就是在系統重啟之後自動執行某個指令碼。
那它將執行的是什麼指令碼呢?我們如何去設定這個指令碼呢?我們可以通過
crontab-e
來設定。
$ crontab -e
@reboot /home/alvin/auto_run_script.sh
然後,直接重啟即可。
執行的效果跟上面類似。
方法三:使用systemd服務
以上介紹的兩種方法,在任何Linux系統上都可以使用。
但本方法僅適用於systemd系統。
如何區分是不是systemd系統?很簡單,只需執行
psaux
命令,檢視pid為1的程式是不是systemd。
為了實現目的,我們需要建立一個systemd啟動服務,並把它放置在
/etc/systemd/system/
目錄下。
我們建立的systemd啟動服務如下。
請注意,這時字尾是
.service
,而不是
.sh
。
$ vim auto_run_script.service
[Unit]
Description=Run a Custom Script at Startup
After=default.target
[Service]
ExecStart=/home/alvin/auto_run_script.sh
[Install]
WantedBy=default.target
從服務的內容可以看出來,我們最終還是會呼叫/home/alvin/auto_run_script.sh這個指令碼。
然後,我們再把這個指令碼放置在
/etc/systemd/systerm/
目錄下,之後我們再執行下面兩條命令來更新systemd配置檔案,並啟動服務。
$ systemctl daemon-reload
$ systemctl enable auto_run_script.service
萬事俱備之後,我們就可以重啟系統啦。
$ reboot
AboutMe
........................................................................................................................
●本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除
●本文在個人微信公眾號(
DB寶)上有同步更新
●QQ群號:
230161599
、618766405,微信群私聊
●個人QQ號(646634621),微訊號(db_bao),註明新增緣由
●於2020年6月在西安完成
●最新修改時間:2020年6月
●版權所有,歡迎分享本文,轉載請保留出處
........................................................................................................................
●
小麥苗的微店:
https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
●小麥苗出版的資料庫類叢書:
http://blog.itpub.net/26736162/viewspace-2142121/
●
小麥苗OCP、OCM、高可用、DBA學習班:
http://blog.itpub.net/26736162/viewspace-2148098/
●資料庫筆試面試題庫及解答:
http://blog.itpub.net/26736162/viewspace-2134706/
........................................................................................................................
請掃描下面的二維碼來關注小麥苗的微信公眾號(
DB寶)及QQ群(230161599、618766405)、新增小麥苗微信(db_bao),
學習最實用的資料庫技術。
........................................................................................................................
來自“ITPUB部落格”,連結:http://blog.itpub.net/26736162/viewspace-2701100/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
Linux下安裝Redis
2020-11-22
RedisLinux
Linux系統CentOS678更換阿里yum源的方法
2020-11-21
LinuxCentOS
golanggopsutil程式系統硬體資訊獲取
2020-11-21
Go
電力系統分析(第二版)HadiSaadatmatlab程式二(教材搬運)
2020-11-21
650【畢設課設】基於微控制器大氣壓監測報警系統電路方案設計
2020-11-22
作業系統實驗:銀行家演算法(C語言)
2020-11-22
演算法
Linux核心原始碼分析之set_arch(一)
2020-11-22
Linux
yylAdmin基於ThinkPHP6和Vue2的極簡後臺管理系統
2020-11-22
VuePHP
os-openwrt通訊類產品常用linux
2020-11-22
Linux
abp(netcore)+easyui+efcore實現倉儲管理系統——出庫管理之六(五十五)
2020-11-22
Java學生管理系統(MVC)開源原始碼(基礎版)
2020-11-22
Java
現代作業系統-原理與實現【讀書筆記】
2020-11-22
遊戲系統開發繼承帶來的問題
2020-11-22
Linux特殊許可權,這一篇就夠了
2020-11-22
Linux
《推薦系統實踐》筆記01推薦系統簡介
2020-11-22
linux最常用的20個命令(一)
2020-11-22
Linux
linux系統中SElinux安全子系統
2020-11-22
Linux
分散式監控系統之Zabbix網路發現
2020-11-22
linux使用者賬號和組賬號概述
2020-11-22
Linux
最新文章
《Mybatis手擼專欄》第2章:建立簡單的對映器代理工廠
什麼是機器學習迴歸演算法?【線性迴歸、正規方程、梯度下降、正則化、欠擬合和過擬合、嶺迴歸】
什麼是機器學習分類演算法?【K-近鄰演算法(KNN)、交叉驗證、樸素貝葉斯演算法、決策樹、隨機森林】
golang開發:go併發的建議
Redigo:ScanStruct()匿名指標欄位的解析
gitlab-runnerx509:certificatesignedbyunknownauthority
DeepSort之原始碼解讀
Python介面自動化——檔案上傳/下載介面
與Rust勾心鬥角·點
Unabletonegotiatewithxx.xxx.xxxxport22:nomatchinghostkeytypefound.Theiroffer:ssh-rsa(解決的兩種方式)
victoriaMetrics庫之布隆過濾器
微服務簡單實現最終一致性
延伸文章資訊
- 1如何設定開機後自動執行程式(Windows 10) - 老操人實驗室
設定自動啟動 · 1.在左下圖示點擊滑鼠「右鍵」,點擊「執行」。 · 2.在對話框裡鍵入「shell:startup」後,點擊「確定」。 · 3.輸入指令後,就會開啟「啟動」 ...
- 2Windows10開機自動執行批處理、指令碼等的方法- IT閱讀
方法/步驟: 一:開啟我的電腦, 在位址列輸入:“C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup”,. 二,把自動執行批...
- 3Win10怎麼新增、刪除開機時自動執行的程式?關閉&管理開機 ...
Windows10怎麼設定開機要自動啟動的程式?關閉不想執行的軟體?把沒有用到的程式刪除,可以加快電腦開機的時間。另外,也提供開機時要自動啟動項目的新增教學, ...
- 4用【工作排程器】讓軟體開機後自動啟動,且不跳出UAC 警告
大部分軟體為了方便使用者其實都會主動提供開機後自動啟動的設定, ... 簡單一點的可以參考之前的方法執行「shell:startup」指令並將軟體啟動捷徑拉到 ...
- 5Windows 10 開機自動執行的啟動資料夾( Startup Folder )在 ...
Windows 系統有一個「啟動」資料夾,此資料夾下的應用程式會在電腦開機時自動執行,這個功能特色非常的方便,但Windows 8/10之後,這項功能被隱藏了, ...