Donnerstag, 26. Februar 2015

Einrichtung Rapberry Pi für FHEM in aller Kürze

Dieser Artikel ist zwar etwas umfangreicher aber auch reichlich veraltet.
Ich halte einen Artikel  aktuell zur Installation Raspberry und FHEM.

Ich mache es jetzt auch noch: Die Anleitung zum Einrichten in aller Kürze.
Nach dem ich im letzten Artikel den Werdegang aufgeschrieben habe, wie ich Stück für Stück den Raspberry zu dem Zustand gebracht habe, dass mein FHEM wieder läuft - will ich es jetzt kurz: in einem Rutsch.
Da gibt es nämlich noch ein Problem: Ich habe ne große SD Karte gekauft, die ist nicht ganz so schnell. Und jetzt habe ich eine schnellere, aber die ist nicht so "groß". Jetzt gibt es keine ganz einfache Variante, mal eben das Image der Raspberry SD Karte von groß auf klein zu machen.
Ich glaube, dass hier ist die geradlinigste!? Und Schnellste?
Ich installiere einfach nochmal ein komplettes Raspbian mit allen notwendigen Ergänzungen und spiele anschließend wieder FHEM zurück. Das hat vor allem den Vorteil, dass ich die Downtime auf das Restore von FHEM reduziere. 

Man braucht eine SD Karte mit mindestens 4 GB, ich nehme aktuell eine SanDisk SDSDQXN-016G-FFPA Extreme Class 3 Micro SDHC 16GB Speicherkarte inkl. Adapter (UHS-I, 60Mbps).
Das Herunterladen des aktuellen Raspbian Wheezy Images (974 MB) ist ein wesentlicher Zeitfaktor, es dauert bei mir ca. 70 min. Ich lasse diese Zeit mal extra stehen. Die Zeiten der folgenden Vorgänge fasse ich am Ende zusammen.
Die Zip Datei entpacken und die xxxx-xx-xx-raspbian.img Datei (3,2GB) mit einem Tool (ich nehme immer USB Image Tool) auf die SD Karte zurück schreiben (das dauert 2min44s).
SD Karte in den Raspberry stecken, Netzwerkkabel und Netzteil anschließen. Mehr braucht es nicht, den Rest machen wir mit dem Terminal, z.B. putty , Dateitransfer z.B. winscp und einem Windows PC.

Putty starten und unter Hostnamen einfach raspberrypi eintragen und open drücken. Funktioniert die Namensauflösung nicht finden wir im Netzwerkrouter/DHCP Server die IP Adresse und verwenden diese im gleichen Feld.

Die Grundkonfiguration mit mit raspi-config dauert etwa 4,5 min.
Anmelden mit User pi und Passwort raspberry (Standard)
sudo raspi-config
Folgende Konfigurationsschritte sind grundlegend für ein deutsches System notwendig:
Expand Filesystem (kann man auch jederzeit später machen, alle folgenden Schritte funktionieren mit dem Original Image)
Boot ins Terminal Desktop oder grafischer Desktop
Internationalisation  Options
   - Locale de_DE.UTF-8 UTF-8 zur ordentlichen Darstellung
       - der vorgewählte Standard en GB.UTF-8 sollte als zweite Auswahl bestehen bleiben.
       - default ebenfalls auf deutsch
       - Tastatur stimmt automatisch
   - Change Timezone
       - Europa
       - Berlin
Unter Advanced Options den Hostname ändern. 
Das Tool schließt mit einem reboot. 

Danach muss man sich mit Verwendung des neuen Hostnamen wieder per Terminal (putty) anmelden. Bei mir war dabei immer die Eigenheit, dass ich jetzt vorübergehend einen FQN angeben musste, also z.B. raspib.fritz.box
Das Basisupdate und Firmwareupdate dauert ca 6 min.
Die Version vor dem Update ermitteln wir mit: uname -a --> 3.18.7+ 755
sudo apt-get update && sudo apt-get upgrade && sudo rpi-update && sudo reboot
Nach dem Update zeigt uns: uname -a --> 3.18.7+ 757

