CCU2 sicher herunterfahren

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

gzi
Beiträge: 450
Registriert: 12.01.2015, 23:37
System: CCU
Hat sich bedankt: 15 Mal
Danksagung erhalten: 14 Mal

Re: CCU2 sicher herunterfahren

Beitrag von gzi » 18.03.2019, 23:24

In Ermangelung einer wirklichen Lösung: Was haltet Ihr von folgener "Shutdown-Methode" ?
1. Restart
2. Sobald WebUI wieder da: Stecker ziehen

Eigentlich können da nur Aktor-Zustände und Werte von Systemvariablen verloren gehen, die sich zwischen Hochfahren und Stecker ziehen verändert haben. Es können eigentlich keine Programme, Geräte-Einstellungen oder Verknüpfungen betroffen sein.

gzi
Lichtsteuerung, Heizungssteuerung, Überwachung (Feuer, Wasser, Einbruch, Stromausfall, Heizungsausfall, Wetter, Kamera), Alarmierung (optisch, akustisch, mail, SMS, voice call) - CCU, diverse HM- und HMIP Aktoren und Sensoren, Rauchmeldeanlage, UPS, GSM-Alarmwähler, Zugriff aus dem Internet via HTTPS und htdigest authentication, kein Datenkraken-Interface (Google, Amazon, China-Cloud, BND, NSA...) - HomeMatic Sicherheits-Kompendium - Checkliste für Auswahl von IP Kameras - Vergleich aktueller HomeMatic Zentralen - und alle Antworten für das gesamte Universum und den Rest

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: CCU2 sicher herunterfahren

Beitrag von Xel66 » 19.03.2019, 08:02

gzi hat geschrieben:
18.03.2019, 23:24
2. Sobald WebUI wieder da: Stecker ziehen
Es ist und bleibt die denkbar schlechteste Methode, einem laufenden Rechner während des Betriebes die Spannung zu klauen. Gerade nach einem Systemstart ist die Wahrscheinlichkeit hoch, das noch irgendwelche Status geschrieben werden. Und dabei kann man das Dateisystem massiv beschädigen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Schrauber
Beiträge: 556
Registriert: 31.01.2012, 14:17
Danksagung erhalten: 1 Mal

Re: CCU2 sicher herunterfahren

Beitrag von Schrauber » 19.03.2019, 14:11

Xel66 hat geschrieben:
19.03.2019, 08:02
Und dabei kann man das Dateisystem massiv beschädigen.
Deswegen ist das primäre Dateisystem readonly eingebunden. Allenfalls (und unwahrscheinlich) kann man sich die Lautzeitdaten schießen, was in einer Neukonfiguration enden würde. Aber auch das ist eher unwahrscheinlich, weil nicht ständig in diesen Daten herumgeschrieben wird.
Kaputt gehen kann nur etwas, wenn die Stromversorgung mitten in einem Schreibvorgang gekappt wird. Bei normalen Rechnern ist die Trefferquote relativ hoch, weil da ständig im Filesystem herumgeschrieben wird.

Bei embedded Systemen wie der CCU wird das eigentliche System im Normalbetrieb aber nur readonly gemountet. Ein korrupter Zustand kann sich da nicht ergeben, weil nicht ins das Filesystem geschrieben werden kann. Config-Daten werden in einen anderen Bereich geschrieben, der natürlich scheibbar sein muss. Die Wahrscheinlichkeit hier einen korrupten Zustand zu erreichen ist eher gering, da i.d.R. nur bei Konfigurationsänderungen und Änderungen an persistenten Laufzeitdaten geschrieben wird. Persistene Lautzeitdaten gibts bei der CCU eher wenige, wie z.B. Zustände von Systemvariablen. Aktorenzustände vergisst die CCU über einen Neustart so oder so. Die bekommt sie eh wieder, wenn die Aktoren/Sensoren sich beim nächsten Mal melden. Jedenfalls ist es hier aber äußerst unwahrscheinlich wirklich einen korrupten Zustand zu bekommen. Allenfalls geht die letzte Änderung vielleicht verloren. Aber auch das recht unwahrscheinlich. Die geschriebenen Datenmengen sind auch verschwindend gering.

Logs und dergleichen werden i.d.R. nur im Speicher gehalten. Davon abgesehen sind sie für das Funktionieren des Systems unerheblich.

Was bleibt: Der vom Hersteller vorgesehene Weg eine CCU herunterzufahren ist das Ziehen des Netzsteckers. Und das ist als unkritisch zu sehen. Und selbst wenn man da den äußerst unwahrscheinlichen Fall erreichen sollte, das etwas schief geht, dann bekommt man damit keinesfalls die CCU an sich kaputt. Im absoluten worst Case würde es in einer Neukonfiguration enden. Ich habe bisher auch von keinem Fall gehört, wo sowas passiert wäre.

Im Normalbetrieb ändert sich an der Konfiguration ja gar nicht. Nur persistente Daten werden geschrieben. Das sind so wenige, das ein Treffer mitten im Schreibvorgang eine Wahrscheinlichkeit nahe 0 hat. Mit noch weitaus geringerer Wahrscheinlichkeit fällt der Treffer so aus, das er korrupte Daten hinterlässt. Je nach Filesystem selbst das praktiv unmöglich. Ein COW-Dateisystem ist auf diese Art auch praktisch nicht zu beschädigen.

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: CCU2 sicher herunterfahren

Beitrag von Xel66 » 19.03.2019, 16:23

