Gibt es gute Gründe, das System anzuhalten, ohne die Stromversorgung zu unterbrechen?

13

Gibt es gute Gründe, ein System anzuhalten, ohne die Hardware auszuschalten? Ich meine, den haltBefehl ohne den -pSchalter zu benutzen .

Ich konnte im Internet keine Antwort finden.

Zafan
quelle
1
Ein fehlerhafter / nicht ordnungsgemäß implementierter / nicht unterstützter ACPI könnte ein Grund sein.
Ƭᴇcʜιᴇ007
Ich denke, das OP bedeutet, warum ein Befehl wie haltimplementiert ist, wenn er nie ohne verwendet wird -p. Warum sollte jemand ein System anhalten, wenn er nicht beabsichtigt, den Strom abzuschalten? Warum also nicht implementieren halt, um die Stromversorgung abzuschalten?
Kinnectus
1
@BigChris Für "Warum" würde ich davon ausgehen, dass "Halt" erstellt wurde, bevor ACPI eingeführt wurde / allgemein verfügbar war, und die Standardaktion "Halt" aus Gründen der Abwärtskompatibilität wahrscheinlich unverändert gelassen wurde.
Ƭᴇcʜιᴇ007

Antworten:

13

Gibt es gute Gründe, ein System anzuhalten, ohne die Hardware auszuschalten?

Ja. Möglicherweise möchte ich die Reset-Taste drücken und neu starten, anstatt die Ein- / Aus-Taste zu drücken, um die Stromversorgung auszuschalten.

Ich meine, den haltBefehl ohne den -pSchalter zu benutzen .

In 4.2BSD, der haltBefehl nicht über einen -pSchalter. Dies deutet hier auf die größere Antwort hin: Nicht jede Hardware funktioniert wie ein PC; Selbst PCs haben nicht immer so funktioniert wie jetzt.

Es war (und ist manchmal immer noch nicht der Fall), dass Zentraleinheiten die Kontrolle über die Stromversorgung haben oder das Mainboard und die Peripheriegeräte vollständig auf die gleichen Zustände wie beim Einschalten zurücksetzen können. Bei einigen Systemen war der zweite Teil von "Herunterfahren und Ausschalten" oder "Herunterfahren und Zurücksetzen" eine physische Aktion , die vom Bediener ausgeführt wurde, indem er einen (richtigen) Netzschalter oder einen Rücksetzknopf auf der Vorderseite der Maschine drückte. Keine Anzahl von Befehlszeilenschaltern konnte dies erreichen. Auf der Softwareseite wurde die Maschine einfach heruntergefahren und dann in einer Endlosschleife gedreht, ohne etwas zu tun. (Einige Computer beenden ein ROM-Überwachungsprogramm.)

Moderne BSDs stellen fest, dass haltdie -pOption ihres Befehls die Stromversorgung nur "wenn möglich" (FreeBSD) ausschaltet und dies nicht tut, wenn "das System das Herunterfahren der Software nicht unterstützt" (NetBSD). Der SCO UNIX- haltsysBefehl (das System 5-Äquivalent für halt) hatte ebenfalls keine -pOption, und auf seiner Handbuchseite wird erklärt, dass das System angehalten wird, damit der Bediener es dann auf andere Weise ausschalten oder neu starten kann.

Heutzutage gibt es diejenigen, die wie die Systemleute behaupten, dass der haltBefehl tatsächlich veraltet ist. Sie würden behaupten , dass man wirklich nicht zu verwenden , hat haltBefehl überhaupt und dass es existiert in Systemen „für die Kompatibilität nur“ (wie die systemd Manpages es haben). Dies wirft eher die Frage auf, welche Optionen ihm gegeben werden sollen ( systemctl haltohne eine -pOption zu haben).

Es zeigt auch die Position, in der wir uns jetzt befinden, da dieser Befehlssatz so mit Kompatibilitätsoptionen ausgestattet ist, dass Benutzer Computer widersprüchliche Anweisungen wie reboot --haltund erteilen können poweroff --reboot. Ich bemerkte dies in der Handbuchseite für den Schmaus halt , fasthalt, reboot, fastboot, und poweroffBefehle. ☺

Weiterführende Literatur

  • halt. 1982-05-11. 4.2BSD Handbuch.
  • haltsys. 2005-06-03. SCO OpenServer Handbuch.
  • Jonathan de Boyne Pollard (2018). haltsys. Nosh Guide . Software.
  • Jonathan de Boyne Pollard (2018). fastpowercycle. Nosh Guide . Software.
  • Jonathan de Boyne Pollard (2018). shutdown. Nosh Guide . Software.
  • Lennart Poettering (07.10.2013). halt. systemd Handbuchseiten. freedesktop.org.
JdeBP
quelle
2
> "Ich möchte möglicherweise die Reset-Taste drücken und neu starten, anstatt die Ein- / Aus-Taste zu drücken, um die Stromversorgung auszuschalten." Was ist der Grund dafür? Um den Verschleiß der Hardware zu reduzieren? Warum nicht einfach einen Neustart statt eines Stopps durchführen?
TheKarateKid