2014-03-28 95 views
1

我正試圖改變Beaglebone黑色閃屏。 我正在使用Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.12-beaglebone-2013.06.20.img.xz圖像。如何在beaglebone啓動的早期階段啓動服務?

我編譯了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 

回答

0

默認Systemd服務有依存關係,以便消除依賴將使其早日啓動該服務。

[Unit] 
Description=Splash screen 
DefaultDependencies=no 

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

[Install] 
WantedBy=basic.target 

這會導致它在其他依賴項之前啓動。您可以使用After=...Before=...在[單元]塊內添加相關性。但要小心Before=...,因爲它會等待psplash結束,因爲psplash會自行運行,可能會導致啓動掛起。

這將導致該服務在systemd過程中運行得更早,但我仍在尋找其他方式使其更早啓動。

+0

查看啓動手冊頁以查看顯示某些標準啓動同步點(目標)的良好圖表, – mdur