除了使用Alt+ F2,R+之外,还有其他方法可以重新启动 GNOME Shell 吗Enter?
关于这个问题,我已经经历过gnome-shell --replace 和 Alt+F2 中的 r 之间的区别,但我没有得到我想要的东西。
我正在寻找一个能够准确执行Alt+ F2、r+Enter功能的命令。
请注意,我不愿意执行该gnome-shell -- replace
命令......
我确实检查了这两件事Alt+ F2,r Enter并且gnome-shell --replace
......
我发现有很多区别......
答案1
答案2
作为Diego F. Rodríguez V. 提到,没有办法从终端访问它。但是,
killall -3 gnome-shell
非常接近,并保持您的活动会话完好无损。它会发送一个 QUIT 信号 (SIGQUIT),并且由于 gnome-shell 设置为在 X 启动时自动启动,因此它在技术上会执行类似操作。
kill -SIGQUIT PID
kill -3 PID
kill -QUIT PID
也可以这样做,但它需要一个 PID(进程 ID)作为参数,可以通过以下方式找到
ps x | grep "gnome-shell"
答案3
我还想以编程方式重新启动 gnome shell,因为 Ubuntu 19.10 中似乎存在某种内存泄漏。gnome-shell
开始消耗 200 MB 多一点,但使用几个小时后就会达到 900 MB 多一点。
alt+f2,r,enter
优雅地解决了这个问题。出现一条小的“重新启动”消息。变化几乎不可察觉,所有窗口都保持其位置,正在运行的程序保持其状态。只有桌面背景在重新加载时似乎闪烁。
当使用gnome-shell --replace
某些程序时,它们中的所有工作都会丢失,幸存的窗口可能会改变其位置,并且屏幕的几个部分似乎被重新绘制。我也尝试过,killall gnome-shell
结果类似。
不幸的是,我认为没有办法从命令行访问此功能,因为它深深嵌入在 gnome-shell 代码中运行对话框对象:
gnome-shell > js > ui > runDialog.js [37]
this._internalCommands = {
'lg': () => Main.createLookingGlass().open(),
'r': this._restart.bind(this),
...
答案4
对我来说最有效的方法是调用Cinnamon 源代码。适用于 5.4.10。也不会提示回退模式。
dbus-send --type=method_call --dest=org.Cinnamon /org/Cinnamon org.Cinnamon.Eval string:"global.real_restart()"