Fedora 24: 自動アップデートの設定をする

自動アップデート(dnf update)の設定について記述します。

 

1 dnf-automatic

Fedoraのマニュアルに記載されているdnf-automaticパッケージで実現します。

$ sudo dnf install -y dnf-automatic
$ sudo sed -i 's/apply_updates = no/apply_updates = yes/g' \
/etc/dnf/automatic.conf
$ sudo systemctl enable dnf-automatic.timer
$ sudo systemctl start dnf-automatic.timer

タイマーの周期は起動してから1時間後に実行され、以降は毎日実行されます。正確な時刻は指定できません。デスクトップ環境向けと言えます。

$ cat /usr/lib/systemd/system/dnf-automatic.timer
<snip>
[Timer]
OnBootSec=1h
OnUnitInactiveSec=1d
<snip>

2 dnf-automaticは再起動をサポートしていない

dnf needs-restartingのような再起動の要否を教えてくれるツールもありますが、若干の工夫が必要です。

原始的な方法ですが、dnf-automaticを用いずに、日曜日の0:00にdnf update -yとrebootを実行するcron jobを用います。

$ sudo systemctl stop dnf-automatic.timer
$ sudo systemctl disable dnf-automatic.timer
$ (sudo crontab -l; \
echo "0 0 * * 0 dnf update -y  && /usr/sbin/reboot") | \
sudo crontab