GNU/Linux >> LINUX-Kenntnisse >  >> Linux

3 Befehle zum Neustarten von Linux (plus 4 weitere Möglichkeiten, dies sicher zu tun)

Linux ist in der Lage, nicht Wochen, sondern Jahre ohne Neustart zu laufen. In einigen Branchen tut Linux genau das, dank Fortschritten wie kpatch und kgraph .

Für Laptop- und Desktop-Benutzer ist diese Metrik jedoch etwas extrem. Auch wenn es keine alltägliche Realität ist, ist es zumindest eine wöchentliche Realität, dass Sie manchmal einen guten Grund haben, Ihren Computer neu zu starten. Und für ein System, das nicht oft neu gestartet werden muss, bietet Linux viele Möglichkeiten, wann es Zeit für einen Neuanfang ist.

Verstehen Sie Ihre Optionen

Bevor Sie fortfahren, ein Hinweis zum Neustart. Der Neustart ist ein einzigartiger Vorgang auf jedem Betriebssystem. Selbst innerhalb von POSIX-Systemen können sich die Befehle zum Herunterfahren und Neustarten aufgrund unterschiedlicher Initialisierungssysteme oder Befehlsdesigns unterschiedlich verhalten.

Trotz dieses Faktors sind zwei Konzepte von entscheidender Bedeutung. Erstens ist ein Neustart auf einem POSIX-System selten erforderlich. Ihr Linux-Rechner kann wochen- oder monatelang ohne Neustart betrieben werden, wenn Sie dies benötigen. Es ist nicht erforderlich, Ihren Computer mit einem Neustart „aufzufrischen“, es sei denn, ein Software-Installer oder -Updater hat dies ausdrücklich empfohlen. Andererseits schadet ein Neustart auch nicht, also liegt es an Ihnen.

Zweitens soll ein Neustart ein benutzerfreundlicher Prozess sein, der Zeit zum Beenden von Programmen, zum Speichern von Dateien, zum Entfernen temporärer Dateien, zum Aktualisieren von Dateisystem-Journalen und so weiter gibt. Starten Sie nach Möglichkeit mit den vorgesehenen Schnittstellen neu, sei es in einer GUI oder einem Terminal. Wenn Sie Ihren Computer zum Herunterfahren oder Neustarten zwingen, riskieren Sie, nicht gespeicherte und sogar kürzlich gespeicherte Daten zu verlieren und sogar wichtige Systeminformationen zu beschädigen. Sie sollten Ihren Computer nur dann zwangsweise ausschalten, wenn es keine andere Möglichkeit gibt.

Klicken Sie auf die Schaltfläche

Der erste Weg, Linux neu zu starten oder herunterzufahren, ist der gebräuchlichste und für die meisten Desktop-Benutzer unabhängig von ihrem Betriebssystem am intuitivsten:Es ist der Netzschalter in der GUI. Da das Herunterfahren und Neustarten übliche Aufgaben auf einer Workstation sind, finden Sie den Netzschalter (normalerweise mit Neustart- und Herunterfahroptionen) normalerweise an einigen verschiedenen Stellen. Auf dem GNOME-Desktop befindet es sich in der Taskleiste: 

Es befindet sich auch in den Aktivitäten von GNOME Menü:

Auf dem KDE-Desktop finden Sie die Ein/Aus-Schaltflächen in den Anwendungen Menü:

Sie können auch auf die KDE-Energiesteuerung zugreifen, indem Sie mit der rechten Maustaste auf den Desktop klicken und Verlassen auswählen Option, die das Fenster öffnet, das Sie hier sehen:

Andere Desktops bieten Variationen dieser Themen, aber die allgemeine Idee ist die gleiche:Verwenden Sie Ihre Maus, um den Netzschalter zu finden, und klicken Sie dann darauf. Möglicherweise müssen Sie zwischen Neustart und Herunterfahren wählen, aber am Ende ist das Ergebnis fast identisch:Prozesse werden angehalten, nett, damit Daten gespeichert und temporäre Dateien entfernt werden, dann werden Daten auf Laufwerke und dann auf das System synchronisiert ist ausgeschaltet.

Drücken Sie die physische Taste

