如何在beaglebone启动的早期阶段启动服务?

时间:2014-03-28 07:42:19

标签: splash-screen beagleboneblack

我正在尝试更改Beaglebone黑色闪屏。 我正在使用Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.12-beaglebone-2013.06.20.img.xz image。

我编译了psplash源代码(如https://groups.google.com/forum/#!msg/beagleboard/HRDjAtsPO68/dc7gIZTynQkJ中所述),现在psplash工作正常。

为了自动启动psplash,我创建了一个名为psplash.service的新系统服务,并使用命令" systemctl enable psplash.service "启用它。

问题是:当Beaglebone启动时,psplash推迟了一点,你可以看到几个 秒标准beaglebone标志。如何配置服务以便尽快运行psplash?

有没有比启动psplash程序的系统服务更好的方法? 这是系统服务文件:

[Unit]
Description=Splash screen

[Service]
WorkingDirectory=/home/root/
ExecStart=/usr/local/bin/psplash
SyslogIdentifier=psplash

[Install]
WantedBy=multi-user.target

1 个答案:

答案 0 :(得分:0)

默认情况下,系统服务具有依赖关系,因此删除依赖关系将允许它提前启动服务。

[Unit]
Description=Splash screen
DefaultDependencies=no

[Service]
Type=oneshot
ExecStart=/usr/local/bin/psplash

[Install]
WantedBy=basic.target

这会导致它在其他依赖项之前启动。您可以使用After=...Before=...在[Unit]块中添加依赖项。但要小心Before=...,因为它会等待psplash结束,因为psplash会自行不间断地运行,这可能会导致启动挂起。

这将导致服务在systemd进程中提前运行,但我仍在寻找其他方法让它更早开始。

相关问题