{"id":16,"date":"2024-08-17T10:51:47","date_gmt":"2024-08-17T08:51:47","guid":{"rendered":"https:\/\/wp.aushang.net\/anleitung\/?page_id=16"},"modified":"2024-11-26T23:40:42","modified_gmt":"2024-11-26T22:40:42","slug":"installation-linux","status":"publish","type":"page","link":"https:\/\/wp.aushang.net\/anleitung\/installation-linux\/","title":{"rendered":"Installation Linux"},"content":{"rendered":"\n<p>Diese erl\u00e4utert die Installation am Beispiel eines Raspberry Pi. Es l\u00e4sst sich aber leicht auf andere Debian-basierte Systeme oder \u00e4hnliche Linux-Betriebssysteme \u00fcbertragen. Getestet wurde die Anleitung mit einem Raspberry Pi 4 Model B Rev 1.2 mit 4GB Arbeitsspeicher und 64 GB SD-Karte.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"raspberry-pi-os-installieren\">Raspberry Pi OS installieren<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"installation\">Installation<\/h3>\n\n\n\n<p>Installiere Raspberry Pi OS mit dem <a href=\"https:\/\/www.raspberrypi.com\/software\/\">Raspberry&nbsp;Pi&nbsp;Imager<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"konfiguration\">Konfiguration<\/h3>\n\n\n\n<p>Diese Schritte sind nur bei einer manuellen Installation notwendig:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Melden Sie sich mit dem Benutzernamen <code>pi<\/code> und dem Passwort <code>raspberry<\/code> an.<\/li>\n\n\n\n<li>F\u00fchren Sie die folgenden Einstellungen \u00fcber <code>sudo raspi-config<\/code> \u201cgraphisch\u201d aus:<ol><li>Aktualisieren Sie zuerst das Werkzeug \u00fcber <code>Update<\/code>. Andernfalls kann es zu Abweichungen bei den hier angezeigten Nummern kommen.<\/li><li>Erweitern Sie das Dateisystem unter 6 &#8211; A1 (oder direkt <code>raspi-config --expand-rootfs<\/code>).<\/li><li>\u00c4ndern Sie das Passwort des Benutzers <code>pi<\/code> \u00fcber 1 &#8211; S3 (oder direkt mit <code>passwd<\/code>).<\/li><li>Wenn Sie WLAN nutzen m\u00f6chten, dann m\u00fcssen Sie das Ger\u00e4t initial per Kabel anschlie\u00dfen und unter 5 &#8211; L4 die Region <code>DE<\/code> einstellen.<\/li><li>W\u00e4hlen Sie unter 1 &#8211; S6 aus, dass beim Booten auf das Netzwerk gewartet werden soll. Dies verhindert, dass der Browser versucht Ihren Online-Aushang vor der Internetverbindung anzuzeigen.<\/li><li>Setzen Sie die Zeitzone unter 5 &#8211; L2 indem Sie erst Europa und dann Berlin ausw\u00e4hlen. Eine Synchronisation der Uhrzeit auch nach dem Fehlen einer Spannungsquelle ist bereits voreingestellt.<\/li><li>Erstellen Sie einen Kiosk-Benutzer mit <code>sudo adduser kiosk<\/code><ol><li>Lassen Sie diesen automatisch anmelden indem Sie dies unter 1 &#8211; S5 &#8211; B4 ausw\u00e4hlen und dies im Anschluss auf den neuen Nutzer \u00e4ndern: Bearbeiten Sie mit <code>sudo nano \/etc\/lightdm\/lightdm.conf<\/code> die Zeile <code>autologin-user=pi<\/code> zu <code>autologin-user=kiosk<\/code>.<\/li><li>F\u00fcgen Sie den Nutzer in die Gruppen <code>audio<\/code>, <code>video<\/code> und <code>netdev<\/code> etwa mit Hilfe des Befehls <code>sudo adduser kiosk audio<\/code> hinzu.<\/li><\/ol><\/li><li>\u00c4ndern Sie f\u00fcr eine sinnvollere Webseitendarstellung die Systemsprache mit 5 &#8211; L1 auf deutsch.<\/li><\/ol>\n<ol start=\"9\" class=\"wp-block-list\">\n<li>Aktivieren Sie, sofern gew\u00fcnscht, HDMI mit 4K und 60Hz mit 2 &#8211; D4 &#8211; V1. In 2 &#8211; D2 deaktivieren Sie noch die schwarzen R\u00e4nder. Sollte letzteres fehlschlagen \u00f6ffnen Sie <code>sudo nano \/boot\/config.txt<\/code> und pr\u00fcfen Sie, dass die Zeile <code>disable_overscan=1<\/code> ohne <code>#<\/code> und mit <code>1<\/code> dasteht.<\/li>\n\n\n\n<li>Deaktivieren Sie den Bildschirmschoner mit in 2 &#8211; D5 indem Sie die Frage verneinen.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Der Mauszeiger sollte automatisch ausgeblendet werden. Nutzen Sie dazu etwa <code>sudo apt-get install unclutter<\/code>. Mit <code>sudo nano \/etc\/default\/unclutter<\/code> l\u00e4sst sich etwa beim Schalter <code>-idle 1<\/code> die Sekunden bis zum Ausblenden von 1 auf etwa 5 hochstellen, um beim manuellen Eingreifen einen besseren \u00dcberblick zu haben.<\/li>\n\n\n\n<li>Stimmen Sie mit Ihrer IT-Abteilung die Aktualisierungsstrategie des Ger\u00e4tes ab. Auch wenn Debian nicht so wie Windows von Viren angegriffen wird, sind regelm\u00e4\u00dfige Updates dennoch zu empfehlen.<\/li>\n<\/ol>\n\n\n\n<p>Planen Sie eine Eingabe wie etwa \u00fcber ein Touchdisplay zuzulassen oder besteht die M\u00f6glichkeit das Unbefugte eine Tastatur anschlie\u00dfen, sollten Sie einige Tastenzuordnungen \u00e4ndern:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Erstellen Sie das Konfigurationsverzeichnnis <code>sudo mkdir \/home\/kiosk\/.config\/openbox<\/code>.<\/li>\n\n\n\n<li>Kopieren Sie dann die Datei <code>sudo cp \/etc\/xdg\/openbox\/lxde-pi-rc.xml \/home\/kiosk\/.config\/openbox\/lxde-pi-rc.xml<\/code>.<\/li>\n\n\n\n<li>Editieren sie diese mit <code>sudo nano \/home\/kiosk\/.config\/openbox\/lxde-pi-rc.xml<\/code>. Leeren Sie hier einfach den <code>&lt;keyboard&gt;&lt;\/keyboard&gt;<\/code>-Tag, um alle Tastenkombinationen zu unterbinden.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"troubleshooting\">Troubleshooting<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Problem<\/th><th>L\u00f6sung<\/th><\/tr><\/thead><tbody><tr><td>kein Ton<\/td><td>Es ist der analoge und nicht der digitale Ausgang ausgew\u00e4hlt. Gehen Sie unter <code>sudo raspi-config<\/code> auf 1 und dann S2. W\u00e4hlen Sie hier Audio aus. Hilft das nicht, \u00f6ffnen Sie <code>sudo nano \/boot\/config.txt<\/code> und pr\u00fcfen Sie, dass die Zeile <code>hdmi_drive=2<\/code> entkommentiert also ohne <code>#<\/code> ist.<\/td><\/tr><tr><td>YouTube ruckelt<\/td><td>4K-Monitore haben die Aufl\u00f6sung von 4 Full-HD-Monitoren. Pr\u00fcfen Sie, ob Sie die Aufl\u00f6sung reduzieren k\u00f6nnen oder einen leistungsst\u00e4rkeren Rechner nehmen k\u00f6nnen. In <a href=\"https:\/\/chrome.google.com\/webstore\/detail\/h264ify\/aleakchihdccplidncghkekgioiakgal\" target=\"_blank\" rel=\"noreferrer noopener\">h264ify<\/a> in Chromium k\u00f6nnen Sie noch die Wiedergabe von 60fps-Videos deaktivieren. Dies sorgt f\u00fcr einen optisch angenehmeren Eindruck.<\/td><\/tr><tr><td>Thermometer wird eingeblendet.<\/td><td>Ihr Raspberry Pi \u00fcberhitzt. Vermutlich spielen Sie l\u00e4ngere Zeit Videos auf einem 4k-Display ab. Verwenden Sie ein Geh\u00e4use mit besserer W\u00e4rmeabfuhr oder reduzieren Sie die Aufl\u00f6sung.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation-von-software\">Installation von Software<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"chromium\">Chromium ohne Client-Anwendung<\/h3>\n\n\n\n<p>Dier Abschnitt ist spannnd, wenn Sie keine Client-Anwendung nutzen m\u00f6chten.<\/p>\n\n\n\n<p>Chromium ist im Raspberry OS bereits vorinstalliert und sollte sonst mit <code>sudo apt-get install chromium-browser<\/code> installiert werden.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Erstelle das Verzeichnis f\u00fcr Autostart-Dateien<\/strong><\/li>\n<\/ol>\n\n\n\n<p>\u00d6ffne ein Terminal und f\u00fchre den folgenden Befehl aus:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p ~\/.config\/autostart<\/code><\/pre>\n\n\n\n<p>2. <strong>Erstelle die <code>.desktop<\/code>-Datei f\u00fcr Chromium im Vollbildmodus<\/strong><\/p>\n\n\n\n<p>F\u00fchre den folgenden Befehl aus, um die Datei zu erstellen und zu bearbeiten:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/.config\/autostart\/chromium-fullscreen.desktop<\/code><\/pre>\n\n\n\n<p>F\u00fcge den folgenden Inhalt in die Datei ein:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;Desktop Entry]\n\nType=Application\n\nName=Chromium Vollbild starten\n\nExec=chromium-browser --start-fullscreen https:\/\/wp.aushang.net\/demo?secret=geheim\n\nTerminal=false<\/code><\/pre>\n\n\n\n<p>Speichere die Datei und schlie\u00dfe den Editor: Dr\u00fccke <code>CTRL + X<\/code>, dann <code>Y<\/code>, und schlie\u00dflich <code>Enter<\/code>, um die \u00c4nderungen zu speichern.<\/p>\n\n\n\n<p>bei einem Touch-Ger\u00e4t ersetezen Sie <code>--start-fullscreen<\/code> durch <code>--kiosk<\/code>. Erg\u00e4nzen Sie noch die folgenden Paramater hinzu: <code>--autoplay-policy=no-user-gesture-required --noerrdialogs --disable-session-crashed-bubble --disable-infobars --disable-restore-session-state<\/code> . Deren genaue Bedeutung k\u00f6nnen Sie etwa bei [<a href=\"https:\/\/github.com\/Hugo22O\/chrome-autoplay\" target=\"_blank\" rel=\"noreferrer noopener\">1<\/a>] und [<a href=\"https:\/\/peter.sh\/experiments\/chromium-command-line-switches\/\" target=\"_blank\" rel=\"noreferrer noopener\">2<\/a>] nachlesen. Hat das Display keine Eingabem\u00f6glichkeiten, so kann man <code>--kiosk<\/code> auch durch <code>--start-fullscreen<\/code> ersetzen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"client-anwendung\">Client-Anwendung<\/h3>\n\n\n\n<p>Wenn Sie eine weitergehende Integration in Ihr Betriebssystem w\u00fcnschen, installieren Sie unsere Client-Anwendung. Diese erhalten Sie von uns in einem ZIP-Archiv zugeschickt. Hiermit ist es etwa m\u00f6glich Screenshots auf dem System zu erm\u00f6glichen. Sie k\u00f6nnen dieses Kapitel \u00fcberspringen, wenn Sie diese Funktion nicht ben\u00f6tigen.<\/p>\n\n\n\n<p>Entpacken Sie das ZIP-Archiv in <code>\/home\/kiosk\/aushang<\/code>. F\u00fchren Sie anschlie\u00dfend folgende Befehle aus:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># installs nvm (Node Version Manager)\ncurl -o- https:\/\/raw.githubusercontent.com\/nvm-sh\/nvm\/v0.40.0\/install.sh | bash\n\n# download and install Node.js (you may need to restart the terminal)\nnvm install 20\n\n# verifies the right Node.js version is in the environment\nnode -v # should print `v20.18.1`\n\n# verifies the right npm version is in the environment\nnpm -v # should print `10.7.0`\n\n# install node-Packages\nnpm install --unsafe-perm\n\n# allow non-admin user to reboot and shutdown\nsudo chmod a+s \/sbin\/shutdown<\/code><\/pre>\n\n\n\n<p><strong>Erstelle das Verzeichnis f\u00fcr Autostart-Dateien<\/strong><\/p>\n\n\n\n<p>\u00d6ffne ein Terminal und f\u00fchre den folgenden Befehl aus:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p ~\/.config\/autostart<\/code><\/pre>\n\n\n\n<p>Erstelle die <code>.desktop<\/code>-Datei f\u00fcr die Node.js-Anwendung: F\u00fchre den folgenden Befehl aus, um die Datei zu erstellen und zu bearbeiten:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/.config\/autostart\/node-app.desktop<\/code><\/pre>\n\n\n\n<p>F\u00fcge den folgenden Inhalt in die Datei ein:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;Desktop Entry]\n\nType=Application\n\nName=Node.js App starten\n\nExec=\/home\/pi\/.nvm\/versions\/node\/v20.18.1\/bin\/node \/home\/pi\/aushang\/app.js\n\nTerminal=true<\/code><\/pre>\n\n\n\n<p>Speichere die Datei und schlie\u00dfe den Editor: Dr\u00fccke <code>CTRL + X<\/code>, dann <code>Y<\/code>, und schlie\u00dflich <code>Enter<\/code>, um die \u00c4nderungen zu speichern.<\/p>\n\n\n\n<p>Tipp: Mit <code>which node<\/code> oder <code>nvm which current<\/code> kann man den aktuellen Pfad auslesen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fernsteuerung<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Anydesk<\/h3>\n\n\n\n<p>AnyDesk <a href=\"https:\/\/support.anydesk.com\/knowledge\/supported-operating-systems\">unterst\u00fctzt nicht alle Raspian OS<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Raspberry Pi Connect<\/h3>\n\n\n\n<p>\u00dcber <a href=\"https:\/\/www.raspberrypi.com\/software\/connect\/\">Rapberry Pi Connect<\/a>, l\u00e4sst sich der eigene PI auch fernsteuern.<\/p>\n\n\n\n<p>Ganz wichtig ist dabei zu Beginn das Image zu aktualisieren, da etwa im aktuellen Image, sonst die Software abst\u00fcrzt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt upgrade\nsudo apt install rpi-connect<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Diese erl\u00e4utert die Installation am Beispiel eines Raspberry Pi. Es l\u00e4sst sich aber leicht auf andere Debian-basierte Systeme oder \u00e4hnliche Linux-Betriebssysteme \u00fcbertragen. Getestet wurde die Anleitung mit einem Raspberry Pi 4 Model B Rev 1.2 mit 4GB Arbeitsspeicher und 64 GB SD-Karte. Raspberry Pi OS installieren Installation Installiere Raspberry Pi OS mit dem Raspberry&nbsp;Pi&nbsp;Imager Konfiguration [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-16","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/pages\/16","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/comments?post=16"}],"version-history":[{"count":4,"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/pages\/16\/revisions"}],"predecessor-version":[{"id":23,"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/pages\/16\/revisions\/23"}],"wp:attachment":[{"href":"https:\/\/wp.aushang.net\/anleitung\/wp-json\/wp\/v2\/media?parent=16"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}