Sind Sie jemals auf Probleme wie Verzögerungen im Linux-Systemterminal und langsames Herunterfahren gestoßen? Diese Probleme wirken sich nicht nur auf das Benutzererlebnis aus, sondern können auch die Arbeitseffizienz und die Systemstabilität beeinträchtigen. In diesem Artikel werden einige Methoden zur Linux-Systemoptimierung vorgestellt, die Ihnen dabei helfen, die Systemleistung zu verbessern und Verzögerungen und Probleme mit langem Herunterfahren zu vermeiden.
Ich hoffe, Sie sind mit den Konzepten von Sigterm und Sigkill ein wenig vertraut.
Wenn Sie ein Linux-System herunterfahren, sendet es ein Beendigungssignal (Sigterm) und fordert den laufenden Prozess höflich auf, anzuhalten. Einige Prozesse entsprechen diesem Verhalten nicht und ignorieren das Beendigungssignal und laufen weiter.
Dies kann zu einer Verzögerung beim Herunterfahren führen, da Ihr System eine vordefinierte Zeitspanne wartet, bis laufende Prozesse gestoppt werden. Nach diesem Zeitraum sendet es ein Kill-Signal, um alle verbleibenden laufenden Prozesse zwangsweise zu stoppen und das System herunterzufahren.
Tatsächlich wird in manchen Fällen auf dem schwarzen Bildschirm eine Meldung wie „Ein Stoppjob wird ausgeführt“ angezeigt.
Wenn Ihr System zu lange ausfällt, können Sie Folgendes tun:
Prüfen Sie, welcher Prozess/Dienst zu lange dauert und ob Sie ihn entfernen oder neu konfigurieren können, damit er ordnungsgemäß ausgeführt wird.
Ändern Sie die Standardwartezeit, bevor das System laufende Prozesse zwangsweise stoppt. (Schneller und nicht eleganter Weg)
Mein Betriebssystem ist Ubuntu mit systemd. Die hier aufgeführten Befehle und Schritte gelten für jede Linux-Distribution, die systemd verwendet (was bei den meisten Distributionen der Fall ist).
Überprüfen Sie, welche Prozesse zu einem langen Herunterfahren von Linux führen können
Wenn Sie herausfinden möchten, wo das Problem liegt, sollten Sie überprüfen, was beim letzten Herunterfahren passiert ist. Verwenden Sie diesen Befehl, um die Kraft von „Ich weiß, was Sie letzten Sommer getan haben“ (ein Wortspiel mit „Ich weiß, was Sie letzten Sommer getan haben“) zu nutzen.
journalctl -rb -1
journalctl können Sie Systemprotokolle lesen. Verwenden Sie die Option -b -1, um die Protokolle für die zuletzt gestartete Sitzung zu filtern. Bei Verwendung der Option -r werden die Protokolle in umgekehrter chronologischer Reihenfolge angezeigt.
Mit anderen Worten: Der Befehl „journalctl -rb -1“ zeigt die Systemprotokolle vor dem letzten Herunterfahren des Linux-Systems an. Hier müssen Sie das Problem des langen Herunterfahrens Ihres Linux-Systems analysieren.
Kein Tagebuch? Das sollten Sie tun
Wenn kein Journalprotokoll vorhanden ist, bestätigen Sie bitte, ob Ihre Distribution systemd verwendet.
Selbst bei einigen Linux-Distributionen, die systemd verwenden, ist die Journalprotokollierung standardmäßig nicht aktiviert.
Bitte bestätigen Sie, ob /var/log/journal existiert. Wenn es nicht existiert, erstellen Sie es:
sudo mkdir /var/log/journal
Sie sollten auch den Inhalt der Datei /etc/systemd/journald.conf überprüfen und sicherstellen, dass der Speicherwert auf „Auto“ oder „Persistent“ eingestellt ist.
Haben Sie in den Protokollen etwas Verdächtiges gesehen? Gibt es einen Prozess/Dienst, der sich nicht stoppen lässt? Wenn ja, prüfen Sie, ob er ohne Nebenwirkungen entfernt werden kann oder ob er neu konfiguriert werden kann. Bitte löschen Sie hier nicht blind Dinge. Sie sollten eine Vorstellung von diesem Prozess haben.
Beschleunigen Sie das Herunterfahren unter Linux, indem Sie das standardmäßige Stopp-Timeout reduzieren (schnelle Lösung)
Die Standardwartezeit für das Herunterfahren ist normalerweise auf 90 Sekunden eingestellt. Nach dieser Zeit wird Ihr System versuchen, das Beenden des Dienstes zu erzwingen.
Wenn Sie möchten, dass Ihr Linux-System schnell herunterfährt, können Sie diese Wartezeit ändern.
Sie finden alle Systemd-Einstellungen in der Konfigurationsdatei unter /etc/systemd/system.conf. In dieser Datei sollten viele Zeilen vorhanden sein, die mit # beginnen. Sie stellen die Standardwerte für jeden Eintrag in der Datei dar.
Bevor Sie beginnen, empfiehlt es sich, eine Kopie der Originaldatei zu erstellen.
sudo cp /etc/systemd/system.conf /etc/systemd/system.conf.orig
Suchen Sie hier nach DefaultTimeoutStopSec. Es kann auf 90 Sekunden eingestellt werden.
#DefaultTimeoutStopSec=90s
Sie müssen diesen Wert auf einen bequemeren Wert ändern, z. B. 5 Sekunden oder 10 Sekunden.
DefaultTimeoutStopSec=5s
Wenn Sie nicht wissen, wie Sie die Konfigurationsdatei im Terminal bearbeiten, können Sie diesen Befehl verwenden, um die Datei zur Bearbeitung im Standardtexteditor des Systems (z. B. Gedit) zu öffnen:
sudo xdg-open /etc/systemd/system.conf
Vergessen Sie nicht, das # vor DefaultTimeoutStopSec zu löschen. Speichern Sie die Datei und starten Sie das System neu.
Dies wird Ihnen helfen, die Verzögerung beim Herunterfahren Ihres Linux-Systems zu reduzieren.
Watchdog-Problem!
Linux verfügt über ein Modul namens Watchdog, das überwacht, ob bestimmte Dienste ausgeführt werden. Es kann so konfiguriert werden, dass das System automatisch neu gestartet wird, wenn es aufgrund eines Softwarefehlers hängt.
Es ist ungewöhnlich, Watchdog auf Desktop-Systemen zu verwenden, da Sie das System manuell herunterfahren oder neu starten können. Es wird häufig auf Remote-Servern verwendet.
Überprüfen Sie zunächst, ob der Watchdog läuft:
ps -af | grep watch*
Wenn Ihr System einen Watchdog ausführt, können Sie den Wert von ShutdownWatchdogSec in der Systemd-Konfigurationsdatei /etc/systemd/system.conf von 10 Minuten auf einen niedrigeren Wert ändern.
Durch die Einleitung dieses Artikels haben Sie bereits einige Methoden zur Optimierung von Linux-Systemen kennengelernt, darunter das Deaktivieren von Diensten, das Anpassen von Kernel-Parametern, das Aktualisieren von Treibern, das Bereinigen von Junk-Dateien usw. Mit diesen Methoden können Sie die Systemleistung verbessern und Probleme wie das Einfrieren des Terminals und langsames Herunterfahren vermeiden. Natürlich sind für unterschiedliche Systeme und Nutzungsszenarien unterschiedliche Optimierungsmethoden erforderlich. In praktischen Anwendungen können Sie je nach Situation die passende Optimierungsstrategie auswählen und diese entsprechend der tatsächlichen Wirkung anpassen.
Das obige ist der detaillierte Inhalt vonDas Terminal friert ein und fährt langsam herunter? Der Leitfaden zur Linux-Systemoptimierung und -beschleunigung ist da!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!