[OpenWRT] OpenWRT 的設定 (2): 工作排程

在 Linux 系統中, cron 是一種將工作排程的方式,
關於 cron 的敘述, 可以參考鳥哥的介紹:
http://linux.vbird.org/linux_basic/0430cron.php

而在 OpenWRT 中也支援 cron 的功能,
要啟用 cron 的功能, 我們要先編輯 cron 的排程列表,
輸入 crontab -e, 就可以開始編輯 cron 的工作排程,
其格式如下:


簡單來說, 就是定義 分; 時; 日; 月; 周期 以及要執行的工作,
舉例而言, 我們可以定義:

*/1 * * * * echo "hello"

這樣就會每一分鐘都顯示一次 "hello" 訊息,
我們可以在 logread 中看到:

root@OpenWrt:~# logread
Jun 21 07:17:01 OpenWrt cron.err crond[1211]: USER root pid 1495 cmd echo "hello"

當然, cron 用於 WiFi AP 主要是希望能夠提供管理上的功能,
舉例來說, 我們可以設定每天半夜定期重開機,

# Reboot at 0:45am every day
# Note: To avoid infinite reboot loop, wait 70 seconds
# and touch a file in /etc so clock will be set
# properly to 0:46 on reboot before cron starts.
45 0 * * * sleep 70 && touch /etc/banner && reboot

設定完 crontab 之後, 要記得透過 /etc/init.d/cron enable
開啟 OpenWRT 中 cron 的功能 (預設是關閉)
這樣一來, 就可以透過 logread 看到每天重開機, 
加上調整時間的成果, 如下所示:

Jan  1 08:01:21 OpenWrt daemon.info dnsmasq[1253]: using local addresses only for domain lan
Jun 21 00:48:23 OpenWrt cron.err crond[1212]: time disparity of 25491887 minutes detected

如果需要 OpenWRT 上更多關於 cron 的細節, 


留言

熱門文章

LTE筆記: RSRP, RSSI and RSRQ

[WiFi] WiFi 網路的識別: BSS, ESS, SSID, ESSID, BSSID

LTE筆記: 5G NR Measurement Events