我想在一台台式 PC 上同时从多个 X 服务器截取屏幕截图。
我有多个用户登录不同的终端(tty1,tty2,tty3,tty4)谁开始与多个Xservers文件startx /usr/bin/openbox-session -- :1(和:2,:3,:4分别)。所以我可以用Ctrl+Alt+F8, +F9, +F10,访问它们中的每一个+F11。
该桌面上只有一台显示器。
我想为这些 X 服务器中的每一个截取屏幕截图,最好使用scrot,但目前我每次尝试时都会得到一个黑色/空白图像。只有当我在那个 X 服务器上处于活动状态时,我才能得到正确的屏幕截图。
例如,如果我打开Ctrl+Alt+F8并运行,scrot test.png我会得到一个正确的屏幕截图;如果我理解正确,我不必设置$DISPLAY,因为在Ctrl+Alt+F8我得到echo $DISPLAY> :1。但是,如果我跑sleep 10; scrot test.png,去Ctrl+Alt+F7,然后我得到一个黑色的图像。
如何同时从这些终端中的每一个获取多个屏幕截图?
对我有用的是Xephyr. 此解决方案的唯一问题似乎是当我运行极快的xdotool命令时,它的响应速度不如 X。
为了将来参考,我对四个用户和终端中的每一个都做了:
在 中~/.profile,我将每个用户设置为在系统启动后自动登录,例如:
if [[ -z $DISPLAY …Run Code Online (Sandbox Code Playgroud) 我可以关闭我的显示器,xset dpms force off但有些东西阻止了 KDE 将其关闭。另一方面,当我播放很长的 youtube 视频时,它可能会关闭(!)。这在 5 分钟后正确发生,因为我已经在“系统设置 > 电源管理 > 节能 >(选中)屏幕节能 > 5 分钟后关闭”中进行了设置。
如何检查哪个活动/程序阻止我的显示器关闭?