Ausgangszustand:
- Raspberry Pi2,
- Raspbian Wheezy,
- Probleme mit der SSL Lib beim https Zugriff (SSL Version SSLv2 not supported), ist mit jessie behoben.
- Raspberry Pi3
- Raspbian Jessie Lite
Geht relativ einfach, wenn man einige Vorbereitungen trifft. Der grobe Fahrplan sieht so aus:
- Auf neuer Hardware ein neues System installieren.
- Alle benötigten Tools und Module (debian Pakete) nachinstallieren.
- FHEM als Grundlage installieren, eventuell Details testen (z.B. SSL).
- Backup und shutdown aktuelles FHEM System auf Pi2
- Transfer der Backupdatei auf Pi3
- Restore und Start von FHEM auf dem Pi3
- Test ob System einwandfrei läuft, wenn ja alles gut, wenn nein eventuell erstmal Restart FHEM auf Pi2 und in Ruhe untersuchen -> nochmal ab Schritt 4 bis alles läuft.
Schritt 1-3
habe ich hier ausführlich beschrieben, das dauert je nach dem was man im Schritt 2 alles benötigt alles in allem keine 20 min. Dieser Artikel wird von mir laufend aktualisiert. Zu dem Wissen zu gelangen was man alles benötigt, kann allerdings wesentlich länger dauern, wenn man sich nichts aufgeschrieben hat. Im Zweifelsfall sollte man ein Paket/Tool mehr als eines zu wenig installieren. Die empfohlene Liste auf debian.fhem.de ist sicher ein guter Kompromiss. Ich habe angefangen eine Liste zu erstellen, welches FHEM Modul welche cpan Module bzw. debian Pakete benötigt. Die werde ich noch veröffentlichen.Schritt 4 und 6
kann man nach seinen persönlichen Vorlieben gestalten. Normalerweise sollte das in wenigen Minuten abgeschlossen sein.In der Regel sollte alles was FHEM betrifft in diesem Pfad liegen /opt/fhem/. Dieser Pfad muss auf das neue System und muss die richtigen Berechtigungen erhalten. Ich habe das hier schon mal im Detail beschrieben und es genauso gemacht:
Pi2 in der FHEM Oberfläche
backup
warten bis backup fertig -> Log oder Eventmonitor
shutdown
- mit winscp die aktuelle Sicherung ins zentrale Sicherungs-Share auf den Server kopieren
- und in einer zweiten Sitzung gleich wieder auf den Pi3 ins /home/pi/ Verzeichnis kopieren
sudo systemctl stop fhem
sudo tar -xvzf /home/pi/FHEM-201xxxxx_xxxxxx.tar.gz -C /opt/fhem/
sudo systemctl start fhem
Schritt 7
- FHEM Web erreichbar?
- Log File kontrollieren!!!
Wenn bis hier grobe Fehler vorhanden sind am Besten erstmal den Pi3 wieder beenden und alles auf dem Pi2 wieder starten. In Ruhe Fehler suchen.
- Schalter betätigen
- Sonderfunktionen kontrollieren (Sound und Sprachausgabe usw)
Nützliche Hinweise und Befehle
Umfangreiche Manipulation müssen nicht zeileweise mit sudo gemacht werden, sudo su schaltet den sudo Modus ein bis zum exit.Es kann immer mal passieren, dass die Rechte im fhem Verzeichnis falsch sind. Dies kann man relativ einfach beheben in dem man den Eigentümer aller Dateien setzt:
sudo chown -R fhem:dialout /opt/fhem/
Manchmal muss die Rechte einzelner Dateien setzen, z.B. ausführbar machen:sudo chmod +x /home/pi/shutdown.py
In besonderen Fällen muss das UID Bit gesetzt werden:chmod u+s /usr/bin/dfu-programmer
Oder ganz brutal, einfach Rechte auf Alles:sudo chmod 777 /etc/systemd/system/pishutdown.service
Ein paar Beispiele für User und Gruppen Mitgliedschaften:useradd -m test
passwd test
gpasswd -a test users
gpasswd -a pi pulse-access
gpasswd -d pi audio
gpasswd -d test audio
groups test
getent group test
cat /etc/group
Samba Freigabe für Sonos einrichten:sudo mkdir /mnt/SonosSpeak
sudo chmod 777 /mnt/SonosSpeak/
sudo nano /etc/samba/smb.conf
am Ende folgendes einfügen:[SonosSpeak] comment = Audio-Files for SonosPlayer to Speak
read only = false
path = /mnt/SonosSpeak
guest ok = yes
anschließen den Service neu startensudo systemctl restart smbd.service
ZusatzinfoDas Verhalten/der Syntax in der smb.conf hat sich offenbar bei Jessie etwas geändert! Nutzt man die Originale smb.conf von Raspbian muss man nur den Abschnitt des Shares (siehe oben) einfügen.
Die Anonyme Zugriff auf Shares wird durch die Standard Einstellung im Abschnitt
[global]
security = user
map to guest = bad user
ermöglicht. Die erste Zeile ist die Standardeinstellung und ist in der smb.conf nicht extra gesetzt. Die zweite Zeile steht so in der Original smb.conf schon drin.
Herzlichen Dank für die ausführliche Beschreibung
AntwortenLöschenHelmut (helmi55)
Sehr schön, hat mir beim Umzug vom Pi1B auf Pi3B geholfen!
AntwortenLöschenStefan (alru)
Hallo Otto,
AntwortenLöschenMein Fhem startet nicht mehr. Ich komme nur noch über Putty oder RemoutDesktop auf den Pi. Ein Backup liegt auf dem Win PC. Mit FileZilla könnte ich das Backup zurück spielen. Oder gibt es noch eine andere Möglichkeit Fhem zu starten.
Muss ich dazu die Karte neu aufsetzen? Oder gibt es eine andere Möglichkeit.
Gruß Michael
Hallo Michael,
Löschenes gibt diesen Wiki Artikel
https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche
Klar kannst Du ein Backup zurückspielen, wie es geht steht ja oben. Karte neu machen brauchst Du nicht wenn die ansonsten in Ordnung ist.
Du wirst verstehen: Ich beantworte hier gern Fragen zu meinem Artikel, aber ein Supportforum kann ich hier nicht betreiben.
Gruß Otto
Hallo Otto, was genau ist mit FHEM Module gemeint? Module wie z.B. für Netatmo oder Sonos? Oder bezieht sich das auf Debian Pakete von Linux?
AntwortenLöschenManche FHEM Module benötigen auf System Ebene spezielle Perl Module oder System Programme. Ohne die läuft das FHEM Modul dann nicht.
LöschenSehr gelungener Artikel! Was aus meiner Sicht noch fehlt, ist die Migration der SQL-DB, die viele User als Log-System nutzen. Würde mich freuen, wenn das noch ergänzt werden könnte.
AntwortenLöschenIch benutze selbst (noch) keine DB zum loggen.
LöschenKurze Frage: Ich habe bisher mit dem einspielen nach deiner methode ohne das setzen von Rechten immer Erfolg gehabt (Neuinstallation von FHEM mit Backup auf den gleichen Raspberry 3. Nun, beim UMZUG von RP3 auf RP4 hat er mir die Backup Datei zwar entpackt und kopiert, ich sehe allerdings in der FHEM Oberfläche noch die Grundinstallation von FHEM. Sind das vielleicht fehlende Rechte? Gruss Tom
AntwortenLöschenGrundinstallation? Das heisst er hat die fhem.cfg nicht ersetzt? Im tar Paket sind die Original Rechte normalerweise enthalten, mit entsprechenden Rechten beim auspacken werden die Zieldateien überschrieben. Es scheint als ob das nicht passiert ist!? Gruß Otto
LöschenJa, richtig. die fhem.cfg wurde anscheinend nicht ersetzt, obwohl der Kopiervorgang des ausgepackten Backup- Archivs sichtbar (in der Konsole) durchgeführt wurde (das dauert bei meinen Logs immer etwas länger ;-) Ich setze das ganze heute nacht (außerhalb meiner Home- Office Zeiten ...) nochmals auf und berichte (wenn du keine Idee dazu hast).Gruss Tom44
AntwortenLöschenHallo Otto, ich habe verschiedene Backup Versionen in eine frisch installierte FHEM Basisinstallation kopiert. Jedes Mal kann ich dann FHEM nicht mehr erreichen. In der Kosole habe ich gesehen, dass die Files aus dem home/pi Verzeichnis in das opt Verzeichnis entpackt wurden. .... hast Du eine Idee, warum ich danach nicht mehr auf die FHEM Oberfläche zugreifen kann? Das ist für mich völlig unerklärlich und nicht nachvollziebar, da ja die Rechte vorhanden waren. Gruss, Tom Schrader (Tom44)
AntwortenLöschen