Frage "Reboot" oder "shutdown -r now": Welcher Neustartbefehl ist sicherer?


Wir haben in unserer Organisation rund ~ 500 RedHat Linux Maschinen.

Auf allen Maschinen installierten wir Anwendungen und Dienste unter /etc/init.dund Oracle RAC-Server. Wir beabsichtigen, yum Updates auf allen Rechnern durchzuführen und danach einen Neustart durchzuführen.

Also habe ich mich gefragt, welcher Befehl sicherer ist:

reboot

oder

shutdown -r now

41
2018-06-30 13:07


Ursprung


Mögliches Duplikat von: Was ist der Unterschied zwischen reboot, init 6 und shutdown -r jetzt? - Henrik Pingel
wir haben alle Arten - als redhat 4,5,6,7 - dandan
Lassen Sie uns zurückspulen: Warum denken Sie, könnte es einen Unterschied in der Sicherheit geben? - underscore_d
@underscore_d: Es ist nicht unvernünftig zu denken, dass man ein "internal-use-only" -Befehl sein könnte, der nicht alle die gleichen Schritte zum sauberen Herunterfahren ausführt. Z.B. vielleicht benutzt man den anderen, nachdem er anfängliche Schritte zum sauberen Abschalten durchgeführt hat. Natürlich erklärt die Manpage das rebootist nur ein Legacy-Befehl und existiert nur für Rückwärtskompatibilität. - Peter Cordes
@ knowhy Eine Frage kann kein Duplikat einer Frage auf einem sein anders Seite? ˅.. - Insane


Antworten:


Für Red Hat-Systeme, Es gibt keinen funktionalen Unterschied zwischen reboot und shutdown -r now.

Mach, was dir leichter fällt.


48
2018-06-30 13:10



Aber man lässt dich mehr tippen und ist grundsätzlich "cooler"! - Insane
Der eine erfordert einen Super-Benutzerzugriff, der andere kann von einem beliebigen Benutzer (sofern nicht eingeschränkt) von einer X-Sitzung ausgeführt werden. - Burhan Khalid
@BurhanKhalid Wenn Sie zufällig Menschen haben in X-Sitzungen auf Servern anmelden, dann könnten Sie größere Probleme haben als die von zwei Befehle fragen, ist „sicherer“. - α CVn
Zumindest auf Debian (obwohl ich bereitwillig zugeben, ich weiß nicht, über Red Hat, aber Janne Pikkarainen Antwort schlägt es ähnlich sein, aber anders), halt, reboot und poweroff Akzeptiere weder eine Grundnachricht noch eine Zeit, wie Mikhail T. erklärt hat. Ich denke, ich würde ein Werkzeug als etwas betrachten, das ein anderer nicht als "funktionalen Unterschied" betrachtet. - α CVn


Das Herunterfahren ist vorzuziehen, weil Sie damit die Option angeben können Grund für die drastische Aktion - etwas, was du immer tun solltest. Die Nachricht wird in dem / den Protokoll (en) für die Nachwelt aufgezeichnet. Zum Beispiel:

shutdown -r now 'Kernel upgrade requires reboot'

Sie können auch ein geplant Neustart - durch Angabe von etwas anderem als now als Neustartzeit:

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

Dann erhalten Ihre Benutzer regelmäßige Erinnerungen, um auszusteigen und so weiter - der Prozess wird geordneter und professioneller.


81
2018-06-30 17:05





Wenn Sie schauen, in RHEL 7 beide /sbin/shutdown und /sbin/reboot sind eigentlich nur symbolische Links zu Systemd's systemctl Befehl. Also, benutze was du willst. Kein funktioneller Unterschied, wie Ewwhite gesagt hat, nicht einmal in früheren RHEL-Releases, die systemd noch nicht benutzt haben.


13
2018-06-30 13:17



Ich finde dieses Argument nicht sehr überzeugend: Es ist offensichtlich, dass /sbin/shutdown und /sbin/reboot tun nicht sich in allen Fällen gleich verhalten (insbesondere /sbin/shutdown wird nicht standardmäßig neu gestartet!). Wenn sie also mit der gleichen ausführbaren Datei verknüpft sind, muss diese ausführbare Datei geprüft werden ARGV[0] und sein Verhalten entsprechend anpassen. Dies verringert zwar das Risiko von unbeabsichtigt Unterschiede, es ist kein zwingender Beweis, dass es keine gibt vorsätzlich Funktionsunterschiede, über die das OP wissen möchte. - ruakh
Vorsicht vor der Annahme eines Symlinks bedeutet Äquivalenz, insbesondere wenn unterschiedliche Namen involviert sind. - mckenzm
Ruakh hat Recht - denke einen Augenblick darüber nach reboot ist symlinked zu systemctlkönnen Sie z. B. nicht verwenden. reboot status whatever.service wie du mit letzterem, kannst du? - grawity


Verwenden reboot ist sicherer.

Verwenden reboot Ihre Absicht ist klar und es gibt keine Möglichkeit, sie für etwas anderes zu vertippen shutdown -t now Das kann zu einigen Kopfschmerzen führen, wenn Sie auf einem Remote-Server mit eingeschränkter Kontrolle verwenden.


7
2017-07-04 05:16



IMHO unterschätzte Antwort. Sehr oft vergessen wir, wie wichtig es ist, Absichten klar zu machen und wie viel Zeit und Worte es auf lange Sicht spart! - Eggplant


Für moderne RHEL empfiehlt es sich, den Befehl systemctl zu verwenden wie hier zusammengefasst: [neu] RHEL-Distributionen sollten den neuen Befehl systemctl verwenden, um poweroff / reboot auszugeben. Wie in den Manpages von Neustart und Herunterfahren angegeben, sind sie "ein Legacy-Befehl, der nur für die Kompatibilität verfügbar ist".

Wenn Sie jedoch viele verschiedene Distributionen oder Verteilungen verschiedener Jahrgänge verwenden, bleiben Sie vielleicht bei shutdown -r now 'reason for shutdown'.

Der Hauptgrund zu verwenden reboot wäre es, das Risiko zu vergessen zu vergessen, das -r bei der Verwendung hinzuzufügen shutdown -r auf einem Remote-Computer, was leicht dazu führen könnte, dass man sich nicht erneut anmelden kann und den Remote-Admin (falls verfügbar) verwenden muss, um den Computer neu zu starten.


1
2017-07-17 04:48





Ältere Systeme haben definitiv unterschieden zwischen shutdown und reboot. Letzteres würde Dienste nicht herunterfahren oder notwendigerweise sogar Plattenpuffer synchronisieren. In heterogenen Umgebungen - oder um einen Präzedenzfall zu vermeiden, der in der Zukunft gefährlich sein könnte, wenn man auf andere * ix-Implementierungen stößt - lohnt es sich, in den shutdown Gewohnheit.


0
2017-07-27 23:00