Für die Sitzung c2 des Benutzers wird ein Stoppjob ausgeführt

56

Die folgende Meldung wird fast jedes Mal angezeigt, wenn ich meinen Computer heruntergefahren habe:

A stop job is running for Session c2 of user ... (1min 30s)

Es wartet 1 Minute 30 Sekunden und fährt dann mit dem Herunterfahren fort. Ich folge dieser Anleitung zur Diagnose des Herunterfahrens des Systems und erhalte die Datei shutdown-log.txt (ich kann das Protokoll hier nicht direkt einfügen, da es sehr lang ist). Leider verstehe ich das Protokoll selbst nicht. Kann mir jemand helfen, herauszufinden, warum mein System nicht ordnungsgemäß heruntergefahren wird?

Ich starte Arch Linux mit Kernel 4.4.5-1-ARCH, meine systemdVersion ist 229-3.

Zusatz 1: Ich beobachte, dass jedes Mal, wenn ich mich abmelde und dann meinen Computer vom Anmeldebildschirm aus herunterfahre, die Meldung nicht angezeigt wird A stop job is running.... Ich habe viele Male versucht, mich vor dem Herunterfahren abzumelden, daher denke ich, dass dies nicht zufällig passiert. Hoffe, dass Informationen helfen könnten.

Zusatz 2: Es ist immer Sitzung c2, die das Herunterfahren verursacht. Also wie @ n.st nahelegen, habe ich bei Diagnose von Abschaltproblemen nochmal nachgesehen und loginctl session-status c2stattdessen gespeichert dmesg, aber dann ist nichts auf dem shutdown-log.txt. I ersetzt loginctl session-status c2durch systemd-cglsund bekam das folgende Protokoll:

Control group /:
-.slice
└─init.scope
  ├─   1 /usr/lib/systemd/systemd-shutdown reboot --log-level 6 --log-target ...
  ├─1069 /usr/lib/systemd/systemd-shutdown reboot --log-level 6 --log-target ...
  ├─1071 /bin/sh /usr/lib/systemd/system-shutdown/debug.sh reboot
  └─1074 systemd-cgls

Irgendwelche Ideen?

Hinweis: Nachdem ich auf Kernel 4.6.4-1-ARCHund aktualisiert habe systemd 230-7, ist der Fehler nicht mehr aufgetreten.