Schrauber hat geschrieben:
19.03.2019, 14:11
Aber auch das ist eher unwahrscheinlich, weil nicht ständig in diesen Daten herumgeschrieben wird.
Das gilt nur für aktuelle Firmwareversionen und nicht aktivierter Diagrammfunktion der CCU. Und trotzdem wird alle 12 Stunden die Datenbank geschrieben. Die Wahrscheinlickeit diesen Moment im Fehlerfall zu treffen ist gering. Problematischer sind z.B. Fehlerzustände der Rega, die das Schreiben einer .err-Datei verursachen. Und gerade im Fehlerfall neigt der Anwender zum "Reboot durch Ziehen des Netzsteckers". Das System ist also nicht unbedingt so robust wie dargestellt. Bei mir hat vor langer Zeit zu CCU2-Zeiten eine teilweise zerschossene SD in eine CCU2 den Neustart verhindert. Damals habe ich noch die Diagrammfunktion genutzt.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

gzi
Beiträge: 450
Registriert: 12.01.2015, 23:37
System: CCU
Hat sich bedankt: 15 Mal
Danksagung erhalten: 14 Mal

Re: CCU2 sicher herunterfahren

Beitrag von gzi » 19.03.2019, 21:36

Ich denke, wir sind uns einig, dass man nicht „einfach so“ den Stecker ziehen sollte. Manchmal ist es aber nötig und manchmal tut es auch das E-Werk.

Allerdings kann ich eher der Ansicht von Schrauber folgen was das Risiko mit Dateisystemen betrifft. Die sind heute schon sehr sehr robust programmiert.

Die Erfahrungen von xel66 waren siche einschneidend aber kann man sie verallgemeinern? . Schliesslich wissen wir z. B. dass SD Karten auch im Dauerbetrieb kaputtgehen. Es kommt durchaus vor, dass Symptome dann erst beim Restart auftreten, denn das Booten dauert nicht von ungefähr recht lange: da wird fast alles irgendwie angegriffen und da fällt es dann viel eher auf, dass etwas bereits kaputt ist, als wenn das System leise vor sich hin dümpelt.

Mein Vorschläge zur Risikoreduktion:
1. reboot nur über die Systemsteuerung und nie via Stecker raus/rein
2. CCU an einer USV betreiben
3. Falls der Stecker wirklich mal raus muss. Dann vorher einen reboot machen
4. Systemvariablen werden beim reboot zuerst immer mit 0 oder leer initialisiert und dann erst mit dem zuletzt bekannten Wert. Da Letzterer verloren gehen kann, sollte man seine Sysvars so einsetzen, dass nix Schlimmes passiert wenn die nach den reboot auf 0 oder leer bleiben.
5. Backup immer durchführen, wenn was geändert wird. Auch nach Firmware Updates.

gzi
Lichtsteuerung, Heizungssteuerung, Überwachung (Feuer, Wasser, Einbruch, Stromausfall, Heizungsausfall, Wetter, Kamera), Alarmierung (optisch, akustisch, mail, SMS, voice call) - CCU, diverse HM- und HMIP Aktoren und Sensoren, Rauchmeldeanlage, UPS, GSM-Alarmwähler, Zugriff aus dem Internet via HTTPS und htdigest authentication, kein Datenkraken-Interface (Google, Amazon, China-Cloud, BND, NSA...) - HomeMatic Sicherheits-Kompendium - Checkliste für Auswahl von IP Kameras - Vergleich aktueller HomeMatic Zentralen - und alle Antworten für das gesamte Universum und den Rest

Schrauber
Beiträge: 556
Registriert: 31.01.2012, 14:17
Danksagung erhalten: 1 Mal

Re: CCU2 sicher herunterfahren

Beitrag von Schrauber » 20.03.2019, 09:47

Man sollte vielleicht auch unterscheiden, wovon man spricht.

Wenn eine SD-Karte kaputt ist, dann ist einfach eine SD-Karte kaputt. Ende der Geschichte.
Das das den Start der CCU verhindern kann ist so. Deswegen ist aber der CCU selbst noch nichts passiert.

Das eigentliche System der CCU kann im Normalbetrieb nicht beschädigt werden. Wie schon beschrieben ist es ReadOnly.
Was man sich zerschießen kann ist das Config-Filesystem, wo persistente Daten abgelegt werden. Sollte der unwahrscheinliche Fall eintreten, dann hilft ein Reset und das Einspielen eines Backups.

Also ja, es sind Fälle denkbar, wo das Ziehen des Netzsteckers Schaden anrichten könnte. Die EIntrittswahrscheinlichkeit ist allerdings äußerst gering, selbst wenn man einmal am Tag den Stecker zieht. Für meinen Teil wurde meine CCU zuletzt vor mehreren Jahren vom Stromnetz getrennt. Mit dieser Häufigkeit liegt dann die Wahrscheinlich eines Schades derart nahe an 0, das man wirklich nicht mehr überlegen muss.

Reboots gibts natürlich öfter. Die erfolgen aber eh sauber.

Übrig bleibt, das seitens des Herstellers kein wirklicher Shutdown vorgesehen ist. Man kann nur etwas hintricksen, von dem man glaubt, das es besser ist als den Stecker zu ziehen.

Interessant wäre in dem Zusammenhang noch, wieviele Fälle von zerschossenen CCUs durch Ziehen des Netzsteckers bekannt sind.
Und damit meine ich keine defekten SD-Karten. Denn das ist schickt ein Hardwaredefekt.

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“