Linux

我如何每 100 天執行一次 cronjob

  • October 3, 2022

每 100 天執行一次的命令的 crontab 語法是什麼樣的?

我需要每 100 天重新啟動一次

考慮使用systemd 計時器而不是 cron,因為它具有自上次(重新)啟動以來跟踪時間的本機支持。

創建一個文件,例如reboot.timer/etc/systemd/system

[Unit]
Description="Run reboot after 100 days"

[Timer]
OnBootSec=100days
Unit=reboot.service

[Install]
WantedBy=multi-user.target

要啟動計時器,請使用命令sudo systemctl start reboot.timer。要在啟動時啟用計時器,請執行命令sudo systemctl enable reboot.timer

我需要每 100 天重新啟動一次

這是一個非常可疑的要求。

通過 Cron….

0 23 * * * find /var/run -mtime +99 -name reboottimestamp && touch /var/run/reboottimestamp && /sbin/reboot

使用 ‘at’(從 rc.local 呼叫)似乎更合適……

echo /sbin/reboot | at 11pm +100 days

….但我實際上做的是

0 22 * * * test -f /var/run/reboot-required && /sbin/reboot

引用自:https://serverfault.com/questions/1112163