Ubuntu Server 16.04.02 mit Splash Screen und Kiosk-Modus

Ubuntu Server 16.04.02 mit Splash Screen und Kiosk-Modus

Ich versuche, einen Ubuntu Server 16.04.02 im Kioskmodus mit Chrome zu konfigurieren. Es funktioniert, aber ich kann keinen Begrüßungsbildschirm konfigurieren, anstatt Startmeldungen anzuzeigen.

Bisherige Arbeit

Schritte zum Erstellen meines Chrome Kiosks

  1. Ubuntu Server 16.04.02 mit OpenSSH-Server installiert
  2. Aktualisierung:sudo apt update && sudo apt upgrade -y
  3. Anzeigeserver + Windows-Manager:sudo apt install xorg openbox -y

    Hinweis: Ich habe versucht, Openbox zu installieren, --no-install-recommendsaber die Hälfte des Bildschirms (rechte Seite) war schwarz.

  4. Google Chrome

    sudo add-apt-repository 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main'
    wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
    sudo apt update && sudo apt install google-chrome-stable -y
    
  5. Erstellen Sie einen „Kiosk“-Benutzer:sudo adduser kiosk
  6. Skript für Chrome starten:

    sudo tee -a /home/kiosk/startchrome.sh <<EOF
    #!/bin/bash
    
    # Turn off DPMS (Display Power Management Signaling)
    xset -dpms
    
    # Disable screen saver blanking
    xset s off
    
    # Start OpenBox
    openbox-session &
    
    # Make sure Chrome is always started - restart if needed
    while true; do
      rm -rf ~/.{config,cache}/google-chrome/
      google-chrome --ignore-certificate-errors --kiosk --no-first-run --disable-infobars --disable-session-crashed-bubble --disable-translate         'http://localhost:8080'
    done
    EOF
    

    Machen Sie es ausführbar und führen Sie es beim Anmelden aus:

    sudo chmod +x /home/kiosk/startchrome.sh
    echo "/usr/bin/startx /etc/X11/Xsession /home/kiosk/startchrome.sh -- :0 &> /dev/null" | sudo tee -a /home/kiosk/.profile
    
  7. Automatische Anmeldung konfigurieren:

    Konfigurieren Sie Getty:

    sudo mkdir /etc/systemd/system/[email protected]/
    sudo tee -a /etc/systemd/system/[email protected]/autologin.conf <<EOF
    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty --skip-login --noissue --autologin kiosk --noclear %I $TERM
    Type=idle
    EOF
    

    Getty aktivieren:

    sudo systemctl enable [email protected]
    
  8. Bannermeldung beim Booten ausblenden

    sudo touch /home/kiosk/.hushlogin
    sudo chown kiosk:kiosk /home/kiosk/.hushlogin
    

Problem – X startet nicht

Ich möchte alle Startmeldungen entfernen. Ich habe GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"es versucht /etc/default/grub, aber jetzt sehe ich nur noch einen kleinen Cursor oben links auf dem Bildschirm. Chrome wird nicht mehr angezeigt?

Lösung

Der Kiosk-Benutzer muss zur Videogruppe hinzugefügt werden! Ich weiß nicht, warum es funktioniert hat, bevor ich Plymouth installiert habe:

    sudo usermod -a -G audio kiosk
    sudo usermod -a -G video kiosk

Hinweis: Ich habe mein eigenes Verfahren in Ubuntu 17.04 ausprobiert und musste diese zusätzlichen Schritte ausführen:

    sudo apt install xserver-xorg-legacy
    sudo dpkg-reconfigure xserver-xorg-legacy

Wählen Sie nun im Menü „Jeder“ aus. Ändern /etc/X11/Xwrapper.configund legen Sie dann Folgendes fest:

    needs_root_rights=yes
    allowed_users=anybody

Frage - Wie konfiguriere ich ein neues Design?

Ich möchte auch einen Splash Screen. Ich glaube, ich muss Plymouth installieren. Was muss ich installieren und wie konfiguriere ich es?

Lösung

Ich habe ein Design basierend auf dem Ubuntu-Logo erstellt und es dann kopiert /usr/share/plymouth/themes/:

    sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/MY_THEME/MY_THEME.plymouth 150
    sudo update-alternatives --config default.plymouth

Sie werden aufgefordert, ein Thema auszuwählen. Ich wähle meins aus und anschließend müssen Sie Folgendes tun:

    sudo update-initramfs -u
    sudo update-grub

Danke!

Antwort1

Die Startmeldungen werden durch vermieden GRUB_CMDLINE_LINUX_DEFAULT="quiet splash". Ich weiß allerdings nicht, warum der Cursor immer noch angezeigt wird.

Um Ihre Frage zu Plymouth zu beantworten: Sie möchten es installieren, indem Sie den Befehl ausführen sudo apt-get install plymouth. Dadurch sollte es auf dem System installiert sein. Dann möchten Sie den gesamten Inhalt von /usr/share/plymouth/themes/ubuntu-logoin einen anderen Ordner kopieren (vorzugsweise irgendwo im /usr/share/plymouth/themesVerzeichnis). Dann möchten Sie höchstwahrscheinlich das Bild ubuntu-logoin Ihrem neu kopierten Ordner ändern. Um die Änderung am neuen Startlogo vorzunehmen, bearbeiten Sie die Konfigurationsdatei für Plymouth unter /etc/alternatives/default.plymouth. Ändern Sie dort die Adresse für die beiden folgenden Zeilen in den neuen Ordner, den Sie zuvor erstellt haben:

ImageDir=/usr/share/plymouth/themes/ubuntu-logo
ScriptFile=/usr/share/plymouth/themes/ubuntu-logo/ubuntu-logo.script

So könnte ich die Zeilen beispielsweise folgendermaßen bearbeiten:

ImageDir=/usr/share/plymouth/themes/mytheme
ScriptFile=/usr/share/plymouth/themes/mytheme/ubuntu-logo.script

Speichern Sie dann die Konfiguration und starten Sie neu. Sie sollten jetzt Ihr Boot-Logo-Bild anstelle des normalen Ubuntu-Bilds haben.

Antwort2

Wenn Sie den Mauszeiger loswerden möchten, fügen Sie einfach -nocursor hinzu, wenn Sie startchrome.sh ausführbar machen (Machen Sie es ausführbar und führen Sie es beim Anmelden aus:), z. B.:

sudo chmod +x /home/kiosk/startchrome.sh  
echo "/usr/bin/startx /etc/X11/Xsession /home/kiosk/startchrome.sh -- -nocursor :0" | sudo tee -a /home/kiosk/.profile  

Antwort3

meine Einträge fürroden,können Sie Ihre mögliche Auflösung überprüfen mitsudo hwinfo --framebuffer

wenn Einträge gemacht werdensudo update-grub

Wenn man an Plymouth / Grub arbeitet und editiert, ist es nie ein Fehler, sudo update-initramfs -uhinterherzulaufen

verwandte Informationen