为什么'fbi'在系统启动期间不显示启动图像?

时间:2017-09-10 17:21:05

标签: splash-screen raspbian systemd

我正在尝试使用fbi为Raspbian Stretch提供启动画面。基于一些教程,我在这里找到了我的情况:

/etc/systemd/system/splashscreen.service

[Unit]
Description=Splash screen
DefaultDependencies=no
After=local-fs.target

[Service]
ExecStart=/usr/bin/fbi -T 1 -d /dev/fb0 --noverbose /opt/logo.png

[Install]
WantedBy=sysinit.target

启用(检查sysinit.target.wants下的符号链接)。

/boot/cmdline.txt

dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=ee397c53-02 rootfstype=ext4 elevator=deadline rootwait quiet logo.nologo loglevel=1 fsck.mode=skip noswap ro consoleblank=0

P

/boot/config.txt

hdmi_drive=2
dtparam=i2c_arm=on
dtparam=spi=on
dtparam=audio=on
dtparam=i2c1=on
dtoverlay=i2c-rtc,ds1307
disable_splash=1

从提示符执行完全相同的命令(fbi -T 1 -d /dev/fb0 --noverbose /opt/logo.png)会导致按预期显示图像。

在启动消息中,我找不到任何错误。有什么想法吗?

1 个答案:

答案 0 :(得分:4)

我终于有了这个工作!这就是我所做的(基本上是从https://yingtongli.me/blog/2016/12/21/splash.html复制而来的,只有一些小改动让它对我有用)。

  1. 安装fbi:apt install fbi

  2. 使用以下内容创建/etc/systemd/system/splashscreen.service

    [Unit]
    Description=Splash screen
    DefaultDependencies=no
    After=local-fs.target
    
    [Service]
    ExecStart=/usr/bin/fbi --noverbose -a /opt/splash.png
    StandardInput=tty
    StandardOutput=tty
    
    [Install]
    WantedBy=sysinit.target
    

    我唯一与上面链接的文章不同的是从-d命令中移除/usr/bin/fbi标志(命令最初是/usr/bin/fbi -d /dev/fb0 --noverbose -a /opt/splash.png)。我猜测fb0是错误的设备,只是意味着fbi将使用当前的显示设备并使其正确。

  3. 将您的初始图片放入/opt/splash.png

  4. 启用服务:systemctl enable splashscreen

  5. 我仍在试图弄清楚如何摆脱其余的启动文本,但这是朝着正确方向迈出的一步。