Ubuntu

Ubuntu22.04 Which services should be restarted?

Ubuntu

アップデートを掛けたら、デーモンの再起動を聞かれるようになった。
これはneedrestartというパッケージが使われるようになったからのようだ。



広告


再起動が必要なデーモンがあるなら、再起動しちゃってください。

/etc/needrestart/needrestart.conf

…
# Restart mode: (l)ist only, (i)nteractive or (a)utomatically.
#
# ATTENTION: If needrestart is configured to run in interactive mode but is run
# non-interactive (i.e. unattended-upgrades) it will fallback to list only mode.
#
#$nrconf{restart} = 'i';
$nrconf{restart} = 'a';

この設定にすると、unattended-upgradesでも必要なサービスは再起動されることになると思われる。最初の設定は(i)nteractiveで、unattended-upgradesは(l)ist onlyにフォールバックすると書かれている訳だから。

動作確認

設定変更前

2022/05/14にUbuntu 22.04をインストールし、直後に14個のアップデートがあると知らされる。

Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-30-generic x86_64)
…
14 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

早速アップデート。

$ sudo apt update; sudo apt dist-upgrade

インストールが終わると、デーモンを再起動するかどうか聞かれるようになっていた。
再起動が必要なデーモンにはチェックが入っているようだ。

Daemons using outdated libraries
Which services should be restarted?

そのままOKすると、選択しているサーバーが再起動する。

…
Restarting services...
 systemctl restart irqbalance.service multipathd.service open-vm-tools.service packagekit.service polkit.service rsyslog.service ssh.service udisks2.service

Service restarts being deferred:
 systemctl restart ModemManager.service
 /etc/needrestart/restart.d/dbus.service
 systemctl restart networkd-dispatcher.service
 systemctl restart systemd-logind.service
 systemctl restart unattended-upgrades.service
 systemctl restart user@1000.service
…

設定変更後

仮想ゲストのHDDイメージを元に戻し、最初に書いた設定を入れて動作を確認。
問い合わせはなくなり、必要とされていたデーモンが再起動していた。

Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-30-generic x86_64)
…
14 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

$ sudo apt update; sudo apt dist-upgrade
…
Restarting services...
 systemctl restart irqbalance.service multipathd.service open-vm-tools.service packagekit.service polkit.service rsyslog.service ssh.service udisks2.service

Service restarts being deferred:
 systemctl restart ModemManager.service
 /etc/needrestart/restart.d/dbus.service
 systemctl restart networkd-dispatcher.service
 systemctl restart systemd-logind.service
 systemctl restart unattended-upgrades.service
 systemctl restart user@1000.service
…

問題はなさそうだ。

お試し

なお、ノンインタラクティブならリストするだけということならば…と

$ sudo apt -y dist-upgrade

を試してみたけれども、再起動するデーモンの問い合わせは「あった」ので、ノンインタラクティブにはあたらないらしい。

広告

コメントはこちらから お気軽にどうぞ ~ 投稿に関するご意見・感想・他