Skip to content

LibreElec Kodi - Screenshot via SSH erstellen und System steuern

LibreELEC oder auch OpenELEC dürfte Fans von freien Medienplayern ein Begriff sein. Ich selbst habe LibreELEC im Einsatz und bin recht zufrieden damit.

Da ich LibreELEC direkt am Fernseher betreibe und lediglich über die Fernbedienung steuere, vermisse ich manchmal Funktionen die über die Tastatur kein Problem darstellen. Allerdings führen viele Wege nach Rom. Dieses gilt zum Beispiel für das Erstellen eines Bildschirm Fotos.

Screenshot via SSH erstellen

Normalerweise kann ein Screenshot mit Strg+s über die Tastatur erstellt werden. Ist allerdings keine vorhanden, geht dies auch fix via SSH.

Dazu muss der Dienst natürlich aktiv sein.

kodi-sshSobald SSH aktiv ist, kann auf der Konsole gearbeitet werden. Kodi bringt dazu den Befehl kodi-send mit. Dieser erlaubt es verschiedene Befehle an das System zu senden unter anderem auch den Bildschirm abzufotografieren:

kodi-send --host=127.0.0.1 -a "TakeScreenshot"

Der Host muss auf dem lokalen Prompt nicht zwingend angegeben werden. Ich habe es der Vollständigkeit mit angegeben.

Kodi via SSH steuern

Dieser wird erst relevant, wenn der Befehl über Netzwerk versendet wird, Beispiel:

ssh root@192.168.10.19 'kodi-send --action="PlayerControl(Stop)"'

SSH sollte somit zwingend mit einem neuen Passwort versehen werden, wenn es aktiv ist. Das Default Passwort wäre übrigens "libreelec"

Das Kommando erlaubt weitere Funktionen. Die Hilfe kann mit --help aufgerufen werden.

kodi-send

Weitere Kommandos wären beispielsweise:

Laufende Wiedergabe anhalten

kodi-send --action="PlayerControl(Start)"

System ausschalten

kodi-send --action="Quit"

Plugin installieren (Zuständiges Repository sollte aktiv sein)

kodi-send --action="InstallAddon(plugin.video.kikamediathek)"

Eine Liste aller möglichen Befehle findet ihr hier.

 

Viel Spaß beim Probieren

checkrestart vs. needrestart - alte Prozesse nach Paketupdates erkennen

Wie sich Linux Systeme aktualisieren lassen war auf ITrig bereits zu lesen. Doch nur mit Aktualisieren ist es nicht getan, hin und wieder sollten Prozesse neu gestartet werden deren Installationspakete aktualisiert wurden. Dazu bietet Ubuntu neben dem neuen Kernel Live Patching verschiedene Möglichkeiten.

checkrestart

Um Systeme auf anstehende Neustarts zu kontrollieren gibt es verschiedene Tools, eines altbekanntes ist checkrestart. Dieses ist im debian-goodies Paket enthalten.

Das Programm macht Nichts anderes als nach veralteten Libraries bei noch aktiven Prozessen zu suchen.

Findet es welche schlägt es den Neustart mit dem dazugehörigen Befehl vor.

sudo apt-get install debian-goodies
sudo checkrestart
Found 7 processes using old versions of upgraded files
(7 distinct programs)
(5 distinct packages)

Of these, 5 seem to contain systemd service definitions or init scripts which can be used to restart them.
The following packages seem to have definitions that could be used
to restart their services:
lvm2:
        447     /sbin/lvmetad
openssh-server:
        1160    /usr/sbin/sshd
dbus:
        863     /usr/bin/dbus-daemon
accountsservice:
        945     /usr/lib/accountsservice/accounts-daemon
policykit-1:
        1001    /usr/lib/policykit-1/polkitd

These are the systemd services:
systemctl restart accounts-daemon.service
systemctl restart polkitd.service

These are the initd scripts:
service lvm2-lvmpolld restart
service lvm2 restart
service lvm2-lvmetad restart
service ssh restart
service dbus restart

checkrestart

check-enhancements

Ebenfalls praktischer Teil des debian-goodies Pakets ist check-enhancements.

Damit lassen sich Erweiterungen für bereits installierte Pakete finden.

 

check-enhancements postgresql
postgresql => check-postgres:     Installed: (none)       Candidate: 2.24.0-3.pgdg18.04+1
postgresql => pgpool2:    Installed: (none)       Candidate: 3.7.5-2.pgdg18.04+1
postgresql => pgtop:      Installed: (none)       Candidate: 3.7.0-18-gbbf1f12-2.pgdg18.04+1

needrestart

Das debian-goodies Paket hat schon ein paar Jahre auf dem Buckel, daher gibt es inzwischen neuere Varianten, um anstehende Neustarts zu prüfen. 

Eines davon ist needrestart, es funktioniert ähnlich wie checkrestart, wird aber aktiv weiterentwickelt und unterstützt Docker oder LXC. Zusätzlich ist es nicht an Debian gebunden, sondern auch für andere Distributionen verfügbar.

Needrestart wird von Thomas Liske entwickelt und aktuell in der Version 3.1.x ausgeliefert. Es hat eine Unterstützung für systemd an Bord, läuft aber auch unter System V init.

sudo apt install needrestart
sudo needrestart
Scanning processes...
Scanning processor microcode...
Scanning linux images...

Running kernel seems to be up-to-date.

The processor microcode seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

needrestart

Wie es sich für aktuelle Tools gehört, hat das Tool auch eine Nagios/CheckMK bzw. Icinga Ausgabe.

sudo needrestart -p -l
OK - Kernel: 4.15.0-36-generic, Microcode: CURRENT, Services: none, Containers: none, Sessions: none|Kernel=0;0;;0;2 Microcode=0;0;;0;1 Services=0;;0;0 Containers=0;;0;0 Sessions=0;0;;0

