Stromausfall killt FHEM-Server

Begonnen von MarkusAutomaticus, 09 September 2017, 16:04:18

Vorheriges Thema - Nächstes Thema

MarkusAutomaticus

Hallo zusammen,

leider ist der Grund für meine Rückmeldung nach längerer Pause (mein Smarthome funktionierte einfach und ich hatte andere Schwerpunkte) kein Erfreulicher.

Wir hatten heute Nachmittag einen Stromausfall.
Während der eigentliche Stromausfall vermutlich nicht so tragisch gewesen wäre,
haben es die Energieversorger hinbekommen, für 2-5 Sekunden den Strom wieder an und gleich darauf wieder abzuschalten.

Ich hatte daraufhin alle kritischen Geräte vom Netz genommen, aber meinen FHEM-Server (Intel NUC mit SSD) hat's wohl während dem Booten erwischt.

Wenn ich das Gerät starte, sehe ich zwar noch das Bootmenü und kann Ubuntu auswählen (bzw. ältere Kernel davon) aber danach bleibt der Schirm schwarz.

Inzwischen habe ich die SSD ausgebaut und konnte mit einem Linux-Treiber die Dateien auf meinen Windows 10 PC sichern
und eben mache ich noch ein Backup der gesamten SSD mit dem HDD Raw Copy Tool, so dass ich zuversichtlich bin, dass ich das System wieder hinbekomme.

Allerdings würde ich mir den Aufwand, das Ubuntu neu zu installieren, FHEM einzurichten gerne sparen.

Hat jemand einen Tipp für mich, ob man die Bootfähigkeit wieder reparieren kann?
Oder wie ich möglichst schmerzfrei FHEM aus dem gesicherten /opt/ Verzeichnis wieder herstellen kann?

Viele Grüße
Markus
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

Beta-User

Hallo Markus,

das ist wirklich ärgerlich, schade, dass einen sowas auch mit ordentlicher HW ereilen kann.

Bin nicht ganz sicher und auch kein Experte, daher unter Vorbehalt...
Und ob das hilft hängt auch davon ab, ob und was da ggf. vom Dateisystem auch hops gegangen ist.

Versuche es mal mit einer Live-CD und einer Aktualisierung von GRUB2: https://wiki.ubuntuusers.de/GRUB_2/Reparatur/

GRUB müßte eigentlich nachsehen, ob und welche Kernel auf der SSD noch verfügbar sind, die Partitionen scheinen ja noch intakt zu sein und das Risiko, dass dabei viel kaputtgeht sollte auch nicht besonders groß sein.

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

chris1284

Zitat von: Beta-User am 09 September 2017, 16:16:45
das ist wirklich ärgerlich, schade, dass einen sowas auch mit ordentlicher HW ereilen kann.

das ist nicht hardwareabhängig. klar sind sdkarten eines pis noch etwas mehr gefährdet aber auch ein linux/windows/xxx auf hdd (nicht readonly) kann bei stromausfall in betsimmten momenten nicht verkraften.

unter windows würde ich jetzt die reparaturkonsole starten und ein chkdsk (unter win hilft das in den meisten fällen) machen bzw unter linux erstmal ein fsck. da du ja per livesystem oder windows auf die platte zugreifen kannst hilftgf. auch ein prüfen der logs um den fehler zu finden

MarkusAutomaticus

Hallo zusammen,

danke für die Antworten.

Angenommen, ich bekomme das ursprüngliche Betriebssystem nicht mehr flott und ich mache die SSD platt und installiere den jetzt aktuellen Ubuntu-Server drauf,
kann ich dann, wenn ich ein jungfräuliches FHEM drauf installiert habe, einfach den Inhalt des alten /opt/FHEM -Ordners zurückspielen und alles tut wieder?

Gruß
Markus

PS: Unter /var/log/ war nur syslog und auth.log zeitlich in der Nähe des Ereignisses und beides enthielt nichts Sachdienliches.
Oder gibt es noch andere Logs?

PPS: der NUC ist mit dem Fernseher verbunden und als ich ihn vom Netz aus nicht mehr erreichen konnte, habe ich den Fernseher auf den entsprechenden Eingang geschaltet.
Dort stand eine Menge unter anderem auch "Kernel Panic". Blöderweise habe ich das nicht abfotographiert, weil ich damals noch dachte, dass ein Neustart schon alles wieder beheben würde.

Steht das vielleicht noch in einem Log?
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

Wernieman

#4
Live-System booten und Platte nach Filesystemproblemen abprüfen, Stichwort "fschk". Alternativ, da schon ausgebaut, SSD per 2. Unix-Rechner prüfen.

Was mich wundert, das er nach dem Kernelauswählen überhaupt nichts sagt?

Der Tip von Markus ist aber auch gut ... als Plan B

Wenn beies Nicht klappt, fallen mir noch diverse andere Möglichkeiten ein ,....

Edit:
Bezüglich "kernel-Panic", schaue mal in den Kern-log (/var/log/kern.log) .. wenn er denn die Platte mounten konnte.

Damit dürfte übrigens "Plan B", Reparatur von Grub nicht notwendig sein ...

Edit2:
Wenn er jetzt bootet, was kommen denn als letzte Meldung?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Wzut

#5
Zitat von: MarkusAutomaticus am 09 September 2017, 18:09:42
kann ich dann, wenn ich ein jungfräuliches FHEM drauf installiert habe, einfach den Inhalt des alten /opt/FHEM -Ordners zurückspielen und alles tut wieder?
kannst du - aber :
a. installiere das Virgin FHEM mittels apt-get das bringt dann schonmal  etliche Perl Packete mit
b. spiele nur deine fhem.cfg zurück
c. alles wird vermutlich nicht laufen - hängt halt stark davon ab welche FHEM Module du nutzt und welche extra Pakte diese noch benötigen
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

