我听说 Linux 机器可以连续运行数月而无需重启。那么为什么在安装更新后 Ubuntu 会提示“需要重启才能完成更新...”?
Linux 和 UNIX 用户吹嘘自老布什担任总统以来他们就没有重启过系统。
http://www.tested.com/news/feature/1141-how-often-do-you-really-need-to-reboot-your-pc/
答案1
您所读到的都是事实。大多数管理员都会吹嘘他们的机器的正常运行时间。这可能是几天、几个月甚至几年。
但是,您需要知道的是,这些机器不是您日常使用的桌面系统。它们是专用的服务器机器。
首先,它们很少运行 X11。大多数服务器系统通常只在终端上运行。因此,XServer 的升级并不重要。
其次,正如 Karthik 指出的那样,X Server 的更新只需要重新启动 X,而不是整个机器。因此您的正常运行时间仍然存在。
另一个非常重要的问题是,服务器系统不会在最新内核版本发布时更新到它。在 Ubuntu 上,您现在可能正在使用版本 3.2。在我的 Arch 系统上,我使用的是版本 3.6,但许多这些吹嘘长时间正常运行的系统可能仍然处于 2.xx 系列的某个版本,尽管使用反向移植的补丁完全安全。
此类系统上的所有更新都只在原地进行。更新首先在测试机上进行测试,经过彻底测试以确保没有发生任何破坏,并且实施更新不需要重新启动,然后由管理员进行升级。
您也可以在 Ubuntu 系统上执行相同操作。但不要考虑自动更新。进行一些测试并尝试就地进行更新。甚至内核也可以进行热交换。但是,每次成功完成都需要大量的技能和专业知识。
答案2
情况就是这样仅有的如果 Linux核心本身已更新。所有其他类型的更新均直接应用。内核在运行时无法替换,因此需要重新启动。
应该进行内核更新很少在定期更新期间,通常仅在升级周期内进行(12.04-12.10 等)
您可以选择不重新启动,它将继续使用旧的内核。
编辑:内核热交换从理论上来说可以做到这一点来防止重启,但这看起来并不是一件容易的事。