Shutdown (Begriff): Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „ = Shutdown Taking Too Long? Here's How to Investigate and Fix Long Shutdown Time in Linux = '''''Your Linux system is taking too long to shut down? Here are the steps you can take to find out what is causing the delayed shutdown and fix the issue.''''' I hope you are a tad bit familiar with the sigterm and sigkill concept. When you shut down your Linux system, it sends the sigterm and politely asks the running processes to stop. Some processes misbehav…“
 
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''topic''' - Kurzbeschreibung
== Beschreibung ==
== Shutdown untersuchen==
; Herausfinden, der Ursache für ein verzögertes Herunterfahren


= Shutdown Taking Too Long? Here's How to Investigate and Fix Long Shutdown Time in Linux =
Ich hoffe, Sie sind ein wenig mit dem Konzept von [[sigterm]] und [[sigkill]] vertraut.
'''''Your Linux system is taking too long to shut down? Here are the steps you can take to find out what is causing the delayed shutdown and fix the issue.'''''
* Wenn Sie Ihr Linux-System herunterfahren, sendet es den sigterm und bittet die laufenden Prozesse höflich, anzuhalten.
* Einige Prozesse benehmen sich falsch und ignorieren den Sigterm und laufen weiter.


I hope you are a tad bit familiar with the sigterm and sigkill concept.
Dies kann zu einer Verzögerung des Herunterfahrens führen, da Ihr System eine bestimmte Zeit lang auf das Anhalten der laufenden Prozesse wartet.
* Nach Ablauf dieser Zeitspanne sendet es das Kill-Signal, um alle noch laufenden Prozesse zu stoppen und das System herunterzufahren. Ich empfehle die Lektüre von sigterm vs. sigkill, um den Unterschied zu verstehen.
* In manchen Fällen sehen Sie auf dem schwarzen Bildschirm eine Meldung wie "a stop job is running".


When you shut down your Linux system, it sends the sigterm and politely asks the running processes to stop. Some processes misbehave and they ignore the sigterm and keep on running.
; Wenn das System zu lange zum Herunterfahren braucht
* Prüfen, welcher Prozess/Dienst zu lange braucht und ob Sie ihn entfernen oder neu konfigurieren können, damit er sich richtig verhält.
* Ändern der Standardwartezeit, bevor Ihr System die laufenden Prozesse zwangsweise beendet. [Schnelle und schmutzige Lösung]


This could cause a delay to the shutdown process as your system will wait for the running processes to stop for a predefined time period. After this time period, it sends the kill signal to force stop all the remaining running processes and shuts down the system. I recommend reading about sigterm vs sigkill to understand the difference.
Die Befehle und Schritte sollten jede Linux-Distribution gültig, die [[systemd]] verwendet


In fact, in some cases, you would see a message like ‘a stop job is running’ on the black screen.
== Prozesse, die das Herunterfahren verzögern ==
Wenn Sie herausfinden wollen, was los ist, sollten Sie überprüfen, was beim letzten Herunterfahren passiert ist.  


If your system is taking too long in shutting down, you can do the following:
# '''journalctl -rb -1'''


* Check which process/service is taking too long and if you can remove or reconfigure it to behave properly.
Mit dem Befehl journalctl können Sie die Systemprotokolle lesen.
* Change the default waiting period before your system force stops the running processes. [Quick and dirty fix]
* Mit der Option '-b -1' filtern Sie die Protokolle für die letzte Boot-Session.  
* Mit der Option '-r' werden die Protokolle in umgekehrter chronologischer Reihenfolge angezeigt.


I am using Ubuntu here which uses systemd. The commands and steps here are valid for any Linux distribution that uses systemd (most of them do).
Der Befehl 'journalctl -rb -1' zeigt die Systemprotokolle kurz vor dem letzten Herunterfahren Ihres Linux-Systems an.  


== Check which processes are causing long shutdown in Linux ==
Das ist genau das, was Sie brauchen, um das Problem des langen Herunterfahrens in Linux zu analysieren.
If you want to figure out what’s wrong, you should check what happened at the last shutdown. Use this command to get the power of ‘I know what you did last session’ (pun intended):
* Finden Sie etwas Verdächtiges in den Protokollen?
<code>journalctl -rb -1</code>
* Gibt es einen Prozess/Dienst, der sich weigert, anzuhalten?
The journalctl command allows you to read system logs. With options ‘-b -1’ you filter the logs for the last boot session. With option ‘-r’, the logs are shown in reverse chronological order.
* Wenn ja, untersuchen Sie, ob Sie ihn ohne Nebenwirkungen entfernen oder neu konfigurieren können.  
* Bitte entfernen Sie hier nicht einfach blindlings Dinge. Sie sollten Kenntnisse über den Prozess haben.


In other words, the ‘journalctl -rb -1’ command will show the system logs just before your Linux system was shutdown the last time. This is what you need to analyze the long shutdown problem in Linux.
== Beschleunigung des Shutdowns ==
; Standard-Timeout
* Die Standardwartezeit für das Herunterfahren ist normalerweise auf 90 Sekunden eingestellt.  
* Ihr System versucht, die Dienste nach dieser Zeitspanne zwangsweise zu beenden.


Do you find something suspicious in the logs? Is there a process/service refusing to stop? If yes, investigate if you could remove it without side effects or if you could reconfigure it. Don’t go blindly removing stuff here, please. You should have knowledge of the process.
; Standard-Timeout reduzieren
* 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.  
* Diese Datei sollte mit vielen Zeilen gefüllt sein, die mit # beginnen.  
* Sie stellen die Standardwerte der Einträge in der Datei dar.


== Speed up shutdown in Linux by reducing default stop timeout [Quick fix] ==
Bevor Sie irgendetwas tun, ist es eine gute Idee, eine Kopie der Originaldatei zu erstellen.
The default wait period for the shut down is usually set at 90 seconds. Your system tries to force stop the services after this time period.
# '''cp /etc/systemd/system.conf /etc/systemd/system.conf.orig'''


If you want your Linux system to shut down quickly, you can change this waiting period.
Suchen Sie hier nach DefaultTimeoutStopSec
#DefaultTimeoutStopSec=90s


You’ll find all the systemd settings in the config file located at /etc/systemd/system.conf. This file should be filled with lots of line starting with #. They represent the default values of the entries in the file.
Sie müssen diesen Wert auf einen bequemeren Wert wie 5 oder 10 Sekunden ändern.
StandardTimeoutStopSec=5s


Before you do anything, it will be a good idea to make a copy of the original file.
Wenn Sie nicht wissen, wie Sie die Konfigurationsdatei im Terminal bearbeiten können, verwenden Sie diesen Befehl, um die Datei zur Bearbeitung im Standardtexteditor Ihres Systems (wie Gedit) zu öffnen:
<code>sudo cp /etc/systemd/system.conf /etc/systemd/system.conf.orig</code>
  '''# xdg-open /etc/systemd/system.conf'''
