【发布时间】:2022-01-03 11:24:28
【问题描述】:
我有运行电子应用程序的信息亭显示器。 此应用需要在开机时启动。
[Unit]
Description=Display Application
After=network.target getty@tty1.service
Conflicts=getty@tty1.service
[Service]
Type=simple
ExecStart=/usr/bin/xinit /usr/bin/electron main.js -- :0 -nocursor -nolisten tcp
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
但由于某种原因,该服务启动得很早,xinit 抱怨没有找到任何屏幕。在第一次 systemd 重新启动后,应用程序正在运行。
我搜索了systemd device,这听起来很有希望。但是将dev-dri-card0 用作Requires 和After 会在启动时产生Missing Dependency。
# ls /dev/dri
by-path card0 renderD128
# dmesg | grep drm
[ 3.609070] systemd[1]: Starting Load Kernel Module drm...
[ 3.672741] systemd[1]: modprobe@drm.service: Succeeded.
[ 3.673192] systemd[1]: Finished Load Kernel Module drm.
[ 4.327074] fb0: switching to inteldrmfb from EFI VGA
[ 4.332654] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/bxt_dmc_ver1_07.bin (v1.7)
[ 4.356201] i915 0000:00:02.0: [drm] Panel advertises DPCD backlight support, but VBT disagrees. If your backlight controls don't work try booting with i915.enable_dpcd_backlight=1. If your machine needs this, please file a _new_ bug report on drm/i915, see https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs for details.
[ 4.367399] [drm] Initialized i915 1.6.0 20200917 for 0000:00:02.0 on minor 0
[ 4.376167] fbcon: i915drmfb (fb0) is primary device
[ 4.402186] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
# systemctl list-units -a -t device | grep card0
dev-dri-card0.device loaded inactive dead /dev/dri/card0
我没有胶水这里有什么问题。发现一些帖子说 drm 模块加载到较晚(在 systemd 之后)...将 drm 添加到 initramfs ...没有运气。
【问题讨论】:
标签: systemd