macnguyen
quelle
Leider ist die dmesgAusgabe, die Sie eingefügt haben, nicht sehr informativ. Sie zeigt, dass die WLAN-Verbindung getrennt wird, wenn Sie auf die Schaltfläche zum Herunterfahren klicken (3048 Sekunden nach dem Systemstart) und dann nichts, bis der Timer für 1:30 Sekunden abgelaufen ist und das System weiterhin heruntergefahren wird (bei 3139 Sekunden).
2.
1
Um zu überprüfen, was in dieser ominösen Sitzung c2 läuft, die nicht von alleine beendet wird, verwenden Sie loginctl session-status c2. Ich bin mir nicht sicher, ob Sie beim Herunterfahren noch zu einem getty wechseln können, aber drücken Sie Strg + Alt + F2, wenn "Ein Stoppjob wird ausgeführt ..." angezeigt wird. Wenn das funktioniert, erhalten Sie eine Anmeldeaufforderung und können den loginctlBefehl verwenden. Wenn Sie keine Anmeldeaufforderung erhalten, befolgen Sie die gleichen Schritte, die Sie verwendet haben dmesg, aber speichern Sie loginctl session-status c2stattdessen die Ausgabe von . (Das setzt
voraus
1
Sie könnten durch diesen Hack eine (vorübergehende) Korrektur erhalten: /etc/sysctl.d/50-coredump.confMit Inhalt erstellen kernel.core_pattern=core
:,
1
github.com/systemd/systemd/issues/2691 Dies könnte relevant sein
Natecat
2
@aurelien Verursacht immer c2 den Timer beim Herunterfahren? In diesem Fall können Sie der Diagnose von Problemen beim Herunterfahren erneut folgen und loginctl session-status c2stattdessen speichern dmesg.
2.

Antworten:

45

Eine Problemumgehung für dieses Problem besteht darin, das Zeitlimit /etc/systemd/system.confvon 90 auf beispielsweise 10 Sekunden zu verringern :

DefaultTimeoutStopSec=10s

Führen Sie den folgenden Befehl im Terminal aus, nachdem Sie Änderungen vorgenommen haben

$ systemctl daemon-reload
MightyPork
quelle
9
das erklärt oder löst das problem nicht, es ist auch nicht gut, auf 10s zu warten und nicht einmal einen sauberen Shutdown zu haben
jcora
Gibt es einen Job, der länger als 10s dauert, um aufzuhören?
Jared Chu
10

Dieses Problem kann viele Ursachen haben, daher funktionieren bestimmte Antworten nicht so gut. Versuchen Sie dies zur Fehlerbehebung:

  1. Warten Sie, bis die Meldung "Ein Stoppjob wird ausgeführt, damit Sitzung c2 ..." beim Herunterfahren angezeigt wird, und starten Sie den Computer nach Abschluss des Herunterfahrens neu
  2. journalctl -p5In einem Terminal ausführen und auf drücken END, um zum Ende des systemd-Journals zu gelangen ( -p5filtert viel Müll heraus)
  3. Starten Sie eine Suche durch Drücken von /und geben Sie den Suchbegriff eintimed out. Killing.
  4. suchen Sie rückwärts, indem Sie SHIFT+Nwiederholt drücken
  5. Die Zeile unter jeder Übereinstimmung gibt an, welche Anwendung fehlerhaft war:Killing process 1234 (jack_thru) with signal SIGKILL.

Wenn es sich immer um dieselbe Anwendung handelt, möchten Sie herausfinden, was sie tut und warum sie beim Herunterfahren nicht gestoppt wird. Andernfalls könnte es komplizierter sein, das Problem zu lösen, aber Sie erhalten möglicherweise immer noch einen oder zwei Tipps.

Viel Glück! :)

mzuther
quelle
1
Danke für diese richtige Antwort. Ich habe es benutzt, um herauszufinden, dass in meinem Fall Fedora 30 "lpf" -Benachrichtigungen die Ursache waren, und in lpf-gui deaktivierte Notifications | Benachrichtigungen aktivieren.
vk5tu
5

Ich hatte das gleiche Problem, auf der Suche fand ich einen Beitrag in einem reddit Forum von Arch Linux.

Hier ist die Lösung, die für mich funktioniert: https://www.reddit.com/r/archlinux/comments/4bawf7/a_stop_job_is_running_for_session_c2_of_user/d17th3u

Watchdog installieren

# pacman -S watchdog

Und dann starte den Dienst beim Booten:

# systemctl enable watchdog.service

Starten Sie den Dienst, um die Nachricht nicht mehr anzuzeigen

# systemctl start watchdog.service

Ich erstelle eine Liste für diese https://gist.github.com/dianjuar/98d02af4050dc2df8ae6f18695d44ca3