Look for DefaultTimeoutStopSec here. It should probably be set to 90 sec.
<code>#DefaultTimeoutStopSec=90s</code>
You have to change this value to something more convenient like 5 or 10 seconds.
<code>DefaultTimeoutStopSec=5s</code>
If you don’t know how to edit the config file in terminal, use this command to open the file for editing in your system’s default text editor (like Gedit):
  <code>sudo xdg-open /etc/systemd/system.conf</code>
Don’t forget to '''remove the # before DefaultTimeoutStopSec'''. Save the file and reboot your system.


This should help you reduce the shutdown delay for your Linux system.
; Hinweis
: Vergessen Sie nicht, das # vor DefaultTimeoutStopSec zu entfernen.  


'''Recommended Read:'''
Speichern Sie die Datei und starten Sie Ihr System neu.


'''Were you able to fix the lengthy shutdown?'''
<noinclude>
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/Shutdown}}


I hope this tutorial helped you in investigating and fixing the long shutdown issue on your system. Do let me know in the comments if you managed to fix it.
==== Dokumentation ====
==== Links ====
===== Projekt =====
===== Weblinks =====
# https://itsfoss.com/long-shutdown-linux/
 
[[Kategorie:Linux/Prozesse]]
</noinclude>

Aktuelle Version vom 28. August 2023, 08:16 Uhr

topic - Kurzbeschreibung

Beschreibung

Shutdown untersuchen

