1. 程式人生 > >ubuntu16.04設定cron自動重啟以及記錄日誌

ubuntu16.04設定cron自動重啟以及記錄日誌

有個ubuntu的伺服器,經常無緣無故服務掛掉,一旦掛掉就要手動重啟非常麻煩,查了很多資料,確定用crontab,但網上N多方法根本無法執行,通過一系列實驗,以下重啟方法是確定100%可以在16.04上跑的

1.確定你伺服器上cron是否已經安裝,可以用下面的命令確認

sudu apt-get install cron

2.開通並開啟cronie後臺服務,這一步很重要,不開通根本無法執行服務

sudo systemctl enable cron.service; sudo systemctl start cron.service

3.建立自己的配置文件,雖然/etc/crontab也可以,但自己配一個方便轉移

vi /root/mycrontab

我下面那2句是在每週日3:58分存當時的時間到/root/cronlog下面,然後在每週日4:00重啟,注意重啟用這個/sbin/reboot可用,其他的都無法用,我個人經驗

58 3 * * 0 date>>cronlog

0 4 * * 0 /sbin/reboot

因為一週執行一次還是可能會宕機,再放一個每2天執行一次的語句,如下:

58 3 */2 * * date>>cronlog

0 4 */2 * * /sbin/reboot

下面是每天執行一次的語句:

58 3 * * * date>>cronlog

0 4 * * * /sbin/reboot

5.載入mycrontab計劃到cron服務模組中,並檢視狀態
crontab /root/mycrontab
crontab -l 執行完這句應該可以看到mycrontab裡面的內容,每次修改mycrontab都需要重新載入並檢查

service cron start

6.設定OK,你可以把那個時間改成未來2分鐘試試效果,看重啟是否有效以及日誌是否成功

7.如果驗證OK,再把時間調整成你想設定的時間,然後開啟rc.local,把下面的程式碼加到 exit(0)前面

service cron start

這樣在重啟後,系統會呼叫crontab,繼續等待下一個重啟週期,完美解決。

下圖是這2個月來自己重啟的記錄,還挺穩定的,一開始是一週重啟一次,後來改成2天重啟一次