Konfiguration und Einstellungen können bei Bedarf unter /etc/needrestart/needrestart.conf vorgenommen werden.

Das Tool bietet ebenfalls einen interaktiven Modus. Nach einer Installation prüft das Tool nach jedem apt upgrade automatisch auf Neustarts von Prozessen und liestet diese auf, ohne sie neu zu starten.

needrestart-kernel


Bordmittel

Die einfachste Variante einen nötigen Neustart des Systems zu erkennen besteht im Auslesen des Wertes cat /var/run/reboot-required .

Den Wert *** System restart required *** zeigt Ubuntu im Loginprompt an, wenn ihr über einen SSH Konsole zugreift.

Werden auch die betroffenen Pakete benötigt kann in /var/run/reboot-required.pkgs geschaut werden

cat /var/run/reboot-required                                                                                                                                                                            *** System restart required ***
cat /var/run/reboot-required.pkgs


 

Raspberry Pi 3 Kiosk - Autologin unter Raspbian Jessie, Stretch oder Buster

Nachdem der Artikel über den Chromium Kiosk Modus für rege Diskussionen sorgt, möchte ich noch mal kurz auf den Autologin von Raspbian hinweisen.

Dieser funktioniert unter allen aktuellen Versionen, sowohl unter stable als auch beta mit dem Befehl 

sudo raspi-config

Danach muss im Menü unter Bootoptionen

Raspbian-desktop-autologin

der Bootmodus ausgewählt werden. In diesem Fall Desktop / CLI.

raspbian-autologin

Nun kann B4 Autologoin aktiviert werden und Raspbian meldet den User Pi automatisch an.

raspbian_autologinIch empfehle dringend das Standardpasswort des Pi Nutzers mit passwd zu ändern.

Update von Jessie auf Stretch

Falls auf ein neues System umgestellt werden soll, ist ein Update auf das aktuelle System Stretch (Buster ist noch Beta) möglich. Eine Neuinstallation ist aber meist der bessere Weg.

sudo apt-get update
sudo apt-get -y dist-upgrade
sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list
sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/raspi.list
sudo apt-get update
sudo apt-get -y dist-upgrade

 

Raspberry Pi 3 Kiosk - Chromium Autostart im Vollbildmodus einrichten

Raspberry Pi und Raspbian bieten viele Einsatzmöglichkeiten. Eine davon ist der Betrieb in einem Kiosk Modus, Voraussetzung dafür ist der Start im Vollbildmodus. Das Thema hatte ich bereits auf dem Blog (siehe unten), somit seht das als einen aktualisierten Artikel an. In diesem Beispiel soll ein Browser eine Webseite oder Webapp automatisch im Vollbildmodus aufrufen 

Die hier verwendeten Einstellungen wurden auf einem RaspberryPi 3 mit Raspbian (Debian Jessie) getestet.

raspberrypi

Installation der benötigten Pakete

sudo apt-get install chromium-browser
sudo apt-get install unclutter

Letzteres Paket erlaubt es die Maus auzublenden.

Aktivieren des Vollbildmodus

Dieser lässt sich mit wenigen Anpassungen und einem Installalierten Chromium Browser realisieren.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
# Bildschirmschoner deaktivieren
#@xscreensaver -no-splash  
@xset s off
@xset -dpms
@xset s noblank

# lädt Chromium im Vollbild bei einem Neustart
@chromium-browser --incognito --kiosk https://itrig.de/kiosk  


Mauszeiger ausblenden

Die bestehende Datei muss lediglich um einen weiteren Befehl erweitert werden.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
@unclutter
@xset s off
@xset -dpms
@xset s noblank
@chromium-browser --incognito --kiosk https://itrig.de/kiosk 

Fazit

Die hier dargestellte Methode stellt eine von vielen dar, jedoch eine die relativ schnell zum Ziel führt. Weitere Methoden und Möglichkeiten hatte ich bereits im Artikel Kiosksysteme für Alle erwähnt.

[Update] Autostart verzögern

Eine Startverzögerung würde über ein Skript chromium_start.sh realisiert werden.

    #!/bin/bash
    #Chromium Startverzoegerung
    sleep 15
    chromium-browser --incognito --kiosk https://itrig.de/kiosk

und unter /home/pi/.config/lxsession/LXDE-pi/autostart aufrufen.

@/home/pi/chromium_start.sh

PS: Berechtigung chmod +x nicht vergessen

 

Wichtiges Update für Kodi (17.3) und LibreELEC (8.0.3) sofort einspielen

Durch die Samba Server Lücke, welche im Zuge von WannaCry auch auf Linux Systemen entdeckt wurde (Artikel), ist es zwingend nötig eure Mediensystem auf einen aktuellen Stand zu bringen. Besonders, da bereits ein Exploit im Umlauf ist, sollte alles auf Vordermann gebracht werden.

 

Update LibreELEC

LibreELEC wurde zwar ohne den wohl benötigen Drucker Support kompiliert, hat aber dennoch das Update (Krypton) v8.0.3 MR bereits integriert.

libre-ellec-update

Ein Update lässt sich entweder direkt via Oberfläche installieren oder ihr kopiert die aktuelle Version in den Update Ordner im Dateisystem (/storage/.update).

Nach einem Reboot erkennt das System automatisch die geänderte Version und installiert diese.

 

Download LibreELEC

Update Kodi

Die aktuelle Kodi Version findet ihr hier. In Libre ELEC ist diese bereits integriert

Download LibreELEC

Update OpenELEC

Für OpenELEC steht momentan kein Update zur Verfügung. Das System wird noch mit Samba 4.6.3 betrieben, es ist also Vorsicht geboten.