"System restart required" flag, who sets it and why? How to read it? [duplicate]
Solution 1:
Short version:
cat /var/run/reboot-required.pkgs
Explanation:
Looks like there is an easy way to automatically extract the requested information.
Inside .deb
files there are control files for installation, including postinst
(run after installation).
For example, in linux-image-2.6.35-25-generic_2.6.35-25.44_amd64.deb
,postinst
includes
my $notifier = "/usr/share/update-notifier/notify-reboot-required";
my $warn_reboot = 'Yes'; # Warn that we are installing a version of
# the kernel we are running
and
# Warn of a reboot
if (-x $notifier) {
system($notifier);
}
The shell script
/usr/share/update-notifier/notify-reboot-required
updates/var/run/reboot-required
and /var/run/reboot-required.pkgs
.
The latter file contains a list of packages requesting a reboot.
Solution 2:
Reboot is recommended by the unattended-upgrades
when it sees that a /var/run/reboot-required
exists. The file is created by postinst
(post-installation) scripts in some packages, it looks something like this:
[ -x /usr/share/update-notifier/notify-reboot-required ] && \
/usr/share/update-notifier/notify-reboot-required || true
If you want to see which packages triggered this, you can have a look at the contents of the /var/run/reboot-required.pkgs
file.
For more info also see this thread.