Die Software Installation dauert ca. 15 min.
sudo apt-get install python-dev python-rpi.gpio perl libdevice-serialport-perl libio-socket-ssl-perl libwww-perl libxml-simple-perl msttcorefonts libgd-graph-perl libimage-librsvg-perl libsoap-lite-perl samba samba-common-bin libjson-perl libdigest-md5-file-perl liblwp-protocol-https-perl liblwp-protocol-http-socketunix-perl telnet expect sendemail libnet-ssleay-perl perl && sudo cpan install Digest::SHA1

Der folgende Befehl schafft noch etwas freien Speicher:

sudo apt-get clean

Ein sudo apt-get autoremove wie oft beschrieben brachte bei mir gar nichts.

Das CPAN Modul könnte noch aktualisiert werden, allerdings weiß ich derzeit nicht wie und ob es irgendwelche Vorteile bringt.


Ab hier bis FHEM Installation dauert es ca. 6 min. Es wird "Taster gesteuertes Shutdown/Restart", "FHEM auf Fritzbox Überwachung", "Sonos Sprachausgabe (Samba Freigabe)" und sendEmail Unterstützung eingerichtet.
Ich habe zwei Scripts im Einsatz, diese müssen vom Windows PC auf den Raspberry kopiert werden. Ich nehme dazu Winscp und kopiere die beiden Dateien nach 
/home/pi/shutdown.py und /home/pi/StartFhemOnFritz.sh:

Man braucht noch einen Pfad und alle Rechte müssen gesetzt werden.
sudo chmod +x /home/pi/shutdown.py && sudo chmod +x /home/pi/StartFhemOnFritz.sh && sudo mkdir /mnt/SonosSpeak && sudo chmod 777 /mnt/SonosSpeak/


Jetzt noch Dateien editieren, die Befehle von nano sind selbsterklärend.

sudo nano /etc/rc.local
Am Ende vor exit 0 diese Zeile eintragen
sudo python /home/pi/shutdown.py &

sudo nano /usr/share/perl5/IO/Socket/SSL.pm
Diese Textkette suchen (steht in Zeile 1490) und das $ kurz vorm Ende löschen
m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1[12]?))$}i
sudo nano /usr/bin/sendEmail
Diese Textkettte suchen (Zeile 1907)
SSLv3 TLSv1 und durch diese ersetzen TLSv1_0:TLSv1_1:TLSv1_2
sudo nano /etc/samba/smb.conf
Folgende Zeilen hinzufügen:
[SonosSpeak] comment = Audio-Files for SonosPlayer to Speak 
read only = false 
path = /mnt/SonosSpeak 
guest ok = yes
Sicherstellen, dass in der Global-Sektion der Parameter Security auf User steht (oder gar nicht erst definiert wurde):
[global]
security = user
Samba-Server neustarten:
sudo invoke-rc.d samba restart

Fertig: 

Die Einrichtung hat am 2000 DSL Anschluss (ich wohne auf dem Land) bis hierher ca. 34,5 min gedauert. Eigentlich kann man jetzt das Download von FHEM noch integrieren und dann das Image als Installationsbasis verwenden. Download FHEM dauert ca. 45 sec.
FHEM installieren, ist schnell erledigt in ca. 1 min. Beides zusammen, oder download jetzt und Installation später:
wget http://fhem.de/fhem-5.6.deb && sudo dpkg -i fhem-5.6.deb

Man kann dieses Image aufheben und als Grundlage für mehrere Raspberries nehmen. Ich beschreibe später noch wie.

Zusammenfassung: 

In ca. 35 min bekommt ein frisch installiertes System, wenn man das Download von Raspbian  nicht mitrechnet. Diese Zeiten habe mit dem Stand Februar 2015 ermittelt. 
Mit dem Download von Raspbian dauert es ca. 1 h 45 min. 

Keine Kommentare:

Kommentar veröffentlichen