从 tty [干净地] 退出 GUI 应用程序的命令?

从 tty [干净地] 退出 GUI 应用程序的命令?

在运行 alpha/beta Ubuntu 时,我经常遇到 X 冻结的问题,我必须重新启动 X。

在此冻结期间,我可以切换到 tty 并关闭程序。我可以使用 top 并终止正在运行的应用程序 [evolution/firefox/etc,..],或者使用 killall 命令。

但是当我使用这些终止命令时,应用程序会突然关闭,并且在下一个会话中打开时它会“恢复”。例如:Firefox 需要恢复我正在查看的所有网页,所以如果我打开了 20-30 个选项卡,它就会冻结几分钟。evolution 不会删除垃圾箱中的消息,等等。

是否有一个命令可以用来从 tty 彻底关闭应用程序?[我经常使用的应用程序是 firefox、evolution、transmission、xchat]

答案1

通知 POSIX 应用程序关闭的标准方式是,在仍有宽限期进行清理的同时,向其发送SIGTERM(维基百科链接)信号。SIGKILL(维基百科链接)另一方面,信号甚至没有给应用程序整理的机会就终止了它。

但是... 您的两个操作 - 呼叫top(顺便说一下,我建议您切换到使用htop而不是top)或-默认killall发送信号。SIGTERM

我刚刚测试了 Firefox 的启动情况 - 并尝试了 和SIGKILLSIGTERM使用 时SIGTERM,当我再次使用 Firefox 时,我没有收到任何错误或“恢复”消息。使用 时SIGKILL,我得到了it's embarrassing屏幕。

原因很简单:这些应用程序的 X 实例是冻结所有这些 GUI 应用程序的运行前提是它们的 X 实例正常运行。如果 X 冻结,它们可能甚至无法尝试任何操作。

解决问题的方法是确定 X 冻结的原因并防止这种情况发生。

编辑:啊,抱歉 - 刚刚看到您谈到在 X 冻结时使用 Ubuntu alpha/beta。在这种情况下……我会说这是运行 alpha/beta 的乐趣之一。尝试了解它冻结的原因,编写/添加到错误报告。为了加快 Firefox 在这些情况下的启动速度,只需告诉它在重新打开时不要重新加载相同的选项卡。(您仍然可以在历史记录中找到这些选项卡)。对于其他应用程序,它们的清理操作相当微不足道 - 它们没有发生不会给您带来太多损失。

答案2

您是否同时拥有两者browser.sessionstore.enabled,并browser.sessionstore.resume_from_crash在 about:config 中将其设置为 true?对我来说似乎有效 :)

答案3

你好,我想重新启动你的机器只需按住右 ALT+sysReq 然后输入 REUISB 它将重新启动这些字母有意义但我不确定但你可以搜索它我希望它会有所帮助

和平

相关内容