我有一台運行 Ubuntu 14.04.3 的 Beaglebone Black (armv7l)。我讓系統保持運作狀態,大約每週一次,當我嘗試透過 ssh 登入時,我會突然收到此錯誤:
The system is going down for reboot in 3 minutes!
Authentication failed.
我嘗試過等待 3 分鐘到 3 小時,但訊息始終沒有改變。據我所知,我已經完全被排除在外了。
我猜這是由我每天運行的 cron 作業引起的:
0 4 * * * bash -c '/sbin/shutdown -r +$[RANDOM\%40]'
我目前的猜測是 cron 以此開始關閉,但出了問題並且掛起,不允許登入。我有root密碼,但無法存取root用戶,所以根本無法登入。
唯一可疑的是該命令在單獨運行時會產生語法錯誤:
bash: RANDOM\%40: syntax error: invalid arithmetic operator (error token is "\%40")
但它似乎以其他方式工作,系統出現故障並在 6/7 天後可靠地恢復。
我不知道我從哪裡得到這個命令,但如果我今天這樣做我會使用
0 4 * * * bash -c '/sbin/shutdown -r +$[$RANDOM%40]'
但我不太確定這是否能解決我的問題。
有誰知道為什麼關閉會阻止這樣的登入?這是 cron 作業的問題,還是完全是我沒有想到的其他問題?