Seite 1 von 1

kein system.Save() bei Installation von Zusatzsoftware

Verfasst: 21.08.2018, 14:24
von jp112sdl
Hallo zusammen!

- betroffenes System: CCU2 mit FW 2.35.16 und mitgelieferter Community-ReGa.

Ich weiß nicht, ob es schon immer so war. Ich habe in der Reihenfolge wie aufgeführt:
  • 4 Systemvariablen gelöscht
  • 2 Programme gelöscht
  • Zusatzsoftware installiert (CUxD 2.1.0)
Nach dem anschließenden automatisch durchgeführten Neustart waren die SV und Programme wieder da.

Wahrscheinlich ist der Hinweis im Zusatzsoftwareinstallationsfenster:
Vom Anwender installierte Zusatzsoftware kann zu unerwünschten Ergebnissen bis hin zu Datenverlust und Systeminstabilitäten führen.
bzgl. des Datenverlusts und Systeminstabilität genau darauf bezogen? :roll:

Re: kein system.Save() bei Installation von Zusatzsoftware

Verfasst: 21.08.2018, 14:47
von Familienvater
Hi,

erstmal würde man ja geschickterweise ein Backup vor dem Installieren des Addons ziehen, damit wären die vorherigen Änderungen auf jeden Fall persistiert.
Ansonsten weiß ich nicht, wie das Installationsscript arbeitet, ob da am Ende einfach ein "reboot" steht, oder ob da ein sauberer Neustart mit vorherigem Speichern getriggert wird...

Der Familienvater

Re: kein system.Save() bei Installation von Zusatzsoftware

Verfasst: 21.08.2018, 15:01
von jp112sdl
Familienvater hat geschrieben:
21.08.2018, 14:47
Ansonsten weiß ich nicht, wie das Installationsscript arbeitet, ob da am Ende einfach ein "reboot" steht, oder ob da ein sauberer Neustart mit vorherigem Speichern getriggert wird...
Da kommt die Axt.

cp_software.cgi#L510
:

Code: Alles auswählen

exec /bin/kill -SIGQUIT 1
Ist also by design. Gut zu wissen, dann kann ich mich darauf einstellen.

EDIT: Evtl. gibt es ja auch (mir noch nicht nachvollziehbare / unbekannte) Gründe, weshalb man dort vorher kein Save() macht.

Re: kein system.Save() bei Installation von Zusatzsoftware

Verfasst: 21.08.2018, 16:57
von jmaus
Also in RaspberryMatic wird an dieser stelle /sbin/reboot aufgerufen statt den init Prozess ein SIGQUIT zu senden (siehe https://github.com/jens-maus/RaspberryM ... e.cgi#L511).

Des Weiteren wird im jeweiligen init Skript von ReGaHss das entsprechende system.Save() gemacht (siehe https://github.com/jens-maus/RaspberryM ... GaHss#L109).

Der eigentliche Grund ist also das an der Stelle nicht explizit system.Save() gemacht wird weil das der init Skript erledigen sollte, was jedoch bei einer CCU2 nicht der Fall ist (bei RaspberryMatic bzw. einer CCU3 so ist/sein wird).

Re: kein system.Save() bei Installation von Zusatzsoftware

Verfasst: 21.08.2018, 17:00
von jp112sdl
Alles klar, danke für den zusätzlichen Hinweis.
Ich nutze die CCU2 auch nur noch als Dev-Umgebung.

Hab mich schon gewundert, dass mir das bei RaspberryMatic noch nie aufgefallen ist. Aber wenn das Verhalten dort auch nicht wie bei der CCU2 ist, um so besser :!: