如何让 unity 失去响应?

如何让 unity 失去响应?

最近我想测试一个键盘快捷键,它应该可以关闭 X 服务器(因此在崩溃时非常有用)。该快捷键不依赖于任何特定的窗口管理器(例如lxdeunitykwin)。因此,即使您的窗口管理器(对键盘输入无响应)也必须正常工作(Alt与++相反,Ctrl++Backspace会终止会话并显示登录屏幕)。

这就是为什么我有兴趣让我的窗口管理器(unity)不响应。过去,这很容易。打开终端,输入unity --replace然后强制关闭终端,这是最简单的过程。但不幸的是,在 Ubuntu 12.04 中情况并非如此,(它们让它非常坚固)因为每当我关闭终端时,Unity 都会自动重新启动。

我也尝试过,compiz --replace但是没有成功。

我的问题是:如何让 Unity 对任何键盘快捷键不做出响应(它的按键绑定),这样我就可以测试全局快捷方式。

答案1

回答伊莱亚·卡根 (Eliah Kagan) 的著作很精彩,但我认为,我现在可以根据我的经验,用不太专业的语言来回答。

有两种方法(正如我所揭示的)测试该键盘快捷键:

  • 打开终端并输入unityunity --replace都一样)并击中Enter

    如果你想要碰撞像 Unity 的样子

    • 当你在终端上时,按Ctrl+ C,统一将立即停止。
    • 然后尝试您的全局快捷方式。

    如果你想要一个体面的 Unity 外观(冻结)

    • 在终端上,按Ctrl+ Z(按照@Eliah Kagan 的建议),团结将立即停止。一切都将冻结,光标除外。
    • 然后尝试您的全局快捷方式。

杀死X的键盘快捷键:

那个特定的键盘快捷键是:Alt++ PrtScK如果你想尝试的话,你会需要这个。


谢谢@马赫什,揭示了那条捷径

答案2

在任何版本的 Ubuntu 中,运行unity --replace然后关闭终端都不会导致无响应。它会导致unityunity不完全运行

似乎在 12.04 中,unity它(通常)会自动重新启动;而在以前的版本中,它通常不会。

如果您确实需要使其unity不响应,则必须使用其他技术。也许您可以编辑您的问题以详细说明您的具体需求。

让程序停止响应的通用方法是在其控制终端中按Ctrl+ Z。因此,如果您unity --replace在终端窗口(或虚拟控制台)中运行,则可以执行此操作,并且它将停止, 没有终止

您还可以手动停止信号信号控制(即,且,其中kill -STOP PIDkill -CONT PIDPID是要使其不响应的进程的进程 ID)。但是,最好有一个与按Ctrl+的进程关联的终端,因为这样在该终端中运行的 shell 将允许您对进程使用作业控制。也就是说,它将被列出,您可以使用 或 使其再次响应。请参阅Zjobsbgfg官方bash文档了解更多信息。

相关内容