Ich betreibe auf mehreren Arbeitsplatz-PCs Opensuse in unterschiedlichen Versionen. Diese PCs sind mit LSI/3ware Raid-Controllern 9650 und jeweils einem Raid10-Array ausgestattet.
Der 3ware-Controller bietet mehrere Einstellungen für den Write Cache unter der Option "StorSave" an (Performance, Balance, Protection). Der Controller ist auf einem der Systeme nicht batteriegepuffert. Dennoch gab es dort unter Opensuse 11.X und 12.1 (mit und ohne systemd) nie Probleme mit Shutdowns und dem erforderlichen Abschluss aller offenen Dateioperationen.
Bei regulären Shutdowns mit PowerOff kam es nie (!) zu Datenverlusten oder Inkonsistenzen des Filesystems - und zwar völlig unabhängig von der StorSave-Einstellung. D.h., auch die Einstellung "Performance" (max. Datenpufferung im Controller-Speicher) führte bei regulären Shutdowns nie zu Problemen.
Dies hat sich seit Opensuse 12.2. und seiner aktuellen "systemd"-Variante gravierend geändert: Shutdowns mit Poweroff führen bei der StorSave-Einstellung "Performance" regelmäßig zu Datenverlusten und zu resultierenden massiven Inkonsistenzen im Root-Filesystem.
Problematisch finde ich dabei auch folgendes:
Systemd erkennt beim nächsten Bootvorgang die Dateisystem-Inkonsistenz zwar und startet fsck. Der automatische fsck-Prozess scheitert aber ggf.. "systemd" fährt das System dann trotz inkonsistentem Filesystem gnadenlos hoch. Ohne eine Blick in die Logs bekommt man davon ggf. nicht mal was mit, wenn Plymouth aktiv ist.
Normale Shutdowns mit PowerOff sind unter Opensuse 12.2 mit Systemd nur noch mit der 3ware-StorSave-Einstellung "Balance" oder "Protection" sicher durchführbar. Dies bedeutet allerdings Performance-Einschränkungen.
Ist dieses Problem bekannt? Ich finde, dass das gelöst werden sollte. Das reguläre Herunterfahren eines Opensuse 12.2-Systems (mit systemd) sollte auch bei Einsatz von 3ware-Controllern nicht zu Problemen führen. Was es in der Vergangenheit - speziell vor systemd - auch nie tat.
No comments:
Post a Comment