kaputt

Solange das Grub Menü zur Auswahl kommt kannst du auch von Hand booten.
Davon ausgehend das die SSD die einzige Disk ist kannst du, wenn das Grub Menü erscheint, die Taste c drücken.
Das ist jetzt das cli von Grub, mit folgenden Befehlen kannst du dein System booten:
linux (hd0,msdos1)/boot/vmlinuz-4.10.0-14-generic root=/dev/sda1
initrd (hd0,msdos1)/boot/initrd.img-4.10.0-14-generic
boot
Variabel ist Bezeichnung der Partition. Aber Grub ist so nett und vervollständigt per TAB Taste deine Befehle bzw. bietet dir eine Auswahl an.
Beispiel: du gibst "linux (hd" ein und drückst die TAB Taste dann zeigt dir Grub welche Disken und/oder Partitionen zur Auswahl stehen.
Gruß aus L.E.
Uwe

Bei U/Linux hilfreich aber nicht nötig, bei Windows nötig aber nicht hilfreich!
Rechtschreibfehler sind beabsichtigt und Ausdruck meiner Persönlichkeit

MarkusAutomaticus

#7
Ich wusste dass das zäh wird  :(

Der Tipp mit dem "c" im grub menu hat insofern funktioniert, als ich tatsächlich eine Kommandozeile bekommen hatte.
Leider bin ich damit nicht weiter gekommen.

Dann habe ich mir ein Knoppix auf einen USB-Stick kopiert und damit gebootet.
mit dem sich darauf befindlichen gparted konnte ich vermeintlich die beiden kleineren Partitionen reparieren.
An die Große bin ich nicht dran gekommen und ich konnte diese auch nicht aushängen (war ein Schlüssel davor)

In der Hoffnung, dass die beiden kleinen Partitionen das Problem waren, neu gebootet.
Ohne Erfolg.

Über das bootmenu versucht ältere Kernel im recovery Mode zu laden.
Beim ältesten kommt tatsächlich ein Menü mit Hilfstools.

Diese der Reihe nach angewendet, neu gestartet ohne Erfolg.

Immerhin habe ich den Schirm mit der Kernel panic wieder:


...
VFS: cannot open root devices "mapper/Jarvis3--vg-root" or unknown-block(0,0): error -6
...
Kernel panic - not syncing: VFS: unable to mount root fs on unknown block(0,0)


Ich nehme an, dass wars jetzt für mich als Linux noob und eine Neuinstallation steht an, oder?

Gruß
Markus

Edit: vom letzten Kernel aus dem Menü (der mit dem funktionierenden recovery mode) konnte ich gerade durch booten und FHEM ist wieder erreichbar.

Wie bekomme ich das System von hier aus wieder auf einen aktuellen Stand?
Vorallem so, dass der NUC nach dem Einschalten direkt bootet, ohne das Menü anzuzeigen?
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

Beta-User

Versuche mal, den aktuellsten Kernel neu zu konfigurieren bzw. zu installieren (dpkg-reconfigure <kernel-paket> bzw. apt-get reinstall <kernel-paket>). Damit sollte die GRUB-Konfiguration repariert werden.

Selbst wenn das funktionieren sollte: du solltest dich nicht darauf verlassen, dass nicht irgend etwas massiv in die Binsen gegangen ist und daher alles wichtige sichern.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

MarkusAutomaticus

Hallo zusammen,

inzwischen ist ein nagelneues lubuntu 16.04.2 LTS drauf.
Bei der Installation habe ich extra drauf geachtet:

Auch hier werden ungefragt und ohne Eingriffsmöglichkeiten zu haben, 3 Partitionen angelegt:


  • eine mit 500 MB wieder viel zu kleine Bootpartition
  • das eigentliche System
  • eine Swap-Partition

Die Bootpartition füllt sich im Laufe der Zeit so lange mit alten Kerneln an bis das System unwartbar wird.
Nur so als Warnung!

Ich hab danach noch mal vom USB-Stick gebootet und der Boot-Partition 10 GB zugebilligt.
Viel hilft hoffentlich viel ;-)
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

franky08

Wenn ich mich nicht irre, kannst du beim partionieren angeben das alles in einer Partition sein soll, außer die swap Partition, war jedenfalls bei mir so.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Beta-User

Autoremove, dann sind 500MB ausreichend.


LXDE.... Für einen Server braucht es keine GUI....
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Wernieman

Wenn man sich angewöhnt, veraltete Kernel auch wieder zu löschen, reicht 500MByte. Jedenfalls finde ich 10g Verschwendung ,o)

Übrigens hattest Du im alten System ein LVM drauf ... und er hatte scheinbar damit Probleme ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Morgennebel

Zitat von: MarkusAutomaticus am 10 September 2017, 11:15:39
eine mit 500 MB wieder viel zu kleine Bootpartition

Das ist viel zu groß. 128 MB reichen auch. 256 MB sind Luxus.

Zitatapt-get autoremove
wirkt Wunder gegen Dateileichen...

Ciao, -MN

Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

MarkusAutomaticus

Hallo zusammen,

jetzt habe ich endlich alles vorbereitet.
Ein jungfräuliches FHEM 5.8 ist installiert und läuft.

Jetzt würde ich am liebsten die gesicherten Dateien unter /opt/fhem drüber kopieren.

Ist das zielführend?

Gruß
Markus
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator