看板 Linux 關於我們 聯絡資訊
最近在測試用PXE+preseed 遠端自動安裝ubuntu 18.04 本來想在preseed 中加入完成安裝後,送出通知信件給管理者 我加入 d-i preseed/late_command \ in-target hostname |mail -s "install complete" [email protected] ;\ in-target passwd --expire root ;\ 這樣的語法,下面那段會正常執行 但是上面那行沒辦法送出郵件,也看不到log 發生什麼事 所以想改用另外的方式 因為pxe 安裝完後,client 會重開機 所以我想說在重開機之後,送出信件通知管理者 翻了一下文件 說是可以在crontab 文件中,用@reboot 來指定重開機後的動作 可是我把這個語法加入 /etc/crontab 或者是 /etc/cron.d/after_reboot 都沒有作用 但是如果用某個user登入,然後用crontab -e 編輯這個user的crontab 加入一樣的語法 那就可以正常被執行 所以看來這個 @reboot 只能放在user個人的crontab 中? 要讓系統可以重開機後就執行,需要修改 /etc/rc.local ? 只是在pxe 中,要修改 /etc/rc.local 挺麻煩的說... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.85.234.104 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1564476564.A.D8C.html
CMJ0121: 要不要改用 systemd 呢 07/30 17:26
CMJ0121: https://askubuntu.com/questions/919054 07/30 17:26
hijkxyzuw: 不是所有的 cron 都支援 @reboot 這個關鍵字 07/30 20:15
chang0206: 回樓上,看起來似乎如此 不過沒找到文件說明... 07/31 10:12
CMJ0121: https://askubuntu.com/questions/335615/ 是這個問題? 07/31 13:43
chang0206: 是的,不管是/etc/cron.d /etc/crontab 都一樣不能用 07/31 15:32
chang0206: @reboot ,但是只要加在user的crontab就可以 07/31 15:32
chang0206: 不對,應該說 只要用某帳號登入 然後輸入crontab -e 07/31 15:32
chang0206: 這樣子用@reboot 才有作用..然後真的文件都沒說到這塊 07/31 15:33
Gold740716: user 竟然有用,有點離奇 08/01 08:52
chang0206: 黑啊 超神奇 反而是系統的crontab不支援... 08/01 10:11
chang0206: BTW 後來還是用硬幹rc.local解決.. 08/01 10:12
holishing: 一次性應付而言rc.local滿直覺的,如果每次重開都要或 08/02 00:44
holishing: 有類似的固定需求的話或許可以寫寫看systemd unit 08/02 00:44
chang0206: 沒有唷 rc.local每次開機都會被執行,但是我只要執行 08/02 11:23
chang0206: 一次,所以要動點手腳 08/02 11:23
fourdollars: 要不寫個簡單的 backend 程式放在某個公開的伺服器? 08/02 17:00
fourdollars: 然後去 wget 一下,也可以順便 POST 什麼資料上去。 08/02 17:00
chang0206: 有,本來有想這樣做 不過因為rc.local解決了 就暫時不 08/02 17:23
chang0206: 改了,不然我覺得這個應該是比較好的方法 08/02 17:23