当我看到“需要重新启动系统”时,我应该总是重新启动系统吗?

tim*_*son 155 ssh reboot restart

这两个不错的 SE 帖子(1, 2)评论了重新启动一个人的 ubuntu 机器,但它们给我留下了几个问题:

  1. 您实际上如何重新启动(我是初学者并使用 12.04.1 LTS)?
  2. 出现提示时我应该总是重新启动系统吗?
  3. 重新启动系统会影响通过 SSH 访问它还是在执行此操作之前需要考虑任何其他注意事项?

Fli*_*imm 159

出现提示时我应该重新启动吗?

是的你应该。在大多数情况下,安装 Linux 内核更新后需要重新启动。这些更新通常是安全更新,只有在重新启动后才会生效。对 Firefox 等普通应用程序的更新在您重新启动程序后生效。Firefox 应该会提示您自动执行此操作,但其他程序可能不会,因此请记住这一点。

如何重新启动:

要在 Ubuntu 12.04 中重新启动计算机,请单击屏幕右上角的电源图标,然后选择“关闭...”。在出现的对话框中,应该可以看到“重新启动”按钮。在 Ubuntu 12.10 中,重启选项直接出现在电源菜单中。

要从命令行重新启动,请运行以下命令:

$ sudo reboot
Run Code Online (Sandbox Code Playgroud)

重启的坏处:

总的来说,重启是一个非常安全的操作,我不会认为它有任何不安全的地方。当然,当您重新启动计算机时,您会丢失 RAM 中的所有信息,因此请确保在关闭计算机之前保存所有打开的文档和文件。当您重新启动时,您的计算机当然会离线几分钟。如果您正在运行服务器,它将关闭几分钟。如果您有一个打开的 SSH 会话,它将被终止。

  • 补充一下“缺点”:如果您有任何进程正在运行,例如内存缓存、MySQL、已挂载的磁盘等,这些进程在重启后可能不会返回(取决于它们的配置方式)。此外,最好在重新启动之前手动关闭它们。 (6认同)
  • @Noam:回答你的第一点,这是真的,但是当你在那里重新启动机器而不是内核在半夜发生恐慌时,你难道不想发现吗?对于您的第二点,为什么最好手动关闭它们?无论哪种方式都是相同的过程。 (2认同)

Fra*_*urt 61

出现提示时我应该总是重新启动系统吗?

您可以查看需要重新启动的软件包列表:

more /var/run/reboot-required.pkgs
Run Code Online (Sandbox Code Playgroud)

根据列表,您可以决定是否值得重新启动。

输出示例:

user@server:~$ more /var/run/reboot-required.pkgs
libssl1.0.0
linux-image-4.4.0-62-generic
linux-base
linux-base
linux-image-4.4.0-63-generic
linux-base
linux-base
linux-image-4.4.0-64-generic
linux-base
linux-base
network-manager
linux-image-4.4.0-66-generic
linux-base
linux-base
linux-base
linux-base
linux-base
linux-base
linux-base
network-manager
Run Code Online (Sandbox Code Playgroud)

(答案在 Ubuntu 14.04 LTS x64 和 Ubuntu 16.04 LTS x64 上测试过)

  • 您是否有资源来确定哪些软件包必须重新启动(即重要的安全性)?我不知道看这个列表。 (2认同)

Osa*_*awy 10

  1. 如何重新启动:

    $ sudo reboot
    
    Run Code Online (Sandbox Code Playgroud)

    或者

    $ sudo init 6
    
    Run Code Online (Sandbox Code Playgroud)
  2. 是的,因为它很可能是安全更新。

  3. 重启后不会影响 ssh 连接。


Use*_*ser 5

我没有看到其他人提到的另一个警告:

如果您通过 SSH 连接的盒子是通过 wifi 连接的,那么当您重新启动时,您可能无法访问 wifi 网络,直到用户在远程计算机上实际登录,这意味着 SSH 将失败,因为盒子将无法连接到网络。

为了避免这种情况,您必须在远程计算机上提前配置 wifi 以供所有用户使用。单击系统托盘中的网络图标,然后选择“编辑连接..”,选择您的 WiFi 网络并单击编辑按钮,然后确保选中“自动连接”和“对所有用户可用”复选框。

您显然也可以通过弄乱 /etc/network/interfaces 和 wpa_supplicant 来解决这个问题,但我发现这条路比简单地选中该框要复杂得多。

旁注:对我来说,在进行上述更改之前,从 Windows 上的 WSL 连接到 ubuntu 盒子会出现“资源暂时不可用”。谷歌搜索会让你陷入可能的 WSL bug 的困境,但对我来说,问题很简单,直到有人登录后 wifi 才会连接。应用上述修复解决了这个问题。


Gau*_*rma 2

始终尝试在 ubuntu 更新后重新启动电脑,安装驱动程序和一些想要重新启动操作系统(ubuntu)的应用程序。

当安装新的更新或安装驱动程序时,他们需要重新启动操作系统以获得工作性能和正确使用。

普通应用程序或软件包安装后不需要重新启动操作系统。