在我的 Ubuntu 14.04 虚拟机上,compiz 经常冻结。我通常切换到 tty1 并终止进程,然后切换回 tty7,如果我可以看到终端窗口,我就compiz --replace &
在其中运行。但有时我看不到任何终端窗口,并且右键单击桌面没有给出任何菜单,因此我可以打开一个菜单,并且必须重新启动 lightdm 服务。这是工作阻塞。
我的问题是:如何compiz --replace &
从 tty7 上的不同 tty 运行命令或任何其他命令?
我读了这个线,但我不知道如何使 tmux 连接到我的机器上的不同 tty,第二个涉及使用自制程序。我也读过这,但它涉及在 tt7 上运行一个守护进程,等待我的命令。难道没有更简单的方法吗?
答案1
实际上,重要的不是您从哪个控制台运行命令,而是您告诉程序连接到仍然存在的 X 显示。为此,请设置DISPLAY
变量并从标准终端重新启动 Compiz。根据您的发行版和配置,您可能需要放XAUTHORITY
以及。切换到 tty1 并输入:
$ export DISPLAY=:0
$ compiz --replace &
您机器上的显示可能有所不同。用于who
查找您的:
$ who
you tty1 [time] < This is you from tty1.
you :0 [time] (:0) < This is you from tty7.
^^ ^^
This is your display on tty7
注意:您必须以您自己的身份登录 tty7(以图形方式)。幸运的是,当 Compiz 崩溃时,您并没有与 tty7 断开连接(即使您不能做太多事情)。