我为在重启之间保持系统正常运行并运行很长时间而感到自豪。我有一个长时间运行的 RHEL7 工作站。偶尔(通常如果它已经连续运行了一个月)窗口管理器会崩溃。崩溃是指窗口是“可见的”,但没有标题栏、菜单等。鼠标指针可以移动,但焦点不能改变。
但是,我可以使用 Alt-F1 等切换到终端会话。
在以前的系统上,我可以使用以下方式重新启动窗口管理器:
metacity --replace
或者
compiz --replace
这将恢复我的会话,而我什至不必注销。但是,我不清楚哪个窗口管理器正在运行。我怎样才能知道?
请注意,我知道您可以使用以下命令重新启动显示管理器:
systemctl restart display-manager
但这会启动一个新会话并要求您再次登录。我希望能够在不这样做的情况下仅重新启动崩溃的 wm 进程。
我认为这仍然是使用 wayland、mutter 或类似的 gnome3。实际上是否有一个单独的窗口管理器我可以再重新启动?如果不是,为什么不呢?
是的。还有一个窗口管理器,您可以重新启动它。您可以确认您正在运行 gnome-classic,如下所示:
您可以按照此处的建议通过在活动中键入“about”来识别版本(我的是 3.22.2):
https://help.gnome.org/users/gnome-help/stable/gnome-version.html.en
您可以使用wmctrl来识别所使用的窗口管理器。目前标准的 redhat 存储库 ( https://bugzilla.redhat.com/show_bug.cgi?id=1326876 ) 中缺少此功能,但可从 nux-dextop 存储库 ( https://li.nux.ro/repos. html )
然后:
显示 gnome-shell 正在运行。
表明 gnome-shell 支持 --replace 参数,因此可以像以前一样用于重新启动窗口管理器。