由于新版本2017-04版本樹(shù)莓派stretch中的plymouth.ignore-serial-consoles會(huì)指定了tty1,從而導(dǎo)致了樹(shù)莓派開(kāi)機(jī)自定義圖片顯示時(shí),不能跳轉(zhuǎn)至tty3,可以根據(jù)設(shè)置plymouth.ignore-serial-consoles的主題風(fēng)格,來(lái)到達(dá)我們想要的風(fēng)格 sudo plymouth-set-default-theme -l
查看相關(guān)的主題 然后通過(guò)設(shè)置 sudo plymouth-set-default-theme details
設(shè)置相應(yīng)的主題風(fēng)格,從而到達(dá)開(kāi)機(jī)屏蔽一切顯示(只顯示我們自己的圖片的目的) 詳細(xì)請(qǐng)看: http:///2017/04/04/getting-the-most-out-of-plymouth-or-how-to-make-rasbian-jessie-to-boot-with-a-full-splash-screen/ 1.通過(guò)將行添加 disable_splash=1到/boot/config.txt來(lái)禁用Raspberry Pi’顏色測(cè)試’ 。
2.通過(guò)添加 logo.nologo到/boot/cmdline.txt來(lái)禁用屏幕角落的Raspberry Pi標(biāo)志。
在 rootwait 后面加入 quiet splash plymouth.ignore-serial-consoles 3.console=tty1改為console=tty3 在/boot/cmdline.txt末尾添加loglevel=3 從而跳轉(zhuǎn)界面,屏蔽樹(shù)莓派在初始化中的代碼流顯示。 示例cmdline.txt dwc_otg.lpm_enable=0 console=tty3 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles logo.nologo loglevel=3 disable_overscan=1
設(shè)置啟動(dòng)屏幕 設(shè)計(jì)您的閃屏圖像并將其放置在易于閱讀的位置。 安裝fbi,framebuffer圖像查看器,以root身份運(yùn)行。 sudo apt-get install fbi 在root權(quán)限下創(chuàng)建 /etc/systemd/system/splashscreen.service 注意網(wǎng)上有很多的教程是沒(méi)有換行的這里service需要換行 [Unit]
Description=Splashscreen
DefaultDependencies=no
After=basic.target
[Service]
ExecStart=/usr/bin/fbi -d /dev/fb0 --noverbose -a /opt/splash.png
StandardInput=tty
StandardOutput=tty
[Install]
WantedBy=sysinit.target
根據(jù)需要,更換/opt/splash.png靜態(tài)開(kāi)機(jī)畫(huà)面圖像的存儲(chǔ)路徑。 -d /dev/fb0 選項(xiàng)將告訴fbi哪個(gè)幀緩沖區(qū)顯示圖像。 –noverbose將屏幕底部的fbi’狀態(tài)欄’。 -a將允許fbi自動(dòng)選擇圖像的正確縮放級(jí)別。如果您的圖像已經(jīng)處于正確的顯示分辨率,則可以省略此選項(xiàng)。 FBI希望獲得一個(gè)TTY,所以StandardInput和StandardOutput選項(xiàng)將允許這一點(diǎn)。您也可以省略這些選項(xiàng),并將-T標(biāo)志傳遞給fbi,指定要使用的tty的編號(hào)。 該DefaultDependencies選項(xiàng)將覆蓋systemd在啟動(dòng)過(guò)程中延遲啟動(dòng)服務(wù)的默認(rèn)行為(因?yàn)榇蠖鄶?shù)普通服務(wù)需要訪問(wèn)資源),并且該WantedBy選項(xiàng)將導(dǎo)致fbi在引導(dǎo)過(guò)程的早期加載,已經(jīng)準(zhǔn)備好了,通過(guò)通過(guò)以root用戶身份運(yùn)行 systemctl enable splashscreen,使服務(wù)在引導(dǎo)時(shí)運(yùn)行(開(kāi)機(jī)自啟動(dòng)) 刪除黑色邊框 您可能會(huì)碰到這樣一個(gè)問(wèn)題,那里似乎是一個(gè)黑色的邊框畫(huà)在閃屏旁邊。這實(shí)際上是整個(gè)幀緩沖區(qū)周圍的硬件級(jí)黑色邊框,可以通過(guò)添加 disable_overscan=1到/boot/config.txt來(lái)禁用。 相關(guān)指令說(shuō)明(方便查看相關(guān)進(jìn)程)
systemd-analyze //查看開(kāi)機(jī)啟動(dòng)耗時(shí)
systemctl enable splashscreen //開(kāi)啟開(kāi)機(jī)自啟動(dòng)
systemctl disable splashscreen //關(guān)閉開(kāi)機(jī)自啟動(dòng)
systemctl status splashscreen //查看服務(wù)當(dāng)前狀態(tài) 當(dāng)創(chuàng)建服務(wù)后,可以 systemctl start splashscreen(開(kāi)啟服務(wù)后),systemctl status splashscreen(查看相關(guān)服務(wù)的當(dāng)前狀態(tài)),systemctl stop splashscreen (停止相關(guān)的服務(wù)) 靜態(tài)動(dòng)畫(huà)中主要的是開(kāi)機(jī)顯示圖片的splashscreen.service 在root的權(quán)限中輸入 systemctl list-unit-files
可以看到內(nèi)部相關(guān)的進(jìn)程等那些是自啟動(dòng) WantedBy=sysinit.target 當(dāng)執(zhí)行到這個(gè)target是同時(shí)執(zhí)行我們的splashscreen.service的服務(wù),After=graphical.target在進(jìn)入圖形界面前 比如你想一上電的時(shí)候,你就可以運(yùn)行的你開(kāi)機(jī)畫(huà)面的時(shí)候 你可將你的開(kāi)機(jī)服務(wù)掛載到basic.target (WantedBy=basic.target)當(dāng)basic.target啟動(dòng)時(shí),你的開(kāi)機(jī)也啟動(dòng) 有時(shí)候我們會(huì)發(fā)現(xiàn),我們的服務(wù)并沒(méi)有打開(kāi),這個(gè)時(shí)候我們可以 sudo raspi-config
打開(kāi) 3.Boot Options 使能B3.Splash Screen
|