systemdのtimerを使って定期的なマシンリブート

systemdを使用して定期的なマシンリブートを行ないます。

古くから定期実行といえば、crondを使っていましたが、将来なくなるかも知れないので、定期的な実行は、systemdに移行していこうと思います。

環境

$ cat /etc/almalinux-release
AlmaLinux release 9.5 (Teal Serval)
$ uname -r
5.14.0-503.23.1.el9_5.x86_64

作成

$ sudo vi /etc/systemd/system/schedule-reboot.timer
[Unit]
Description=Reboot Scheduling.

[Timer]
Unit=reboot.target
OnCalendar=*-*-* 3:30:00 ・・・ 毎日3:30

[Install]
WantedBy=timers.target

登録

$ sudo systemctl enable scheduled-reboot.timer
Created symlink /etc/systemd/system/timers.target.wants/scheduled-reboot.timer
 → /etc/systemd/system/scheduled-reboot.timer.
$ sudo systemctl start scheduled-reboot.timer
$ sudo systemctl status scheduled-reboot.timer
* scheduled-reboot.timer - Reboot Scheduling.
     Loaded: loaded (/etc/systemd/system/scheduled-reboot.timer; enabled; preset: disabled)
     Active: active (waiting) since Sun 2025-02-09 11:07:30 JST; 1min 9s ago
      Until: Sun 2025-02-09 11:07:30 JST; 1min 9s ago
    Trigger: Mon 2025-02-10 03:00:00 JST; 15h left
   Triggers: * reboot.target

Feb 09 11:07:30 server01 systemd[1]: Started Reboot Scheduling..

確認

$ systemctl list-timers --all
NEXT                        LEFT          LAST       PASSED       UNIT                         ACTIVATES
   : (省略)
Mon 2025-02-10 03:00:00 JST 15h left      -           -           scheduled-reboot.timer      reboot.target
   : (省略)
10 timers listed.

タイトルとURLをコピーしました