Silentboot und Bootsplash auf Raspberry Pi

Hallo zusammen

Heute beschreibe ich, wie ihr Silent boot (also einen Boot mit möglichst wenig Text auf dem Schirm) und einen Splashscreen beim Booten hinbekommt.

  1. Silent Boot:
    (alles als Root eingeloggt)
    nano /boot/cmdline.txt

    In der Datei müsst ihr jetzt einfach bei console von console=tty1 auf console=tty9 wechseln.
    In Zukunft wird beim Booten der ganze Text auf der Konsole tty9 angezeigt, auf die könnt ihr mit dem shortcut „Alt+F9“ wechseln.

  2. Bootsplash
    Zuerst einmal: Ich beschreibe hier nicht wie ihr einen „richtigen“, im Kernel eingebauten Splashscreen hinbekommt. Das war mir zuviel Aufwand. Alles was wir machen, ist während einem möglichst frühen Status des Startens ein Grafikprogramm aufzurufen und dort das entspr. Bild anzuzeigen;) Also, let’s go!(Alles als root eingeloggt)

    • als erstes „pacman -S fbv“ Dies installiert das Programm fbv mit dem per Kommandozeilenkommands und ohne XServer oder dgl. Bilder angezeigt werden können
    • nun müsst ihr euer Bild an einem Ort ablegen. Für dieses Beispiel sagen wir, dass das Bild „Bild.jpg“ heisst und auf „/Shared“ liegt.
    • Als nächstes werden wir einen systemd Service schreiben, der während dem Starten aufgerufen wird. Ich liefere hier euch die Vorlage, Erläuterungen foindet ihr direkt im Code.
    • Also nun „nano /lib/systemd/system/[dein_Name_für_den_Service].service
    • [Unit]
      Description = Splashscreen während dem Booten anzeigen #Einfach eine Beschreibung
      DefaultDependencies=no #Jeder Service wird einem „runlevel“ (halt target bei systemd) zugewiesen. Jedes target hat standardabhängigkeiten. Mit dieser Zeile blocken wir diese
      After=local-fs.target # der Service wird erst ausgeführt, wenn das lokale Filesystem läuft (macht Sinn, weil unsere Bilddatei ja in /Shared liegt)
      Before=base.target #Service soll vor „base“ ausgeführt werden

      [Service]
      type=oneshot #eine Art von service
      ExecStart=/bin/sh -c „fbv /Shared/Bild.jpg“ #Der eigentliche command. Hier könnte auch sonst was stehen
      RemainAfterExit=yes

      [Install]
      WantedBy=getty.target #Der Service wird dann in das Verzeichnis von getty.target gelinkt. Alles was dort drin liegt wird dann zu gegebener Zeit aufgerufen

    • Nun speichern mit „Ctrl + X
    • Nun müssen wir den Service aktivieren. Machen wir mit „systemctl enable [dein_Name_für_den_Service].service
    • rebooten und schauen ob es funktioniert hat
    • Deaktivieren geht mit „systemctl disable [dein_Name_für_den_Service].service

Notizen zu systemd-services

Manchmal ändert man im service-file das „WantedBy“ ohne den Service zuerst deaktiviert zu haben. Machen wir ein Beispiel:

Wir haben zuerst im .service-File die Zeile:
„WantedBy=getty.target reboot.target“

Dann ändern wir die Zeile in:

„WantedBy=getty.target“

Das Problem ist nun, dass die Verlinkung zu „reboot.target“ noch steht, weil wir nicht zuerst deaktiviert haben.Behelfen kann man sich, indem man mit „find / „*Teil_des_namens_des_files*“ alle Files und Links anzeigen lässt.
Dann kann man per rm die Links löschen die man nicht mehr will.

Ausserdem: Manchmal weis man nicht, bei wlechem target das Ganze ausgeführt werden soll. Man kann sich dann mit
ls /lib/systemd/system *.target“ die Liste der möglichen Targets anzeigen lassen =)😉

Falls jemand gerne mehr über systemd lessen, wissen will so sei ihm hiermit gedient:

Viel Spass noch, liebe Grüsse =)

Veröffentlicht in Raspberry Pi
2 comments on “Silentboot und Bootsplash auf Raspberry Pi
  1. ilor sagt:

    Hallo,
    Danke für die Infos hat alles geklappt nur sobald der autologin startet taucht wieder der text auf und das Bild verschwindet.
    Ich habe versucht den autologin und den xserver auch auf der tty9 zu starten. Das funktioniert auch. Nur komme ich dann in der tty1 auch zum normalen login und das bild verschwindet.

    Hast du eine idee wie ich das vermeiden kann?

    • natahori sagt:

      Hi Ilor

      Meinst du einfach auf dem login-screen bzw. der login-maske?
      Falls ja, dann ist das auch richtig so;) Du must für den Login-Screen ein seperates Hintergrundbild setzen. Wie du das machst hängt vom verwendeten Programm ab😉

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: