首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux无头自动检测监视器

Linux无头自动检测监视器
EN

Unix & Linux用户
提问于 2023-05-05 08:16:31
回答 1查看 42关注 0票数 0

我有一个kiosk系统运行Debian 11与星载GPU (英特尔),运行使用UEFI。监视器的端口是VGA。

目前,它会自动使用getty重写(参考文献)登录,并在tty1上调用startx。我们不使用显示管理器。

然后它将启动一个openbox-session,然后在那里启动vnc和单个应用程序。

代码语言:javascript
复制
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中没有发现任何明显的错误

代码语言:javascript
复制
if [[ "$(tty)" == '/dev/tty1' ]]; then
    exec xinit $HOME/.xinitrc -- /etc/X11/xinit/xserverrc :0 vt1 -config xorg.dummy.conf
fi

xorg.dummy.conf 文件

我尝试使用Xvfb,但我认为这并不适用于此。虽然没有任何东西打破了同样的问题,但仍然存在。

是否有可能做到这一点?当前,如果我忘记在重新启动时附加监视器,则需要重新重新启动它。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2023-05-09 04:01:57

问题不在x服务器或显示管理器中,实际上是在

当xfce,gnome,等在监视器上自动检测插头开关柜时,显然没有一个用xrandr来完成这项工作( autorandr不工作)

在. .config/openbox/autostart中

代码语言:javascript
复制
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
done
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/745016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档