Manchmal friert meine Gnomschale ein. Ich kann Hintergrundprozesse sehen (hören), die funktionieren (Musik abspielen), aber ich kann in Gnome nichts tun. Nein Alt+ F2+ R.
Ich kann wechseln mit trösten: Ctrl+ Alt+ F1, melden Sie sich als denselben Benutzer und ausführen:
gnome-shell --replace
und zurück Ctrl+ F7, aber dann bekomme ich ein seltsames Verhalten. Zum Beispiel kann ich keine Netzwerkverbindungen bearbeiten. Ich kann mich auch nicht ausloggen. Was ist der richtige Weg, um die Gnome-Shell neu zu starten?
gnome
gnome-shell
jk_
quelle
quelle
gnome-shell overview
, oder bei welcher besonderen Gelegenheit, wenn Sie dies feststellen können?Antworten:
Der einfachere Weg ist einfach Alt+ zu drücken F2und
r
dann zu tippen Enter. Dies funktioniert so lange, wie die Shell verwendbar ist.Sie können auch
SIGQUIT
an dengnome-shell
Prozess senden , der nur die Shell beendet:Andere Methoden verwenden eher destruktive Mittel, die alle Anwendungen schließen, dies sollte jedoch nicht der Fall sein.
quelle
SIGHUP
Tipp wäre dann aber nicht der richtige Befehlkillall -1 gnome-shell
? Zumindest lautman 7 signal
ist der Wert fürSIGHUP
1. Wert 3 entsprichtSIGQUIT
. Ich habe den Wert 1 an die Gnome-Shell gesendet und sie wurde wie erwartet sauber neu gestartet.killall -3 gnome-shell
alle Anwendungen für mich beendet.Alt+F2
und hatr
, dh ohne den gesamten BildschirmWenn Sie gnome-shell "nett" bitten möchten, sich selbst neu zu starten, können Sie die interne Neustartfunktion über dbus mit dem folgenden Befehl aufrufen (vorausgesetzt, Sie haben
DBUS_SESSION_BUS_ADDRESS
env var auf den richtigen Wert gesetzt und führen denselben Benutzer aus):Wenn Sie eine neue Instanz ausführen möchten,
gnome-shell --replace
sollte dies in Ordnung sein. Auf Konsole müssen Sie die notwendigen Umgebungsvariablen wie definierenDISPLAY
,DBUS*
und so weiter. Beziehen auf/proc/$gnome_shell_pid/environ
killall -HUP gnome-shell
wird dies durchgeführt. Wenn Sie dies jedoch zu oft tun, kann es sein, dass Gnome-Shell alle Erweiterungen deaktiviert, Sie zwangsweise abmeldet oder sich auf andere Weise nicht benutzerfreundlich verhält.quelle
logout otheruser1 otheruser2
) askubuntu.com/a/874504/17941Error org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.Shell was not provided by any .service files
ohne sudo undFailed to open connection to "session" message bus: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
mit sudo.Hier ist eine andere Problemumgehung:
Führen Sie den Befehl aus:
PS: Ich benutze lightdm anstelle von gdm3.
quelle
Wenn Sie ubuntu gnome installiert haben, welches Sie haben sollten, verwenden Sie möglicherweise den Gnome-Anzeigemanager. In diesem Fall sollten Sie zu einem anderen TTY wechseln, z. B. Strg + Alt + F4 und dann
Ich habe kürzlich auch einen Artikel über eine solche Situation geschrieben:
Hilfe, mein Linux Desktop hängt!
Bestes Glück!
quelle
Da Sie nicht zufrieden sind
gnome-shell --replace
, können Sie versuchen, den Display Manager selbst neu zu starten.Ich denke, das wird andere Prozesse töten, die Sie ausführen. Siehe auch http://worldofgnome.org/how-to-restart-gnome-shell-when-freezes-if-ever/
Wenn Sie ernsthaft mit etwas zu tun haben, das Sie jedes Mal zum Einfrieren bringt, aktivieren Sie den SysRq wie in https://www.kernel.org/doc/Documentation/admin-guide/sysrq.rst beschrieben , und geben Sie dann den Befehl,
<alt><sysrq/print_screen_key><k>
alles auf dem System zu töten Bildschirm.quelle
DISPLAY=:7 gnome-shell --replace
funktioniert?w
die Anzeige anders ist als : 0 . Wenn ich ein falsches Display benutze, erhalte ich eine Fehlermeldung.alt-f2-r
odergnome-shell --replace
wann dies der empfohlene Weg ist.Manchmal habe ich das gleiche Problem wie Sie, und meine Lösung lautet:
Ctrl+ Alt+ F1, Melden Sie sich als denselben Benutzer und auszuführen:
Und zurück mit Ctrl+ Alt+F7
Ob das der richtige Weg ist, weiß ich nicht. Bei mir funktioniert es immer.
quelle
Starten Sie X neu
Finden Sie zuerst mit dem folgenden Befehl heraus, welchen Display-Manager Ihr Ubuntu verwendet:
in meinem Fall ist es
/usr/sbin/gdm3
Von innen X oder AUSSEN X
Ermitteln Sie für die Methoden 1 bis 4 mithilfe des
w
Befehls , welche Anzeige Sie verwenden .Die Antwort kann zum Beispiel lauten
tty3
(daher ist meine (ack's) Taste "Zurück zu meiner Anzeige" Strg + Alt + F3Methoden
sudo /etc/init.d/gdm3 restart
systemctl restart gdm.service
sudo service gdm3 restart
dbus-send --type=method_call --print-reply --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'global.reexec_self()'
r
drücken und dann die Eingabetaste zu drücken. Dies funktioniert solange die Shell nicht unbrauchbar ist.quelle
Drücken Sie Strg + Alt + F2, um zu einem Terminalfenster zu wechseln. Manchmal ist das nicht möglich.
Drücken Sie Alt + SysRq + R, um die Tastatur abzurufen.
Wenn das Drücken von Strg + Alt + F2 zuvor fehlgeschlagen ist, versuchen Sie es jetzt erneut.
Drücken Sie Alt + SysRq + E, um alle Prozesse zu beenden.
Drücken Sie Alt + SysRq + I, um alle Prozesse abzubrechen.
Drücken Sie Alt + SysRq + S, um Ihre Festplatten zu synchronisieren.
Warten Sie auf die Meldung OK oder Fertig. Wenn keine Meldung angezeigt wird, überprüfen Sie anhand der Festplattenanzeige, ob die Synchronisierung einen Unterschied bewirkt hat.
Drücken Sie Alt + SysRq + U, um die Bereitstellung aller Laufwerke aufzuheben.
Warten Sie auf die Meldung OK oder Fertig. Wenn innerhalb von 15 bis 30 Sekunden keine Meldung angezeigt wird, gehen Sie davon aus, dass die Datenträger nicht bereitgestellt wurden (oder dass die Bereitstellung nicht möglich ist), und fahren Sie fort.
Drücken Sie Alt + SysRq + B, um den Computer neu zu starten.
quelle
kill -15 gnome-shell
funktioniert bei mir nicht aber dochkill -9
. Ich denke, es liegt daran, dasskill -9
ein Segfault ausgelöst wird, der bewirkt, dass sich die Gnome-Shell selbst neukill -15
startet , dies jedoch nicht.quelle
kill -9
Löst keinen Segfault aus. Es sendet SIGKILL, ein nicht einfangbares Signal, für das die einzige Aktion darin besteht, sofort zu beenden. Es sollte nur verwendet werden, wenn die Anwendung nicht auf SIGTERM reagiert, das ist 15.pkill -11 gnome-shell
würde einen Segfault auslösen, da dies buchstäblich das ist, was Signal 11 tut. BTW,kill
braucht eine Prozess - ID, nicht ein Prozessname. Meinten Siepkill
oderkillall
?