Xephyr
Xephyr 是一个作为 X 应用程序运行的嵌套 X 服务器。
这可能有助于解决编写不佳的应用程序。 例如,可以使用 java ipmi kvm 查看器应用程序控制 Supermicro 服务器。 当服务器重启时,应用程序会频繁地重新创建其窗口并从当前窗口中窃取焦点。 这每分钟发生几次,并且使您的工作变得不可能。 如何制定窗口规则来阻止此类应用程序的窗口在创建时获得焦点并不明显,因为第一次启动时必须给予焦点。 使用 Xephyr 可以让您将这些窗口重新创建保留在一个单独的窗口中,而不会从当前打开的窗口中窃取焦点。
安装
用法
如果您希望运行嵌套的 X 窗口,您将需要指定一个新的显示器
$ Xephyr -br -ac -noreset -screen 800x600 :1
这将启动一个新的 Xephyr 窗口,其 DISPLAY 为 ":1"。 为了在该窗口中启动应用程序,您需要指定该显示器
$ DISPLAY=:1 xterm
启动窗口管理器
如果您想启动特定的窗口管理器,例如 spectrwm,您将输入
$ DISPLAY=:1 spectrwm
您也可以使用 startx 通过您的 xinitrc 启动 Xephyr
$ startx -- /usr/bin/Xephyr :1
抓取和取消抓取用户输入
如果可能,按下 Ctrl+Shift
应该可以专门锁定/解锁您的鼠标指针和 Xephyr 窗口内的击键。
发送 Alt+Tab
如果使用 KDE,请创建窗口规则以忽略全局快捷键。 这样您就可以在 Xephyr 内部使用 Alt+Tab
。
技巧与窍门
Xephyr 可以派上用场的其他情况示例包括
- X 应用程序或功能的测试环境,测试人员希望在他们常用的 X 环境中继续工作,同时保护其他应用程序免受被测应用程序的故障影响。
- OpenSSH#远程 强调 sshd 服务器配置文件中用于 OpenSSH#X11 转发(通过 ssh)的 3 个设置。 其中 2 个(共 3 个)是默认设置。 当 ssh 客户端无法影响 ssh 服务器管理员将第三个设置
X11Forwarding
设置为 yes 时,通过 ssh 转发 X11 使用 Xephyr 作为一种解决方法,安装在 ssh 客户端机器中。