FHEM-Server updaten
Ist der FHEM-Server erfolgreich installiert, sollte direkt im Anschluss ein Update angestoßen werden, da die Installation gewöhnlich noch nicht auf dem neuesten Stand ist und dadurch manche Aktoren oder Sensoren nicht korrekt erkannt und angelernt werden können. Aber nicht nur wer akute Probleme diesbezüglich hat, sollte sein System regelmäßig updaten, um von Bugfixes und Neuerungen zu profitieren, die über das Softwareupdate eingespielt werden. Wie ein Update über die FHEM-Oberfläche eingeleitet werden kann, wird nachfolgend erläutert.
FHEM-Backup erstellen
Bevor das Update gestartet wird, sollte erstmal ein Backup von FHEM erstellt werden. Das tut nicht weh und kann später dabei helfen das System auf einen früheren Stand zurückzusetzen, sofern mal etwas schief läuft. In der FHEM-Konsole wird dabei der Befehl
backup
eingegeben und mit der Enter-Taste bestätigt.
Wurde das Backup erstellt, wird die Nachricht
backup done: FHEM-20141103_102213.tar.gz (11040971 Bytes)
ausgegeben. Wer das Backup extern sichern möchte, findet es gewöhnlich im Verzeichnis “/var/opt/fhem/Backup” wieder. Weitere Informationen zum FHEM-Backup gibt es im FHEM-Wiki.
Alternativ lässt sich auch der Eintrag “attr global backup_before_update 1” in die fhem.cfg eintragen, dann wird immer automatisch vor jedem Update ein Backup angestoßen.
Update vom 31.05.2015: Ein alternativer Weg, um “erweiterte” Backups von FHEM auszuführen, wird im Blogpost FHEM HowTo – Automatisches Backup auf externem NAS beschrieben.
FHEM-Update starten
Das FHEM-Update wird dann ebenfalls über die FHEM-Konsole, jetzt aber mit dem Befehl
update
gestartet.
Sofern eine neue Mitteilung (notice) – in diesem Fall “update-20130127-001” – ausgegeben wird, muss diese erst einmal bestätigt werden, um das Update durchführen zu können. Um die Update-Benachrichtigung zu bestätigen, wird in die FHEM-Konsole der Befehl
notice confirm update-20130127-001
eingegeben und mit der Enter-Taste bestätigt.
Jetzt wird die Mitteilung “update-20130127-001 confirmed on 2014-11-03 10:05:06: 1” angezeigt und das Update kann nochmal mit dem FHEM-Konsolenbefehl
update
und Druck auf die Enter-Taste eingeleitet werden.
Unter Umständen werden jetzt sehr viele Dateien aktualisiert, wodurch das Update schon einige Minuten dauern kann. Sobald die Aktualisierung abgeschlossen ist, wird die Mitteilung “2014-11-03 10:08:07 Global global update 431 file(s) have been updated.” ausgegeben.
Jetzt muss FHEM nur noch über den FHEM-Konsolenbefehl
shutdown restart
und der Eingabe der Enter-Taste neugestartet werden, fertig. Der neueste Softwarestand ist nun hergestellt.
Der Update-Befehl hält noch einige zusätzliche Attribute bereit, um bspw. nicht nur die geprüften (stable) sondern auch die taufrischen und noch in Entwicklung befindlichen (development) Aktualisierungen einspielen zu können. Entsprechende Informationen gibt es im FHEM-Wiki.
Aus meinem täglichen Leben
Mir ist es schon mehrmals passiert, dass ein neuer Aktor, wie bspw. der HomeMatic 105155 Funk-Stellantrieb (Affiliate-Link) in FHEM nicht korrekt in Betrieb genommen werden konnte. Nach einem Update, wie es oben erklärt wurde, klappte es dann jedoch auf Anhieb. An dieser Stelle ein großes Lob an die FHEM-Community, die regelmäßig Updates bereitstellt, dabei Fehler beseitigt und den Funktionsumfang – gerade auch in Bezug auf neue Devices – ausbaut.
Affiliate-Link
[easyazon_image align=”none” height=”110″ identifier=”B00CFF3410″ locale=”DE” src=”https://meintechblog.de/wordpress/wp-content/uploads/2015/06/31NBRkCErXL.SL1102.jpg” tag=”meintechblog-141103-21″ width=”95″]
14 Kommentare
Wird als erster Schritt des Updates nicht automatisch ein Backup erzeugt? Ich sehe zumindest bei mir immer eine entsprechende Meldung und habe auch den Eindruck, dass dieses Backup den größten Teil der für das Update benötigten Zeit ausmacht.
Laut FHEM-Wiki führt FHEM “bis 18.08.2014 […] ein Backup der bisherigen Installations- und Konfigurationsdateien vor einem Update durch.” Da diese automatische Backupfunktion anscheinend weggefallen ist, dachte ich mir es macht Sinn darauf explizit hinzuweisen.
Das Backup kann in der Tat auf einem RPI jede Menge Zeit in Anspruch nehmen, entscheidend sind in diesem Fall vor allem die Anzahl und Größe von Logdateien. Diesbezüglich hat Christoph bereits einen interessanten Artikel zum Thema FHEM-Logfiles und -Graphen: Datenlast reduzieren und Werte ordentlich visualisieren verfasst.
Ist in der fhem.cfg der Eintrag
attr global backup_before_update 1
enthalten, wird vor der Durchführung eines Update erst eine Datensicherung in das festgelegte Backup Verzeichnis durchgeführt.
siehe http://www.fhemwiki.de/wiki/Backup
Danke für den Hinweis! Habe die Info im Blogpost vermerkt.
Ich habe FHEM gerade frisch installiert und wollte direkt das Update machen.
Jetzt steht er seit 12 Minuten bei:
2014-11-06 05:44:17 Global global update get http://fhem.de/fhemupdate4/svn/www/pgm2/jquery-ui.min.css
Was kann ich jetzt machen ohne daß alles platt ist?
Hi Christian,
gerade erst gelesen, sorry. Bei dir war wohl die Verbidung zum Update-Server langsam bzw. nicht mehr erreichbar. In einem solchen Fall am besten FHEM mit “shutdown restart” neustarten und das Update erneut starten.
Grüße
Jörg
Hi Jörg,
wie immer, toller Artikel! Mir als recht unbewanderter Linux User stellt sich bei dem erstellten Backup die Frage – wie kann ich das im Ernstfall wieder einspielen!? Wie geh ich vor wenn ein Update schiefläuft und ich den letzten Zustand wiederherstellen will!? Und kann ich das Backup auch auf ein komplett frisches System wiedereinspielen, z.B. wenn meine SD Karte gestorben ist, ich das Backup extern abgelegt hatte und nun ein frisches System auf ner neuen Karte hab.
Grüße,
Marco
Hi Marco,
einen ersten Einblick, wie man ein Backup zurückspielt, wird im Artikel Intel NUC als Smart Home-Server – FHEM on steroids unter dem Punkt “FHEM einrichten bzw. vom RPI umziehen” vermittelt. Hoffe damit kommst du einen Schritt weiter.
Grüße und viel Erfolg
Jörg
habe folgende Fehlermeldung beim Erstellen vom Backup:
sh: 1: cannot create ./backup/FHEM-20150426_130036.tar.gz: Permission denied
tar: -: Cannot write: Broken pipe
tar: Error is not recoverable: exiting now
Hi Mark,
das hört sich nach fehlenden Schreibrechten an. Welche Plattform nutzt du? Wenn du FHEM auf einem RPI nutzt, könnte evtl. schon der Terminalbefehl
“cd /opt && sudo chmod -R a+w fhem && sudo usermod -a -G tty pi && sudo usermod -a -G tty fhem” helfen. Mehr Infos im Blogpost FHEM-Server auf dem Raspberry Pi in einer Stunde einrichten.
Grüße und viel Erfolg
Jörg
Gibt es eine Funktion, die automatisch die neuesten Updates findet und installiert? ggf noch mit einer notification per Mail / pop up auf Handy etc?
Super Artikel – hat auch alles bestens geklappt (das Update) aber bei mir endet das Update mit
2017-05-28 10:32:46 Global global UPDATE
Keine Angabe von upgedateten Files – ist diese Info (wäre ja interessant zu wissen) weggefallen oder kommt da noch eine zweite Meldung und ich sollte warten bis diese kommt?
LG,
Tommi
und das ganze vollautomatisch?
mit einem Logfile welches mit als Nachricht auf meinen Telegram Account geschickt wird?
🙂