Das Dateisystem der Festplatte in der Dbox zu überprüfen, ging bis jetzt nur über Telnet unter Eingabe der entsprechenden Befehle. Deswegen habe ich jetzt ein Shellskript erstellt, das es auch ungeübten Benutzern ermöglicht, das extfs3-Dateisystem auf ihrer Dbox-Festplatte zu überprüfen und gegebenfalls zu reapieren.
Anwendung:
Das Plugin HDD-Check dient dazu, das extfs3-Dateisystem der Dbox-Festplatte zu überprüfen und nötigenfalls zu reparieren. Die Idee dazu kam mir, als es mir während einer Aufnahme das Dateisystem der Festplatte zerschossen hat. Vermutlich kam dieser Fehler daher, dass mir die Dbox vorher mehrmals während der Aufnahme abgestürzt ist. Dabei wurden wahrscheinlich einige Dateien nicht mehr geschlossen oder irgendwo auf der Festplatte Datenmüll produziert, was letztendlich dann das Dateisystem der Festplatte zerschossen hat. Um dem vorzubeugen, habe ich dieses Shellskript geschrieben.
Das Skript sollte regelmäßig ausgeführt werden, vor allem jedesmal, wenn die Dbox während einer Aufnahme abgestürzt ist, oder wenn eine Aufnahme unvermittelt abbricht. Damit wird einem größeren Fehler im Dateisystem der Festplatte vorgebeugt.
Vorraussetzung:
Zuallererst muss natürlich eine Festplatte in die Dbox eingebaut sein. Für alle Benutzer, die nicht das JtG-Image verwenden, wie zum Beispiel das DietmarW-Image oder Eigenkompilate, ist ausserdem noch das Messagebox-Plugin msgbox wichtig. Es ist diesem Archiv nicht beigefügt, da es im JtG-Image bzw. dem Image von Hallenberg bereits eingebaut ist.
Erhältlich ist das Messagebox-Plugin hier. Die Installation des Messagebox-Plugins ist in der zugehörigen readme.txt beschrieben.
Wichtig:
Sehr wichtig ist ausserdem, dass dieses Skript nur für das extfs3-Dateisystem geschrieben wurde. Wenn Ihr es für das extfs2-Dateisystem verwenden wollt, müsst Ihr das Skript mit einem UNIX-Editor entsprechend abändern.
Installation:
Die Dateien werden per FTP in folgende Verzeichnisse kopiert und mit den entsprechenden Rechten versehen. Es ist sehr wichtig die Dateien im BINÄR-Modus zu übertragen, sonst läuft das Plugin nicht.
Achtung:
- Bitte beim FTP-Programm Filezilla beachten, dass dieses Programm standardmäßig, Dateien mit der Endung .sh, im ASCII-Modus uberträgt. Dann läuft das Plugin aber nicht. Also darauf achten, wenn Ihr dieses Programm verwendet, es entsprechend zu konfigurieren. Um zu kontrollieren, ob die Dateien ordnungsgemäß übertragen wurden, einfach nach der Übertragung die Dateigrößen vergleichen.
Code: Alles auswählen
Datei Speicherort Rechte Größe in Bytes
--------------------------------------------------------------------------
hddcheck.sh /var/tuxbox/plugins/ 755 3001
hddcheck.cfg /var/tuxbox/plugins/ 644 138
Wenn ihr alles richtig gemacht habt, findet Ihr das Skript unter Dbox-Taste -> Skripte -> HDD-Check - Festplatte ueberpruefen.
![Bild](http://img219.imageshack.us/img219/5230/hddcheck7sc6.png)
Funktion:
Ruft man das Skript HDD-Check - Festplatte ueberpruefen auf, wird zuerst getestet, ob der IDE-Treiber aktiviert ist. Sollte dies nicht der Fall sein, bricht das Skript mit einer entsprechenden Fehlermeldung ab.
![Bild](http://img136.imageshack.us/img136/9615/hddcheck4gw5.png)
Ist dieser Treiber aktiviert, so kommt man in ein Auswahlmenü, in dem erklärt wird, was bei der Ausführung des Skripts zu beachten ist. Hier kann man sich entscheiden, ob man das Skript ausführen möchte oder nicht. Hier die Auswahl zwischen nein/ja treffen und mit der OK-Taste bestätigen. Nicht die Home-Taste verwenden, sonst wird das Skript ausgeführt, auch wenn man es nicht will. Dies ist eine Eigenheit des Messagebox-Plugins und kann nicht so einfach abgefangen werden.
![Bild](http://img136.imageshack.us/img136/3883/hddcheck1is1.png)
Bitte die Hinweise im Auswahlmenü sorgfältig durchlesen und auch befolgen, ich gebe keine Haftung für einen Datenverlust.
![Bild](http://img241.imageshack.us/img241/9962/hddcheck2iv6.png)
Hat man sich dafür entschieden, das Skript auszuführen, so darf jetzt auf keinen Fall mehr die Box ausschalten oder resetten bzw. den Stecker ziehen.
!!! Sonst droht Datenverlust !!!
Bitte unbedingt das Skript bis zum Ende laufen lassen.
Zunächst wird die Festplatte ungemountet. Danach wird getestet, ob das Unmounten auch erfolgt ist. Sollte die Festplatte nicht ungemountet werden können, so wird das Skript mit einer entsprechenden Fehlermeldung abgebrochen.
![Bild](http://img240.imageshack.us/img240/1293/hddcheck5xn2.png)
Eine Ursache dafür kann sein, dass noch irgendein Programm, das auf der Festplatte liegt, noch nicht beendet wurde. Mir ist dies passiert, weil ich das WOL-Timer-Plugin auf die Festplatte ausgelagert hatte und dessen woltimerd (Daemon) noch lief. Deswegen ist die Unmount-Überprüfung von mir eingebaut worden.
Danach wird die Festplatte mit dem im Image eingebauten Befehl fsck.ext3 überprüft. Falls Fehler im Dateisystem vorhanden sind, wird versucht das Dateisystem zu reparieren. Diese Überprüfung dauert einige Zeit, bei meiner 100 GB-Fujitsu 2,5"-Zoll Notebookfestpatte gehen dafür 5 Minuten ins Land. Also nicht ungeduldig werden, und das Skript zu Ende laufen lassen.
Ist die Überprüfung beendet, so wird die Datenpartition der Festplatte wieder nach /hdd gemountet. Dann wird noch das Ergebnis der Festplattenüberprüfung auf dem Bildschirm für 30 Sekunden angezeigt.
![Bild](http://img169.imageshack.us/img169/665/hddcheck3pb9.png)
Wer sich die Daten der Überprüfung genauer ansehen möchte, findet sie in der Datei /tmp/fsck.log.
Ich wünsche Euch noch viel Spaß mit dem HDD-Check-Plugin.
Das HDD-Check-Plugin kann hier heruntergeladen werden.
Bitte alle Fragen und Diskussionen zu diesem Plugin nur in diesen Thread posten, damit das Forum übersichtlich bleibt.
Edit On 11.09.2006:
Das Skript wurde jetzt fest in den aktuellen Snapshot des JtG-Images eingebaut. Wenn Ihr diesen verwendet, braucht Ihr es nicht mehr einzubauen.