在Linux啟動或重啟時執行命令與腳本
有時可能會需要在重啟時或者每次系統啟動時運行某些命令或者腳本。我們要怎樣做呢?本文中我們就對此進行討論。 我們會用兩種方法來描述如何在 CentOS/RHEL 以及 Ubuntu 系統上做到重啟或者系統啟動時執行命令和腳本。 兩種方法都通過了測試。
方法 1 – 使用 rc.local
這種方法會利用 /etc/ 中的 rc.local 文件來在啟動時執行腳本與命令。我們在文件中加上一行來執行腳本,這樣每次啟動系統時,都會執行該腳本。
不過我們首先需要為 /etc/rc.local 添加執行權限,
- $ sudo chmod +x /etc/rc.local
然后將要執行的腳本加入其中:
- $ sudo vi /etc/rc.local
在文件最后加上:
- sh /root/script.sh &
然后保存文件并退出。使用 rc.local 文件來執行命令也是一樣的,但是一定要記得填寫命令的完整路徑。 想知道命令的完整路徑可以運行:
- $ which command
比如:
- $ which shutter
- /usr/bin/shutter
如果是 CentOS,我們修改的是文件 /etc/rc.d/rc.local 而不是 /etc/rc.local。 不過我們也需要先為該文件添加可執行權限。
注意:- 啟動時執行的腳本,請一定保證是以 exit 0 結尾的。
方法 2 – 使用 Crontab
該方法最簡單了。我們創建一個 cron 任務,這個任務在系統啟動后等待 90 秒,然后執行命令和腳本。
要創建 cron 任務,打開終端并執行
- $ crontab -e
然后輸入下行內容,
- @reboot ( sleep 90 ; sh \location\script.sh )
這里 \location\script.sh 就是待執行腳本的地址。
我們的文章至此就完了。如有疑問,歡迎留言。