为了安全,*** 需要重启系统 *** 有多紧急?

kra*_*r65 57 linux reboot

为了学习一些服务器管理知识,我设置了一个简单的 Ubuntu 14.04 服务器,我在该服务器上运行了一个个人网站。我已将其设置为自动安装安全更新,但忽略了其他更新。这似乎工作得很好。有时我在登录服务器时收到一条消息(使用 ssh)说:

*** System restart required ***
Run Code Online (Sandbox Code Playgroud)

发生这种情况的时候,我简单地重新启动了 Ubuntu,一切都很好。这没关系,因为它是一个简单的个人网站。不过,我想知道的是,这对于应该在 99.9999etc% 的时间内运行的网络服务器是如何工作的?他们是否只是不重新启动并冒着安全被破坏的风险,因为没有安装安全更新(我无法想象)?还是他们认为停机是理所当然的(我也无法想象)?

如果这是一个非常重要的生产服务器,我想保持和运行,我应该如何处理?欢迎所有提示!

[编辑] 我知道我可以cat /var/run/reboot-required.pkgs列出导致重启的软件包。该命令目前产生以下结果:

linux-image-3.13.0-36-generic
linux-base
dbus
linux-image-extra-3.13.0-36-generic
linux-base
Run Code Online (Sandbox Code Playgroud)

但是如果我不重新启动,我怎么知道更新是否是我是否有严重安全漏洞的小事?

[EDIT2] 好的,我现在将我发现有用的命令合并为一个:

xargs aptitude changelog < /var/run/reboot-required.pkgs | grep urgency=high
Run Code Online (Sandbox Code Playgroud)

如果这没有输出任何内容,则似乎没有高度紧急的安全问题。

不过low,最后一个问题是:是、mediumhigh唯一的紧急可能性,还是有更多类似的可能性,例如criticalextremelyimportant

Uwe*_*nus 48

这不是简单的答案,因为它取决于所做的更新。如果内核有严重的安全问题,最好尽快重启。如果内核只有很小的修复,那么重启可能会被推迟。

如果您保证可用性 > 99.9%,那么您几乎总是拥有一个集群系统,您可以在其中一个接一个地重新启动节点,而不会中断服务。

因此,您重新启动第一个系统并将其重新连接到集群。然后第二个等等。那么该服务将永远不可用。

  • @kramer65 运行 `aptitude changelog &lt;package&gt;`,这是一个示例输出:http://paste.ubuntu.com/8410798/(这是在 Debian 系统上,不是 Ubuntu,但同样适用于 Ubuntu。) (8认同)
  • 感谢这里的所有帮助。我终于将我在这里学到的所有东西合并到一个命令中:`xargs aptitude changelog &lt; /var/run/reboot-required.pkgs | grep urgency=high`(也将其添加到最初的问题中),它提供了一些关于哪些软件包具有高度紧急补丁的输出。之后,当然可以检查单个包装。感谢一百万的所有答案和想法! (6认同)
  • 感谢您的回答。我在最初的问题中添加了一小部分;我知道我可以执行 `cat /var/run/reboot-required.pkgs` 来获取需要重启的包。但是我怎么知道这些只是小修复,还是一个严重的安全漏洞? (2认同)
  • @kramer65 每个包都有一个更新日志。例如,可以在 [here](http://changelogs.ubuntu.com/changelogs/pool/main/l/linux-meta/linux-meta_3.2.0.69.82/changelog) 中找到内核的更改日志。 (2认同)
  • 好的,那么由系统管理员(即:在这种情况下我自己)来确定这些更改是否重要?我的知识太少,无法确定 Linux 内核的这一点,更不用说所有无数其他软件包了。是否没有中心位置可以让我确定是否绝对需要更新以确保安全? (2认同)