Die meisten Computer haben einen physischen Netzschalter. Wenn Sie diese Taste drücken, zeigt Ihr Linux-Desktop möglicherweise ein Power-Menü mit Optionen zum Herunterfahren oder Neustarten an. Diese Funktion wird vom ACPI-Subsystem (Advanced Configuration and Power Interface) bereitgestellt, das mit der Firmware Ihres Motherboards kommuniziert, um den Status Ihres Computers zu steuern.

ACPI ist wichtig, aber im Umfang begrenzt, sodass aus Sicht des Benutzers nicht viel zu konfigurieren ist. Normalerweise werden ACPI-Optionen allgemein als Power bezeichnet und sind auf einen vernünftigen Standardwert eingestellt. Wenn Sie diese Einrichtung ändern möchten, können Sie dies in Ihren Systemeinstellungen tun.

Öffnen Sie in GNOME das Taskleistenmenü und wählen Sie Aktivitäten aus und dann Einstellungen. Wählen Sie als Nächstes die Leistung aus Kategorie in der linken Spalte, die folgendes Menü öffnet:

Im Suspend &Power Button Wählen Sie im Abschnitt aus, was der physische Netzschalter tun soll.

Der Prozess ist auf allen Desktops ähnlich. Bei KDE zum Beispiel die Energieverwaltung Panel in den Systemeinstellungen enthält eine Option für die Schaltflächenereignisbehandlung.

Nachdem Sie konfiguriert haben, wie das Tastenereignis gehandhabt wird, folgt das Drücken des physischen Netzschalters Ihres Computers der von Ihnen gewählten Option. Abhängig von Ihrem Computeranbieter (oder Teileanbieter, wenn Sie Ihren eigenen bauen), kann ein Tastendruck ein leichtes Antippen sein oder ein etwas längeres Drücken erfordern, sodass Sie möglicherweise einige Tests durchführen müssen, bevor Sie den Dreh raus haben .

Hüten Sie sich jedoch vor zu langem Drücken, da dies Ihren Computer ohne Vorwarnung herunterfahren kann.

Führen Sie den systemctl-Befehl aus

Wenn Sie mehr in einem Terminal als in einem GUI-Desktop arbeiten, ziehen Sie es vielleicht vor, mit einem Befehl neu zu starten. Im Großen und Ganzen sind das Neustarten und Herunterfahren Prozesse der init system – die Abfolge von Programmen, die einen Computer hoch- oder herunterfahren, nachdem ein Stromsignal (entweder ein- oder ausgeschaltet) empfangen wurde.

Bei den meisten modernen Linux-Distributionen systemd ist das Init-System, sodass sowohl das Neustarten als auch das Herunterfahren über systemd durchgeführt werden kann Benutzeroberfläche, systemctl . Die systemctl Der Befehl akzeptiert neben vielen anderen Optionen halt (hält die Festplattenaktivität an, unterbricht aber nicht die Stromversorgung) Neustart (stoppt die Festplattenaktivität und sendet ein Reset-Signal an das Motherboard) und poweroff (stoppt die Festplattenaktivität und unterbricht dann die Stromversorgung). Diese Befehle entsprechen größtenteils dem Starten der gleichnamigen Zieldatei.

Um beispielsweise einen Neustart auszulösen:

$ sudo systemctl start reboot.target

Führen Sie den Shutdown-Befehl aus

Traditionelles UNIX, vor den Tagen von systemd (und für einige Linux-Distributionen wie Slackware ist das jetzt ) gab es spezielle Befehle zum Stoppen eines Systems. Die Abschaltung Der Befehl zum Beispiel kann Ihre Maschine herunterfahren, hat aber mehrere Optionen, um genau zu steuern, was das bedeutet.

Dieser Befehl erfordert ein Zeitargument in Minuten, damit shutdown weiß, wann es auszuführen ist. Um sofort neu zu starten, hängen Sie das -r an Flagge:

$ sudo shutdown -r now

Sofort ausschalten:

$ sudo shutdown -P now

Oder Sie können das Ausschalten verwenden Befehl:

$ poweroff

Neustart nach 10 Minuten:

$ sudo shutdown -r 10

Die Abschaltung Befehl ist eine sichere Möglichkeit, Ihren Computer auszuschalten oder neu zu starten, sodass Festplatten synchronisiert und Prozesse beendet werden können. Dieser Befehl verhindert neue Anmeldungen innerhalb der letzten 5 Minuten nach Beginn des Herunterfahrens, was besonders auf Mehrbenutzersystemen nützlich ist.