Diego Juliao
quelle
Ich bin deinem Führer gefolgt, aber er löst das Problem nicht. Trotzdem danke.
Macnguyen
2
Gibt es andere Auswirkungen auf dieses Update? Anscheinend watchdog wird die Hardware das System zurücksetzen, wenn andere Tests zurückbleiben oder fehlschlagen. Wenn die in der Frage genannte Zeitüberschreitung auftritt, setzt der Watchdog den Computer zurück. Ich frage mich, ob das System sauberer heruntergefahren würde, wenn wir nur das Timeout gemäß der anderen Antwort reduzieren würden . Ich frage mich auch, ob watchdogin anderen, unerwünschten Situationen ein Zurücksetzen erzwungen werden würde.
Sparhawk
Ich lese Ihre Mann - Seite. Ich denke, dieser Watchdog verhindert, dass der Reset dem Linux-Kernel mitteilt, dass alles in Ordnung ist.
Diego Juliao
> Es öffnet / dev / watchdog und schreibt häufig genug darauf, damit der Kernel nicht zurückgesetzt wird, mindestens einmal pro Minute.
Diego Juliao
Kein Paket namens Watchdog auf OpenSuSE, das hilft mir also nicht wirklich :(
David Faure
4

Ich habe hier eine Lösung gefunden, die für mich mit Debian 9 auf vbox funktioniert. Ich bekam die typische Verzögerung von 120 Sekunden beim Herunterfahren oder Neustart.

https://forums.kali.org/showthread.php?32498-Delay-90-seconds-on-shutdown

Mach es wie Ironman sagt:

Die Lösung besteht darin, die Shell zu öffnen und "jetzt herunterzufahren". Wenn der Computer wieder hochfährt, wird ein "Neustart" ausgeführt und die Meldung verschwindet und zukünftige Neustarts hängen nicht mehr.

Ich habe "sudo shutdown now" verwendet und die Neustartverzögerung ist jetzt weg. Scheint zu einfach, aber es hat für mich (und andere) funktioniert.

HTH

Dennis Cote
quelle
8
Warum hat diese Antwort so viele positive Stimmen? Es hat bei mir nicht funktioniert, und es gibt keinen Hinweis darauf, warum es funktionieren sollte.
Rodrigo
Arbeitete für mich, aber es ist immer noch unklar, warum es so war.
Pstryk
3

Nach einem ähnlichen Problem bei Kali [2017.01] mit wechselnder Abmeldeverzögerung durch:

"Für Sitzung c1 des Benutzers Debian-gdm wird ein Stoppjob ausgeführt"

"Es wird ein Stoppjob für den Benutzermanager für UID 132 ausgeführt."

Es ist mir gelungen, einen Fehler zu beheben, indem ich NetworkManagervor dem Herunterfahren gestoppt oder deaktiviert habe:

# To get rid of: "A stop job is running for User manager for UID 132"
systemctl disable NetworkManager 
systemctl stop NetworkManager 

Dies sollte wahrscheinlich beim Neustart behoben oder auf eine andere Weise eingestellt werden.

Was die andere Verzögerung betrifft, war ich nicht erfolgreich. Es scheint, dass es mit GDM ( Gnome Display Manager ) pulseaudiooder verwandt sein kann dbus. Da ich das Problem nicht eingrenzen konnte, bestand die einzige Möglichkeit darin, die DefaultTimeout*Sec=5sEinträge system.confwie bereits in anderen Beiträgen erwähnt zu setzen.

Andere Probleme, die möglicherweise untersucht werden, werden in den folgenden Abschnitten aufgeführt:

# systemctl --state=masked --state=not-found --state=failed

  UNIT                           LOAD      ACTIVE   SUB  DESCRIPTION                   
 tmp.mount                      not-found inactive dead tmp.mount                     
 auditd.service                 not-found inactive dead auditd.service                
 console-screen.service         not-found inactive dead console-screen.service        
 festival.service               not-found inactive dead festival.service              
 kbd.service                    not-found inactive dead kbd.service                   
 live-tools.service             masked    inactive dead live-tools.service            
 plymouth-quit-wait.service     not-found inactive dead plymouth-quit-wait.service    
 plymouth-quit.service          not-found inactive dead plymouth-quit.service         
 plymouth-start.service         not-found inactive dead plymouth-start.service        
 systemd-sysusers.service       not-found inactive dead systemd-sysusers.service      
 systemd-update-done.service    not-found inactive dead systemd-update-done.service   
 systemd-vconsole-setup.service not-found inactive dead systemd-vconsole-setup.service
 syslog.target                  not-found inactive dead syslog.target                 

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

und:

# systemd-cgls -u user-132.slice

Unit user-132.slice (/user.slice/user-132.slice):
├─user@132.service
 ├─pulseaudio.service
  └─739 /usr/bin/pulseaudio --daemonize=no
 ├─at-spi-dbus-bus.service
  ├─704 /usr/lib/at-spi2-core/at-spi-bus-launcher
  ├─709 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
  └─712 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session
 ├─dbus.service
  └─694 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
 └─init.scope
   ├─597 /lib/systemd/systemd --user
   └─600 (sd-pam)
└─session-c1.scope
  ├─577 gdm-session-worker [pam/gdm-launch-environment]
  ├─613 /usr/lib/gdm3/gdm-x-session gnome-session --autostart /usr/share/gdm/greeter/autostart
  ├─618 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/132/gdm/Xauthority -background none -noreset -keeptty -verbose 3
  ├─697 /usr/lib/gnome-session/gnome-session-binary --autostart /usr/share/gdm/greeter/autostart
  ├─721 /usr/bin/gnome-shell
  └─752 /usr/lib/gnome-settings-daemon/gnome-settings-daemon
not2qubit
quelle
2
Diese Antwort gibt uns zumindest einige Informationen darüber, wie wir herausfinden können, was (von den vielen Möglichkeiten) das Problem auf unseren einzelnen Maschinen verursacht. Ein weiteres Problem ist, dass wir uns nach einem poweroffoder nicht einloggen können, um den tatsächlichen Täter zu sehen. systemd muss die Ausgabe von cgls protokollieren, wenn dieses Problem auftritt . Das Beste, was wir jetzt tun können, ist, die Ausgabe von zu speichern und sie später zu konsultieren, wenn der Hang erneut auftritt. shutdownsystemd-cgls
Duanev
2

Da dies eines der ersten Ergebnisse in der freundlichsten Suchmaschine aller Zeiten ist, füge ich hier meine Lösung hinzu: Ich verwende Arch Linux mit Gnome Desktop. aktueller Kernel Stand heute: 4.16.

Ich habe die Nachricht erhalten, A stop job is running for Session c2 of user ... (1min 30s)wann immer Remote Loginaktiviert Settings > Sharingund Sharingaktiviert wurde.

Immer wenn ich das deaktivierte, fuhr mein Computer mit der Gnome-Schaltfläche zum Herunterfahren ordnungsgemäß herunter.

Da "Remote Login" nichts anderes als SSH ist, gehe ich davon aus, dass die Antwort von not2qubit auch funktionieren wird, da das Deaktivieren von NetworkManager wahrscheinlich auch SSH deaktiviert.

stueja
quelle
1

Manchmal kann dies durch eine App verursacht werden. Das Erinnern an Änderungen, die unmittelbar vor dem Eintreten dieses Problems vorgenommen wurden, kann hilfreich sein, um die Ursache zu lokalisieren. Ich hatte das gleiche Problem nach der Installation skypeforlinux-stable-binunter Arch Linux. Das Schließen dieser App vor dem Herunterfahren hat das Problem behoben (ich habe ein Skript geschrieben, das dies vor dem Herunterfahren automatisch erledigt).

prosoitos
quelle
0

Ich hatte dieses Problem lange Zeit und dachte, ich würde meine Lösung teilen.

Das Problem war, dass Google Chrome im Hintergrund ausgeführt wird und beim Ausschalten des Computers nicht geschlossen wird. Die beste Lösung ist es, diese Funktion auszuschalten.

  1. Wechseln Sie zu den Einstellungen von Google Chrome.
  2. Klicken Sie auf "Erweitert".
  3. Gehen Sie zu "System".
  4. Deaktivieren Sie "Hintergrund-Apps weiterhin ausführen, wenn Google Chrome geschlossen ist".

Bildbeschreibung hier eingeben

Das hat es für mich gelöst. Ich hoffe es hilft.

ArianJM
quelle