howto:raspberry_pi_image
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
howto:raspberry_pi_image [2018/01/14 12:06] – [Übersicht der Passwörter] jau | howto:raspberry_pi_image [2024/01/23 16:56] (aktuell) – alte Version wiederhergestellt (2023/10/15 13:22) keine Leerzeichen! https://dev.mysql.com/doc/refman/8.0/en/command-line-options.html jau | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ====== Volkszaehler auf einem Raspberry Pi mittels fertigem Image installieren ====== |
Mit dem fertigen Image ist die Installation eines Volkszaehlers deutlich einfacher geworden. Hier der grobe Ablauf, Ihr müsst trotzdem noch einiges in der Doku lesen und verstehen, damit die Konfiguration gelingt... | Mit dem fertigen Image ist die Installation eines Volkszaehlers deutlich einfacher geworden. Hier der grobe Ablauf, Ihr müsst trotzdem noch einiges in der Doku lesen und verstehen, damit die Konfiguration gelingt... | ||
Zeile 5: | Zeile 5: | ||
===== Features ===== | ===== Features ===== | ||
- | * vollständige Installation eines Volkszählers | + | * vollständige Installation eines Volkszählers: vzlogger, |
- | * vzlogger, | + | |
* lediglich noch Anpassung an lokale Installation (Zähler, Netzwerk...) nötig | * lediglich noch Anpassung an lokale Installation (Zähler, Netzwerk...) nötig | ||
- | * Zugriff auf Datenbank über phpmyadmin | ||
* Optimierungen um die SD-Karte zu schonen | * Optimierungen um die SD-Karte zu schonen | ||
* eingerichtete Datenkompression und Datenaggregation | * eingerichtete Datenkompression und Datenaggregation | ||
+ | |||
+ | < | ||
===== Image aufspielen ===== | ===== Image aufspielen ===== | ||
- | * Aktuelles Image für RPi, RPi-B+, RPi 2, RPi 3 und Raspi Zero W herunterladen von [[https:// | + | * Aktuelles Image für RPi, RPi-B+, RPi 2, RPi 3, Rpi 4 und Raspi Zero W herunterladen von [[https:// |
* Image mit [[http:// | * Image mit [[http:// | ||
* beim Raspi Zero W im Verzeichnis /boot die Datei ' | * beim Raspi Zero W im Verzeichnis /boot die Datei ' | ||
Zeile 22: | Zeile 22: | ||
* Pi an das Netzwerk anschließen (LAN-Kabel bevorzugt, [[https:// | * Pi an das Netzwerk anschließen (LAN-Kabel bevorzugt, [[https:// | ||
- | * Pi starten (Stromversorgung anschließen) | + | * Pi starten (Stromversorgung anschließen), das Filesystem wird automatisch auf die ganze SD-Karte erweitert und das System neu gestartet |
===== Anmelden an die Konsole des RaspberryPi ===== | ===== Anmelden an die Konsole des RaspberryPi ===== | ||
Zeile 48: | Zeile 48: | ||
|Konsole|pi|raspberry| | |Konsole|pi|raspberry| | ||
|ssh (Konsole über Netzwerk)|pi|raspberry| | |ssh (Konsole über Netzwerk)|pi|raspberry| | ||
- | |Dateifreigabe|pi|raspberry| | + | |User für vzlogger|vzlogger|vzlogger| |
|MySQL-Standardbenutzer|vz|demo| | |MySQL-Standardbenutzer|vz|demo| | ||
|MySQL-Umfassender-Nutzer|vz-admin|secure| | |MySQL-Umfassender-Nutzer|vz-admin|secure| | ||
- | |phpMyAdmin-Admin|phpmyadmin|raspberry| | + | |MySQL-Admin((seit " |
- | |MySQL-Admin|root|raspberry| | + | Sicherheit eingebaut die nur dem Systemuser root auch DB-Zugriff als |
+ | root erlaubt. (sudo mysql --user=root -praspberry) ))|root|raspberry| | ||
Zeile 59: | Zeile 60: | ||
== Die Partition an die benutzte Karte anpassen == | == Die Partition an die benutzte Karte anpassen == | ||
- | * Die root-Partition | + | Ist nicht mehr manuell nötig, das Dateisystem wird automatisch |
- | - "sudo raspi-config" | + | |
- | - im Menu den Unterpunkt " | + | |
- | + | ||
- | <note important> | + | |
== Tastatur einstellen == | == Tastatur einstellen == | ||
- | Erfolgt | + | Erfolgt über raspi-config. Für korrekte Umlaute den Zeichensatz " |
== Datum und Zeit stellen == | == Datum und Zeit stellen == | ||
Zeile 74: | Zeile 71: | ||
< | < | ||
- | == evtl: MySQL übers Netz erreichbar machen == | + | == evtl: Datenbank |
- | <note important> | + | Wer aus dem lokalen Netz mit einem SQL-client (z.B. [[https:// |
- | + | < | |
- | Wer aus dem lokalen Netz mit einem mysql-client (z.B. HeidiSQL) auf die DB zugreifen will, muss mit "sudo nano /etc/mysql/my.cnf" | + | die Zeile "" |
- | - use mysql; | + | < |
- | | + | Datenbank neustarten |
- | | + | < |
- | - Update user set host=' | + | Zudem braucht man einen User mit entsprechenden Rechten auf die DB |
- | - flush privileges; | + | < |
- | + | CREATE USER ' | |
- | Alternativ können diese Schritte | + | GRANT USAGE ON *.* TO ' |
+ | GRANT ALL PRIVILEGES ON `volkszaehler`.* TO 'vz-admin' | ||
+ | exit</ | ||
+ | Dabei bedeutet '' | ||
===== Kanäle anlegen ===== | ===== Kanäle anlegen ===== | ||
- | * Mit dem VZ-Frontend unter < | + | * Mit dem VZ-Frontend unter < |
* über das (i) der Kanäle die UUIDs herausfinden, | * über das (i) der Kanäle die UUIDs herausfinden, | ||
Zeile 95: | Zeile 95: | ||
===== vzlogger konfigurieren ===== | ===== vzlogger konfigurieren ===== | ||
- | * mit < | + | * mit < |
<note important> | <note important> | ||
Zeile 114: | Zeile 115: | ||
===== Fehlersuche: | ===== Fehlersuche: | ||
- | * phpmyAdmin < | ||
* I/ | * I/ | ||
* Wiki-Seite zur [[howto/ | * Wiki-Seite zur [[howto/ | ||
Zeile 124: | Zeile 124: | ||
Bevor man Updates durchführt ist es ratsam, die Karte einmal komplett zu sichern, z.B. indem man ein Image der Karte auf einem anderen Rechner erstellt. Geht dann beim Update etwas schief hat man schnell wieder ein funktionierendes System.\\ | Bevor man Updates durchführt ist es ratsam, die Karte einmal komplett zu sichern, z.B. indem man ein Image der Karte auf einem anderen Rechner erstellt. Geht dann beim Update etwas schief hat man schnell wieder ein funktionierendes System.\\ | ||
- | Update | + | __Update |
< | < | ||
sudo systemctl stop vzlogger | sudo systemctl stop vzlogger | ||
cd vzlogger | cd vzlogger | ||
git pull | git pull | ||
- | cmake . | + | ./install.sh vzlogger |
- | make | + | |
- | sudo make install | + | |
sudo systemctl start vzlogger | sudo systemctl start vzlogger | ||
</ | </ | ||
- | Das Leerzeichen und den Punkt hinter cmake nicht vergessen!\\ | ||
Mit und ohne ' | Mit und ohne ' | ||
- | Update | + | __Update |
- | <note important> | + | |
< | < | ||
- | cd /var/www | + | cd ~ |
# ggf.Datensicherung | # ggf.Datensicherung | ||
- | sudo cp -r volkszaehler.org vz.org.bak | + | cp -r volkszaehler.org vz.org.bak |
# Update | # Update | ||
cd volkszaehler.org | cd volkszaehler.org | ||
- | sudo git pull | + | git stash |
+ | git pull | ||
+ | git stash apply | ||
# Abhängigkeiten aktualisieren | # Abhängigkeiten aktualisieren | ||
sudo composer update | sudo composer update | ||
</ | </ | ||
- | Fehler beim Aufruf von Composer können daran liegen dass Composer (http:// | + | Fehler beim Aufruf von Composer können daran liegen, dass Composer (http:// |
< | < | ||
Zeile 158: | Zeile 156: | ||
===== Raspberry Performance Optimierung ===== | ===== Raspberry Performance Optimierung ===== | ||
- | Die Leistung des Raspberry für vzlogger, | + | Die Leistung des Raspberry für vzlogger, |
Zudem hat der Raspberry schwer zu kämpfen wenn lange Zeiträume mit vielen Datensätzen abgefragt werden. Dazu bietet sich einerseits eine Reduktion der Daten bei der Erfassung im vzlogger an, aber auch für große Zoomstufen kann die Datenmenge reduziert und die Ausgabe beschleunigt werden [[datenmengen]]. | Zudem hat der Raspberry schwer zu kämpfen wenn lange Zeiträume mit vielen Datensätzen abgefragt werden. Dazu bietet sich einerseits eine Reduktion der Daten bei der Erfassung im vzlogger an, aber auch für große Zoomstufen kann die Datenmenge reduziert und die Ausgabe beschleunigt werden [[datenmengen]]. | ||
Zeile 177: | Zeile 175: | ||
== statische IP Konfiguration setzen == | == statische IP Konfiguration setzen == | ||
- | Zum Ändern | + | Zum Ändern " |
< | < | ||
- | sudo vi /etc/network/ | + | sudo nano /etc/dhcpcd.conf |
</ | </ | ||
- | und die Zeile | + | und die Zeilen |
< | < | ||
- | iface eth0 inet manual | + | #static ip_address=192.168.0.5/ |
+ | #static ip6_address=fd51: | ||
+ | #static routers=192.168.0.1 | ||
+ | #static domain_name_servers=192.168.0.1 8.8.8.8 | ||
</ | </ | ||
- | ändern auf | + | anpassen. |
- | < | + | Zuerst müssen die Kommentarzeichen ''#'' |
- | auto eth0 | + | |
- | allow-hotplug eth0 | + | |
- | iface eth0 inet static | + | |
- | </ | + | |
- | darunter dann folgende | + | |
- | < | + | '' |
- | address 172.27.12.167 | + | |
- | netmask 255.255.255.128 | + | '' |
- | network 172.27.12.128 | + | |
- | broadcast 172.27.12.255 | + | |
- | gateway 172.27.12.129 | + | |
- | </ | + | |
- | + | ||
- | Leider habe ich keinen guten Tipp zur Berechnung des " | + | |
- | Der DHCP-Client verhindert in der aktuellen Konfiguration aber eine Übernahme der statischen IP-Adresse. | + | '' |
- | < | + | |
- | sudo systemctl disable dhcpcd</ | + | |
Nun kann man die " | Nun kann man die " | ||
< | < | ||
- | oder einfach den ganzen Raspberry rebooten.\\ | + | oder einfach den ganzen Raspberry rebooten |
Mit einer statischen IP Konfiguration ist man fortan _NICHT_ mehr abhängig davon ob der DHCP Server jederzeit im LAN reagiert (oder ob man den zum Stromsparen auch mal ausschaltet). | Mit einer statischen IP Konfiguration ist man fortan _NICHT_ mehr abhängig davon ob der DHCP Server jederzeit im LAN reagiert (oder ob man den zum Stromsparen auch mal ausschaltet). | ||
=== Einrichten einer ramdisk === | === Einrichten einer ramdisk === | ||
- | Beim RaspberryPi führen alle Änderungen am Dateisystem zu Schreibzugriffen auf der eingelegten SD-Karte. Sollen diese minimiert werden, kann eine ramdisk eingerichtet werden. | + | Beim RaspberryPi führen alle Änderungen am Dateisystem zu Schreibzugriffen auf der eingelegten SD-Karte. Sollen diese minimiert werden, kann eine ramdisk eingerichtet werden. |
howto/raspberry_pi_image.1515927981.txt.gz · Zuletzt geändert: 2018/01/14 12:06 von jau