jk_*_*jk_ 152 gnome freeze gnome-shell
有时,我的 GNOME Shell 会死机。我可以看到(听到)后台进程在工作(播放音乐),但在 GNOME 中我什么也做不了。没有Alt+F2后跟R和Enter。
我可以切换使用安慰:Ctrl+ Alt+ F1,登录以相同用户并执行:
gnome-shell --replace
Run Code Online (Sandbox Code Playgroud)
并返回Ctrl+ F7,但是,我得到了一个奇怪的行为。例如,我无法编辑网络连接。我也无法注销。重新启动的正确方法是gnome-shell什么?
Bra*_*iam 218
更简单的方法是按Alt+ F2,r然后输入Enter。只要外壳可用,这将起作用。
您还可以发送SIGQUIT到gnome-shell仅终止 shell的进程:
killall -3 gnome-shell
Run Code Online (Sandbox Code Playgroud)
其他方法使用更具破坏性的手段,关闭所有应用程序,这不应该。
小智 43
如果您想“很好地”要求 gnome-shell 重新启动它自己,那么您可以使用以下命令通过 dbus 调用它的内部重新启动功能(假设您已将DBUS_SESSION_BUS_ADDRESSenv var 设置为正确的值并以同一用户身份运行):
dbus-send --type=method_call --print-reply --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'global.reexec_self()'
Run Code Online (Sandbox Code Playgroud)如果你想运行一个新的实例,gnome-shell --replace应该没问题。在控制台上,您需要定义必要的环境变量,例如DISPLAY,DBUS*等等。参考/proc/$gnome_shell_pid/environ
killall -HUP gnome-shell就可以了。但是,如果您经常这样做,gnome-shell 可能会禁用所有扩展,强行将您注销或以其他非用户友好的方式行事。Ger*_*ein 13
如果您已经安装了 ubuntu gnome(您应该拥有),那么您可能正在使用 gnome 显示管理器。在这种情况下,您应该更改为另一个 TTY,例如 Ctrl + Alt + F4,然后
sudo service gdm restart
Run Code Online (Sandbox Code Playgroud)
我最近也写了一篇关于这种情况的文章:
好运!
小智 12
这是一个不同的解决方法:
运行命令:
sudo kill -HUP $(pidof gnome-shell)
Run Code Online (Sandbox Code Playgroud)PS:我使用的是 lightdm 而不是 gdm3。
小智 5
由于您对 不满意gnome-shell --replace,您可能想尝试重新启动显示管理器本身。
sudo service lightdm restart
Run Code Online (Sandbox Code Playgroud)
我认为这会杀死您正在运行的其他进程。另请参阅http://worldofgnome.org/how-to-restart-gnome-shell-when-freezes-if-ever/
如果您认真对待让您每次都冻结的事情,请按照https://www.kernel.org/doc/Documentation/admin-guide/sysrq.rst 中所述启用 SysRq ,然后将<alt><sysrq/print_screen_key><k>其杀死在屏幕。
| 归档时间: |
|
| 查看次数: |
288613 次 |
| 最近记录: |