Auf vielen Systemen ist heute das Herunterfahren Befehl ist eigentlich nur ein Aufruf von systemctl mit der entsprechenden Neustart- oder Abschaltoption.

Führen Sie den Neustartbefehl aus

Der Neustart Der Befehl selbst ist im Grunde eine Abkürzung zu shutdown -r now . Von einem Terminal aus ist dies der einfachste und schnellste Neustartbefehl:

$ sudo reboot

Wenn Ihr System am Herunterfahren gehindert wird (möglicherweise aufgrund eines außer Kontrolle geratenen Prozesses), können Sie --force verwenden -Flag, um das System trotzdem herunterzufahren. Diese Option überspringt jedoch den eigentlichen Herunterfahrvorgang, der bei laufenden Prozessen abrupt sein kann, und sollte daher nur beim Herunterfahren verwendet werden Befehl blockiert das Herunterfahren.

Führen Sie auf vielen Systemen einen Neustart durch ist eigentlich ein Aufruf von systemctl mit der entsprechenden Neustart- oder Abschaltoption.

Initiieren

Auf Linux-Distributionen ohne systemd , gibt es bis zu 7 Runlevel, die Ihr Computer versteht. Verschiedene Distributionen können jeden Modus eindeutig zuweisen, aber im Allgemeinen leitet 0 einen Haltezustand und 6 einen Neustart ein (die Zahlen dazwischen bezeichnen Zustände wie Einzelbenutzermodus, Mehrbenutzermodus, eine GUI-Eingabeaufforderung und eine Texteingabeaufforderung). .

Diese Modi sind in /etc/inittab definiert auf Systemen ohne systemd . Bei Distributionen mit systemd als Init-System die /etc/inittab Datei fehlt oder ist nur ein Platzhalter.

Die telinit command ist das Front-End für Ihr Init-System. Wenn Sie systemd verwenden , dann ist dieser Befehl ein Link zu systemctl mit den entsprechenden Optionen.

So schalten Sie Ihren Computer aus, indem Sie ihn in Runlevel 0 versetzen:

$ sudo telinit 0

Um mit der gleichen Methode neu zu starten:

$ sudo telinit 6

Wie unsicher dieser Befehl für Ihre Daten ist, hängt ganz von Ihrer Init-Konfiguration ab. Die meisten Distributionen versuchen, Sie davor zu schützen, den Stecker (oder das digitale Äquivalent davon) zu ziehen, indem sie Runlevels benutzerfreundlichen Befehlen zuordnen.

Sie können selbst sehen, was auf jedem Runlevel passiert, indem Sie die Init-Skripte lesen, die Sie in /etc/rc.d finden oder /etc/init.d , oder durch Lesen der systemd Ziele in /lib/systemd/system/ .

Brute-Force anwenden

Bisher habe ich alles richtig abgedeckt Möglichkeiten, Ihren Linux-Computer neu zu starten oder herunterzufahren. Um gründlich zu sein, füge ich hier zusätzliche Methoden zum Herunterfahren eines Linux-Computers hinzu, aber auf keinen Fall werden diese Methoden empfohlen. Sie sind nicht als Befehl zum täglichen Neustart oder Herunterfahren gedacht (reboot und Herunterfahren existieren dafür), aber sie sind gültige Mittel, um die Aufgabe zu erfüllen.

Wenn Sie diese Methoden ausprobieren, probieren Sie sie in einer virtuellen Maschine aus. Verwenden Sie sie andernfalls nur in Notfällen.

Prozess

Eine Stufe niedriger als das Init-System ist das /proc Dateisystem, das eine virtuelle Darstellung von fast allem ist, was auf Ihrem Computer passiert. Beispielsweise können Sie Ihre CPUs so anzeigen, als wären sie Textdateien (mit cat /proc/cpuinfo ), sehen Sie sich an, wie viel Energie der Akku Ihres Laptops noch hat, oder starten Sie nach einiger Zeit Ihr System neu.

Im Linux-Kernel gibt es eine Vorkehrung für Systemanfragen (Sysrq auf den meisten Tastaturen). Mit diesem Subsystem können Sie über Tastenkombinationen direkt kommunizieren, idealerweise unabhängig davon, in welchem ​​Zustand sich Ihr Rechner befindet; Auf manchen Tastaturen wird es kompliziert, weil Sysrq Taste kann eine spezielle Funktionstaste sein, für deren Zugriff eine andere Taste erforderlich ist (z. B. Fn auf vielen Laptops).

