为什么 Ubuntu 需要重启才能完成更新?

Rol*_*and 17 linux ubuntu

我听说 Linux 机器可以运行数月而无需重新启动。为什么 Ubuntu 在安装更新后会说“需要重新启动才能完成更新...”?

Linux 和 UNIX 用户吹嘘自老乔治·布什 (George Bush Sr.) 担任总统以来,他们还没有重新启动系统。

http://www.tested.com/news/feature/1141-how-often-do-you-really-need-to-reboot-your-pc/

dar*_*nir 14

你读的是真的。大多数管理员会吹嘘他们机器的正常运行时间。可能是几天、几个月甚至几年。
但是,您需要知道的是,这些机器不是您日常的桌面系统。它们是专门的服务器机器。

关于他们的第一件事,他们很少运行 X11。大多数服务器系统通常只在终端上。因此,在 XServer 上升级并不重要。
其次,正如 Karthik 指出的那样,对 X Server 的更新只需要您重新启动 X,而不是整个机器。所以您的正常运行时间仍然存在。

另一个非常重要的一点是,服务器系统不会更新到最新的内核版本。在 Ubuntu 上,您现在可能使用的是 3.2 版。在我的 Arch 系统上,我使用的是 3.6 版,但是这些系统中的许多系统都吹嘘了很长的正常运行时间,但仍然可能在 2.xx 系列中的某个地方,尽管通过向后移植的补丁完全安全。

此类系统上的所有更新仅就地完成。更新首先在测试机器上进行测试,经过彻底测试以确保没有任何问题,并且不需要重新启动来实现它,然后由管理员升级它们。

你也可以在你的 Ubuntu 系统上做同样的事情。但是然后忘记自动更新。进行一些测试并尝试就地进行更新。甚至内核也可以热插拔。然而,每次成功都需要大量的技能和专业知识。


Kar*_*k T 9

当 linux内核本身更新时才会出现这种情况。所有其他类型的更新都直接应用。内核在运行时无法更换,因此需要重新启动。

内核更新在定期更新期间应该很少发生,通常只在升级周期(12.04-12.10 等)期间进行

你可以选择不重启,它会继续使用旧的内核。

编辑理论上可以进行内核热交换以防止重新启动,但它看起来并不是微不足道的。

  • xserver 技术上不需要重新启动,您只需重新启动 xserver :)。它只是一个更简单的指令来说明重启机器。在许多情况下,注销登录也可能就足够了。 (7认同)
  • @DanDascalescu 不应该,如果您问我,更新 openssl/libssl 时不需要重新启动,只要您确保重新启动所有使用 openssl/libssl 的程序/服务。我相信该软件包的维护者只是采取了简单的方法并通过要求重新启动而不是检查所有正在运行的进程,检查哪些使用 libssl 然后进行猜测将进程映射到 upstart 和/或 sysvinit 服务名称来安全地玩. (3认同)
  • 我刚刚做了一个更新,它更新了一些 xserver 文件。然而,操作系统表示需要重新启动才能完成更新。另外,我确信我在某处读到过 Linux 操作系统即使在内核更新后也可以继续运行而无需重新启动。 (2认同)