Installationsanleitung für Bullseye [ Grundlage Debian 11 Light Version ]

Installation auf einem anderen Debian Linux System

Moderator: Ulrich

Forumsregeln
Bitte immer im Betreff die Hardware und die Softwareversion angeben! Für jede unterschiedliche Version einen eigenen Thread! Es gibt einfach unterschiedliche Probleme bei den einzelnen Versionen.
Benutzeravatar
Ulrich
Administrator
Beiträge: 5568
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 125 Mal
Danksagung erhalten: 837 Mal

Installationsanleitung für Bullseye [ Grundlage Debian 11 Light Version ]

Beitrag von Ulrich »

Letzte Bearbeitung 05.06.2023 15:00 Uhr

Hier ist eine Anleitung, wie man die Solaranzeige auf einem anderen Linux (Debian) installieren kann.
Experten werden es mit dieser Anleitung auch auf anderen Linux Versionen lauffähig bekommen. In diesem Fall wird es aber mehrere Unterschiede zu dieser Installation geben.
Bitte möglichst sich genau an die Punkte halten. Manche sind entscheidend für den Erfolg. Bitte keinen Punkt überspringen, auch wenn es logischer erscheint!
Grundvoraussetzung ist ein Debian "light" Betriebssystem. Deshalb wird hier der "light Desktop" LXDE installiert. Mehr benötigt die Solaranzeige nicht. Der Desktop benötigt wenig Resourcen.