Eine weniger wahrscheinlich fehlschlagende Option ist die Verwendung von echo um Informationen in /proc einzufügen , manuell. Stellen Sie zunächst sicher, dass das Sysrq-System aktiviert ist:

$ sudo echo 1 > /proc/sys/kernel/sysrq

Zum Neustarten können Sie entweder Alt verwenden +Sysrq +B oder geben Sie ein:

$ sudo echo b > /proc/sysrq-trigger

Diese Methode ist kein vernünftiger Weg, um Ihren Computer regelmäßig neu zu starten, aber es erledigt die Arbeit im Handumdrehen.

Sysctl

Kernelparameter können während der Laufzeit mit sysctl verwaltet werden . Es gibt viele Kernel-Parameter, und Sie können sie alle mit sysctl --all sehen . Höchstwahrscheinlich bedeuten sie Ihnen nicht viel, bis Sie wissen, wonach Sie suchen müssen, und in diesem Fall suchen Sie nach kernel.panic .

Sie können Kernelparameter mit dem -–Wert abfragen Möglichkeit:

$ sudo sysctl --value kernel.panic

Wenn Sie eine 0 zurückbekommen, hat der Kernel, den Sie ausführen, zumindest standardmäßig keine spezielle Einstellung, um bei einer Kernel-Panik neu zu starten. Diese Situation ist ziemlich typisch, da ein sofortiger Neustart nach einem katastrophalen Systemabsturz es schwierig macht, die Ursache des Absturzes zu diagnostizieren. Andererseits könnten Systeme, die auf jeden Fall eingeschaltet bleiben müssen, von einem automatischen Neustart nach einem Kernel-Fehler profitieren, daher ist es eine Option, die in einigen Fällen aktiviert wird.

Sie können diese Funktion als Experiment aktivieren (wenn Sie mitmachen, versuchen Sie es in einer virtuellen Maschine und nicht auf Ihrem tatsächlichen Computer):

$ sudo sysctl kernel.reboot=1

Sollte Ihr Computer jetzt eine Kernel-Panik erleben, wird er neu gestartet, anstatt geduldig darauf zu warten, dass Sie das Problem diagnostizieren. Sie können dies testen, indem Sie mit sysrq einen katastrophalen Absturz simulieren . Stellen Sie zunächst sicher, dass Sysrq aktiviert ist:

$ sudo echo 1 > /proc/sys/kernel/sysrq

Und dann eine Kernel Panic simulieren:

$ sudo echo c > /proc/sysrq-trigger

Ihr Computer wird sofort neu gestartet.

Verantwortlicher Neustart

Wenn Sie alle diese Optionen kennen, bedeutet das nicht, dass Sie sie alle verwenden sollten. Denken Sie sorgfältig darüber nach, was Sie erreichen möchten und was der von Ihnen ausgewählte Befehl tun wird. Sie wollen Ihr System nicht beschädigen, indem Sie rücksichtslos vorgehen. Dafür sind virtuelle Maschinen da. Mit so vielen Optionen sind Sie jedoch für die meisten Situationen gerüstet.

Habe ich Ihre Lieblingsmethode zum Neustarten oder Herunterfahren eines Systems ausgelassen? Listen Sie in den Kommentaren auf, was ich verpasst habe!


Linux
  1. 5 Linux-Befehle zur Fehlerbehebung im Netzwerk

  2. Meine 8 beliebtesten praktischen Linux-Befehle

  3. A bis Z Linux-Befehle

  4. Linux-Echo-Befehl

  5. So verwenden Sie Cat, Tac, More, Less – Linux-Befehle

Möglichkeiten zum Auflisten aller verfügbaren Befehle und Aliase in Linux

Von Linux-Systemadministratoren häufig verwendete Linux-Befehle – Teil 5

Fortgeschrittene Linux-Befehle für den Power User

Linux-Neustartbefehl

Befehle zum Neustarten und Herunterfahren von Linux

5 Möglichkeiten, UNIX-/Linux-Befehle (und Shell-Skripte) im Hintergrund auszuführen