我有一个kiosk系统运行Debian 11与星载GPU (英特尔),运行使用UEFI。监视器的端口是VGA。
目前,它会自动使用getty重写(参考文献)登录,并在tty1上调用startx。我们不使用显示管理器。
然后它将启动一个openbox-session,然后在那里启动vnc和单个应用程序。
if [[ "$(tty)" == '/dev/tty1' ]]; then
exec xinit $HOME/.xinitrc -- /etc/X11/xinit/xserverrc :0 vt1
fi如果监视器是在启动前附加的,那么如果我在以后拔出并重新插入监视器,它将显示正常。
如果在启动时没有监视器插头,则为But。以后我将无法插入监视器(屏幕始终是空白的)。
在引导openbox-session和成功启动应用程序期间(可以从vnc查看)
我尝试使用xserver视频-虚拟,并创建/etc/x11/xorg.dumy.conf。当所有组件都在运行时,openbox会话不知何故没有加载到屏幕中。目前在xorg.log中没有发现任何明显的错误
if [[ "$(tty)" == '/dev/tty1' ]]; then
exec xinit $HOME/.xinitrc -- /etc/X11/xinit/xserverrc :0 vt1 -config xorg.dummy.conf
fixorg.dummy.conf 文件
我尝试使用Xvfb,但我认为这并不适用于此。虽然没有任何东西打破了同样的问题,但仍然存在。
是否有可能做到这一点?当前,如果我忘记在重新启动时附加监视器,则需要重新重新启动它。
发布于 2023-05-09 04:01:57
问题不在x服务器或显示管理器中,实际上是在
当xfce,gnome,等在监视器上自动检测插头开关柜时,显然没有一个用xrandr来完成这项工作( autorandr不工作)
在. .config/openbox/autostart中
while true; do
# Grep first connected display
FIRSTDISPLAY=$(xrandr | grep " connected " | awk '{ print$1 }' | head -n 1)
# Force on
xrandr --output ${FIRSTDISPLAY} --auto
# Kill dpms, require to rerun incase display replug
xset -dpms
xset s noblank
xset s off
sleep 1
donehttps://unix.stackexchange.com/questions/745016
复制相似问题