如何知道更新后是否需要重新启动?


28

我有4台Debian Wheezy OS服务器。我安装了Apticron,可以通知我有关更新的信息。Debian更新的实现如此频繁,以至于当我完成更新4台服务器中的最后一台时,我会收到有关第一台服务器上新更新的新电子邮件。收到通知后,我尝试更新所有服务器,但我不知道是否需要重新启动服务器。我已经读到,如果目录中"/var/run"包含文件"reboot-required",则必须重新引导服务器。但我从未在中看到此文件"/var/run"。我怎么知道什么时候需要重启?我不需要每次安装新更新时都不需要重新启动服务器。

我了解,如果我更新PHP或MySQL等,则不需要重新启动服务器,但是更新通常包含许多“ lib ...”。

以下是9个更新(我本周已收到)。

krb5-locales 1.10.1+dfsg-5+deb7u3
libdbus-1-3 1.6.8-1+deb7u6
libgssapi-krb5-2 1.10.1+dfsg-5+deb7u3
libk5crypto3 1.10.1+dfsg-5+deb7u3
libkrb5-3 1.10.1+dfsg-5+deb7u3
libkrb5support0 1.10.1+dfsg-5+deb7u3
libruby1.8 1.8.7.358-7.1+deb7u2
libxml2 2.8.0+dfsg1-7+wheezy3
ruby1.8 1.8.7.358-7.1+deb7u2

我不知道什么是“ libkrb,libgssapi”等。如何检测是否需要重启?请不要建议安装UnattendedUpgrades来让服务器自动更新,因为如果某些更新不正确,这可能会导致网站脱机。


如果仅应用security流而不应用常规更新,则不会获得太多更新。
poolie 2016年

Answers:


31

checkrestartdebian-goodies包装中检查。它显示使用更新的旧版本库的进程。如果您无法从该列表中删除所有进程,则需要重新启动:)

另外(如YuKYuK所说),始终在内核更新后重启!


10
或者,结帐needrestartlinux-audit.com/...
ypid

9

cat /var/run/reboot-required.pkgs'service' waiting for a reload。不需要重启,只需要内核升级(和Windows :))。

或在Debian上: lsof | grep lib | grep DEL


忘了说:他列出了所有更新的库。之后,您需要重新启动具有依赖性的应用程序。
YuKYK 2015年

正如我在问题中所写的那样,我从未见过/var/run/reboot-required.pkgs文件。每次更新后我都会检查此文件夹,但是什么也没有。
user1406271 2015年

lsof | grep lib | grep DEL看到lib等待“更新”
YuKYuK

2
是的,命令显示libs等待“更新”,而某些libs等待“服务”重启。仅内核更新需要系统重启(因为内核是kernel :)。
YuKYK 2015年

3
关于Debian Jessie的注意事项:这reboot-notifier是一个默认情况下未安装的小软件包,当需要重新启动才能加载更新的内核时,该软件包会附加此文件。reboot-notifier可以用作update-notifier-commonDebian Jessie中已删除的替代方法。另请参阅:serverfault.com/a/92939/177172
ypid

2

除此之外,我的服务器也遇到了同样的问题,我编写了一个更新脚本,在其中检查/ var / run /,如YuKYuK建议的那样:

test -f /var/run/reboot-required && echo rebooting && sudo reboot
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.