Herausfinden, der Ursache für ein verzögertes Herunterfahren

Ich hoffe, Sie sind ein wenig mit dem Konzept von sigterm und sigkill vertraut.

  • Wenn Sie Ihr Linux-System herunterfahren, sendet es den sigterm und bittet die laufenden Prozesse höflich, anzuhalten.
  • Einige Prozesse benehmen sich falsch und ignorieren den Sigterm und laufen weiter.

Dies kann zu einer Verzögerung des Herunterfahrens führen, da Ihr System eine bestimmte Zeit lang auf das Anhalten der laufenden Prozesse wartet.

  • Nach Ablauf dieser Zeitspanne sendet es das Kill-Signal, um alle noch laufenden Prozesse zu stoppen und das System herunterzufahren. Ich empfehle die Lektüre von sigterm vs. sigkill, um den Unterschied zu verstehen.
  • In manchen Fällen sehen Sie auf dem schwarzen Bildschirm eine Meldung wie "a stop job is running".
Wenn das System zu lange zum Herunterfahren braucht
  • Prüfen, welcher Prozess/Dienst zu lange braucht und ob Sie ihn entfernen oder neu konfigurieren können, damit er sich richtig verhält.
  • Ändern der Standardwartezeit, bevor Ihr System die laufenden Prozesse zwangsweise beendet. [Schnelle und schmutzige Lösung]

Die Befehle und Schritte sollten jede Linux-Distribution gültig, die systemd verwendet

Prozesse, die das Herunterfahren verzögern

Wenn Sie herausfinden wollen, was los ist, sollten Sie überprüfen, was beim letzten Herunterfahren passiert ist.

# journalctl -rb -1

Mit dem Befehl journalctl können Sie die Systemprotokolle lesen.

  • Mit der Option '-b -1' filtern Sie die Protokolle für die letzte Boot-Session.
  • Mit der Option '-r' werden die Protokolle in umgekehrter chronologischer Reihenfolge angezeigt.

Der Befehl 'journalctl -rb -1' zeigt die Systemprotokolle kurz vor dem letzten Herunterfahren Ihres Linux-Systems an.

Das ist genau das, was Sie brauchen, um das Problem des langen Herunterfahrens in Linux zu analysieren.

  • Finden Sie etwas Verdächtiges in den Protokollen?
  • Gibt es einen Prozess/Dienst, der sich weigert, anzuhalten?
  • Wenn ja, untersuchen Sie, ob Sie ihn ohne Nebenwirkungen entfernen oder neu konfigurieren können.
  • Bitte entfernen Sie hier nicht einfach blindlings Dinge. Sie sollten Kenntnisse über den Prozess haben.

Beschleunigung des Shutdowns

Standard-Timeout
  • Die Standardwartezeit für das Herunterfahren ist normalerweise auf 90 Sekunden eingestellt.
  • Ihr System versucht, die Dienste nach dieser Zeitspanne zwangsweise zu beenden.
Standard-Timeout reduzieren
  • 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.
  • Diese Datei sollte mit vielen Zeilen gefüllt sein, die mit # beginnen.
  • Sie stellen die Standardwerte der Einträge in der Datei dar.

Bevor Sie irgendetwas tun, ist es eine gute Idee, eine Kopie der Originaldatei zu erstellen.

# cp /etc/systemd/system.conf /etc/systemd/system.conf.orig

Suchen Sie hier nach DefaultTimeoutStopSec

#DefaultTimeoutStopSec=90s

Sie müssen diesen Wert auf einen bequemeren Wert wie 5 oder 10 Sekunden ändern.

StandardTimeoutStopSec=5s

Wenn Sie nicht wissen, wie Sie die Konfigurationsdatei im Terminal bearbeiten können, verwenden Sie diesen Befehl, um die Datei zur Bearbeitung im Standardtexteditor Ihres Systems (wie Gedit) zu öffnen:

# xdg-open /etc/systemd/system.conf
Hinweis
Vergessen Sie nicht, das # vor DefaultTimeoutStopSec zu entfernen.

Speichern Sie die Datei und starten Sie Ihr System neu.


Anhang

Siehe auch

Dokumentation

Links

Projekt
Weblinks
  1. https://itsfoss.com/long-shutdown-linux/