Es wird davon ausgegangen, dass man mit root eingeloggt ist.
  1. SSH Zugriff über das Netzwerk auf den Rechner gewähren
  2. User "pi" mit Password "solaranzeige" anlegen. [ useradd -m -s /bin/bash -U pi ]
    Falls es ein User "pi" schon gibt kann dieser auch benutzt werden. In diesem Fall muss das vorhandene Passwort nicht geändert werden.
  3. Falls das Paket "sudo" nicht installiert ist, dann nachinstallieren. [ apt install sudo apt-utils ]
  4. Den Hostnamen auf "solaranzeige" einstellen. Datei: /etc/hostname
  5. Die Sprache auf Deutsch einstellen de_DE.UTF-8 [ raspi-config ]
  6. Timezone auf EUROPE / Berlin stellen
  7. Keybord auf Deutsche Tastatur stellen
  8. user "root" das Password "solar.2016" geben [ passwd root ]
  9. Auf der Konsole [ apt update ] eingeben.
  10. mc Editor installieren [ apt install mc ]
  11. ssh Server für root öffnen Datei /etc/ssh/sshd_config ändern:
    "PermitRootLogin yes"
    "AddressFamily inet"
    "UseDNS no"
  12. Folgende Pakete installieren [ apt install sysv-rc-conf avahi-daemon autossh htop cron syslog-ng lxterminal net-tools ]
  13. Desktop light Installieren [ apt install lxde-core lxappearance ]
  14. Einrichten, dass der Desktop automatisch startet beim Hochfahren des PC's und user "pi" automatisch sich einloggt.
  15. Neu booten!
  16. Checkpoint! Keine Fehler aufgetreten? Der Desktop muss zu sehen und Benutzer "pi" muss eingeloggt sein. Dann weiter..
  17. Prüfen mit Eingabe "hostname" auf der Konsole ob das Gerät sich mit "solaranzeige" meldet.
  18. Auf der Konsole [ apt-get install firefox-esr x11-xserver-utils unclutter lighttpd nmap ] eingeben
  19. In der Datei /home/pi/.config/lxsession/LXDE/autostart bitte den Inhalt ändern:
    -------------------
    @pcmanfm --desktop --profile LXDE
    @xset s off
    @xset -dpms
    @xset s noblank
    @icewease
    @firefox -kiosk http://localhost:3000
    -------------------
  20. Folgende Pakete installieren: [ apt install php php-cgi php-pear php-curl php-gd php-sqlite3 php-fpm php-ssh2 php-dev ]
  21. Folgende Pakete installieren: [ apt install influxdb influxdb-client screen expect sqlite3 hwinfo hfsutils sshpass wget lshw mbpoll ]
  22. Folgendes auf der Konsole ausführen: [ wget -q -O - https://packages.grafana.com/gpg.key | apt-key add - ]
  23. Folgendes auf der Konsole ausführen: [ curl https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/grafana-archive-keyrings.gpg >/dev/null ]
  24. Folgendes auf der Konsole ausführen: [ echo "deb [signed-by=/usr/share/keyrings/grafana-archive-keyrings.gpg] https://apt.grafana.com stable main" | tee /etc/apt/sources.list.d/grafana.list ]
  25. Auf der Konsole [apt update ] eingeben.
  26. Folgende Pakete installieren: [ apt install grafana ]
  27. Auf der Konsole ausführen: [ systemctl enable grafana-server]
  28. Auf der Konsole ausführen: [ systemctl enable influxdb]
  29. Neu booten!
  30. Checkpoint! Es muss nach dem Booten Grafana im Kioskmode zu sehen sein. Keine Fehler aufgetreten? Dann weiter..
  31. Auf der Konsole [ influx ] eingeben und dann
    [ create database solaranzeige ]
    [ create database steuerung ]
    [ quit ]
    -------------------
  32. In der Datei /etc/grafana/grafana.ini folgendes ändern:
    ---------------------------------------------------------------------------
    [panels]
    # If set to true Grafana will allow script tags in text panels. Not recommended
    disable_sanitize_html = true

    #################################### Anonymous Auth ######################
    [auth.anonymous]
    enabled = true

    # Organization name that should be used for unauthenticated users
    org_name = Solaranzeige

    # Role for unauthenticated users, other valid values are `Editor` and `Admin`
    org_role = Viewer

    # Hide the Grafana version text from the footer and help tooltip for unauthenticated users (default: false)
    ;hide_version = false


    #################################### Security ####################################
    [security]
    # disable creation of admin user on first start of grafana
    ;disable_initial_admin_creation = false

    # default admin user, created on startup
    admin_user = admin

    # default admin password, can be changed before first start of grafana, or in profile settings
    admin_password = solaranzeige

    -------------------
  33. Mit "admin" und "admin" in Grafan einloggen. Dabei das Kennwort auf "solaranzeige" ändern und den Namen der Organisation auf "Solaranzeige" ( Zahnrad links -> Preferences -> Organisation )
  34. Folgende Folder in Grafana anlegen: => unter Dashboards -> + Neuer Ordner
    Heizungen
    Relais
    Wechselrichter
    Laderegler
    Batterie-Management-Systeme
    Wallboxen
    Stromzähler
    Sonstige
    -------------------
  35. In Grafana die beiden Datenbanken bekannt machen Configuration->Data sources -> Add data sources -> InfluxDB
    influxDB: solaranzeige -> Grafana: Solaranzeige
    influxDB: steuerung -> Grafana: Steuerung
  36. Alle, oder die nötigen Standard Dashboards von hier importieren: viewtopic.php?t=188
    Es gibt dazu auch eine Anleitung: [ download/Grafana_und_Datenbanken.pdf ]
  37. Paket installieren: [ apt install mosquitto mosquitto-clients libmosquitto-dev ]
  38. Auf der Konsole ausführen [ pecl install mosquitto-alpha ]
  39. Eine Datei "mqtt-solaranzeige.conf" neu anlegen im Verzeichnis /etc/mosquitto/conf.d mit folgendem Inhalt:
    --------------------------------------------
    allow_anonymous true
    listener 1883
    -------------------
  40. Überprüfen mit folgenden Eingaben auf der Konsole:
    [ systemctl restart mosquitto.service ]
    [ nmap -p 1883 localhost ] oder [ nmap -p 1883 <IP des Raspberry> ]
    Der Port 1883 sollte als offen angezeigt werden.
  41. In die /etc/php/7.4/cli/php.ini folgenden Eintrag machen: "extension=mosquitto.so"
  42. Auf der Konsole folgendes eingeben: [ php -i ]
    In der Ausgabe muss folgendes enthalten sein:
    -------------------------------------------------------
    mosquitto
    Mosquitto support => enabled
    Compiled as dynamic module
    libmosquitto version => 2.0.11
    Extension version => 0.4.0

    pdo_sqlite
    PDO Driver for SQLite 3.x => enabled
    SQLite Library => 3.34.1
    -------------------
  43. In der Konsole eingeben: [ crontab -e ] und folgende Einträge machen:
    ----------------------------------------------------------------
    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
    MAILTO=""

    #@reboot sleep 20 && /usr/local/bin/support >/dev/null

    @reboot /var/www/html/usb_init.php >/dev/null

    * * * * * /var/www/html/regler_auslesen.php >/dev/null
    * * * * * /var/www/html/checkreboot.sh >/dev/null
    20,50 * * * * /var/www/html/wetterdaten.php >/dev/null
    * * * * * /var/www/html/mqtt_prozess.php >/dev/null
    55 23 * * * /var/www/html/wartung.php >/dev/null
    #* * * * * /var/www/html/wallbox_steuerung.php >/dev/null
    #01 */4 * * * /var/www/html/awattar.php >/dev/null
    #* * * * * /var/www/html/automation.php >/dev/null
    #* * * * * /var/www/html/strg-control.php >/dev/null
    -------------------
  44. in der Konsole eingeben: [ sudo ./verzeichnisse-anlegen.sh ] Der Script kann hier im Anhang heruntergeladen werden. Er muss mit den Rechten für "ausführbar" versehen werden. Unbedingt mit sudo ausführen, da man Root Rechte benötigt. Es ist wichtig, dass dieser Script durchläuft, da hier die Rechte von Dateien und Verzeichnissen eingestellt werden.
  45. Auf der Konsole [ /usr/local/bin/update ] eingeben. (Normaler Solaranzeigen update)
  46. Folgende 2 Dateien:
    10-fastcgi.conf
    15-fastcgi-php.conf
    vom Verzeichnis "/etc/lighttpd/conf-available" in das Verzeichnis "/etc/lighttpd/conf-enabled" kopieren.
    -------------------
  47. Auf der Konsole [ apt upgrade ] eingeben
  48. Den Path erweitern:
    in die Datei /home/pi/.bashrc und in die Datei /root/.bashrc am Ende einfügen:

    PATH=/usr/local/bin:/solaranzeige:$PATH
    export PATH
    -------------------
  49. Neu booten!
  50. Checkpoint! Jetzt sollte man mit der "normalen" Konfiguration der Solaranzeige beginnen können, so wie es in dem Installationsdokument beschrieben ist.

Jeder Punkt ist einzeln zu sehen und muss erst erfolgreich beendet werden, bevor man zum nächsten übergeht. Wird ein Punkt übersprungen, kann das unerwartete Folgen haben.
Wer die Anleitung nutzt und auf Probleme bei seinem Betriebssystem stößt, bitte im Betreff immer die Hardware und das Betriebssystem angeben. Im Text sich bitte auf den Listenpunkt beziehen. Probleme sind meist Versionsabhängig.

Schön wäre es, wenn jemand einmal eine Alternative wie Banana Pi ausprobieren würde.

Die Anleitung wird bei Bedarf noch verfeinert und ergänzt. Bitte den Script immer neu herunterladen, wenn man ihn benötigt! Er wird oft noch verändert.
Es wird aber schon klarer, warum es einfacher ist, ein fertiges Image auf eine SD-Karte zu übertragen. Die möglichen Fehlerquellen sind dabei etwas geringer.


Probleme, die bekannt sind:
  • Bei langsamen Raspberry's oder wenn nur 1GB RAM zur Verfügung steht, wird das Dashboard nicht beim Starten geladen, da Grafana länger braucht um hochzufahren. Für dieses Timing Problem suche ich noch eine Lösung. Um die Seite "von der Ferne aus" neu zu laden bitte "systemctl restart lightdm" eingeben.
PS: Feedback: Dieses Thema ist gesperrt, bitte ein neues Thema aufmachen und im Betreff Hardware und Software Version schreiben.
Dateianhänge
verzeichnisse-anlegen.sh
(3.23 KiB) 111-mal heruntergeladen
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Zurück zu „Installation auf einem anderen Debian Betriebssystem“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste