“rebo​​ot”或“shutdown -r now”:什么重启命令更安全?

dan*_*dan 57 linux redhat service init.d shutdown

我们的组织中有大约 500 台 RedHat Linux 机器。

在我们安装了应用程序和服务的所有机器上/etc/init.d,以及 oracle RAC 服务器。我们打算在所有机器上执行 yum 更新,然后重新启动。

所以我想知道什么命令更安全:

reboot
Run Code Online (Sandbox Code Playgroud)

或者

shutdown -r now
Run Code Online (Sandbox Code Playgroud)

Mik*_* T. 88

关闭更可取,因为它允许您指定剧烈操作的原因——您应该始终这样做。该消息将记录在日志中以供后代使用。例如:

shutdown -r now 'Kernel upgrade requires reboot'

您还可以执行预定的重启——通过指定now重启时间以外的其他内容:

shutdown -r 22:00 'Work around kernel memory leak'

然后你的用户会收到定期提醒离开等等——这个过程会更加有序和专业。


eww*_*ite 56

对于Red Hat系统,有没有功能上的差异之间rebootshutdown -r now

做任何对你来说更容易的事情。

  • 但一个让你打字更多,从根本上“更酷”! (14认同)
  • @BurhanKhalid 如果您有随机的人登录到服务器上的 X 会话,那么您可能会遇到比想知道两个命令中哪一个“更安全”更大的问题。 (2认同)

小智 14

使用reboot更安全。

使用reboot您的意图是明确的,shutdown -t now如果您在控制有限的远程服务器上使用可能会导致一些头痛的其他内容,则无法将其错误输入。

  • 恕我直言,被低估的答案。很多时候,我们忘记了明确意图的重要性,以及从长远来看它可以节省多少时间和脏话! (6认同)

Jan*_*nen 13

如果你看看,在RHEL 7都/sbin/shutdown/sbin/reboot实际上只是符号连接systemd的systemctl命令。所以,随心所欲地使用。正如 ewwhite 所说,没有功能差异,即使在尚未使用 systemd 的早期 RHEL 版本中也没有。

  • 我不觉得这个论点很有说服力:很明显 `/sbin/shutdown` 和 `/sbin/reboot` 在所有情况下*不*表现相同(特别是:`/sbin/shutdown` 不会重启默认情况下!),所以如果它们被符号链接到同一个可执行文件,那么该可执行文件必须检查它的 `ARGV[0]` 并相应地调整它的行为。虽然这肯定会降低*无意*差异的风险,但这并不是令人信服的证据,表明不存在 OP 可能想要了解的*故意*功能差异。 (13认同)
  • 当心假设符号链接意味着等效,特别是如果涉及不同的名称。 (3认同)