Dateisystem mit fsck reparieren ?

  • Hallo Forum,

    Zu dem Thema ist schon einiges geschrieben worden, ich habe hier auch schon viel dazu gelesen, kann aber mein Problem nicht lösen, deshalb meine Bitte um Hilfe.

    Seit gestern funktionieren einige Anwendungen (d.h. weitestgehend funktioniert er noch!) auf meinem Raspi nicht mehr richtig. Ich hatte ein Backup meiner SD-Karte gemacht (auf einem Win7-PC, mit Win32DiskImager). Natürlich habe ich die Karte bei ausgeschaltetem Pi entnommen und eingesteckt.
    Jetzt habe ich im log nachgesehen und diesen Eintrag gefunden:

    Code
    kernel: [   20.536212] FAT-fs (mmcblk0p5): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.


    Habe mich dann hier informiert wegen fsck und habe dosfstools installiert, und mmcblk0p5 ungemountet und dann mit fsck bearbeitet und dann wieder gemounted. Den genauen Befehl habe ich jetzt nicht mehr auswendig und komischerweise kann ich nach dem reboot in putty nicht mehr die zuletzt ausgeführten Befehle aufrufen, zumindest hat er einige vergessen :s
    Ich habe jetzt irgendwie den Überblick verloren :(
    In dem Raspi bzw. auf der Karte steckt ne Menge Arbeit und ich will jetzt nicht einfach leichtfertig irgendwelche extremen Schritte gehen ohne mal hier jemanden mit Weitblick gefragt zu haben.
    Was mir auch auffällt ist, dass in syslog plötzlich wesentlich weniger Einträge nach einem reboot stehen.
    Ach ja, sudo blkid zeigt bei mir das an:

    Code
    pi@Raspi1 ~ $ sudo blkid
    /dev/mmcblk0p1: LABEL="RECOVERY" UUID="7D00-DF3F" TYPE="vfat"
    /dev/mmcblk0p3: LABEL="SETTINGS" UUID="3220be3d-193d-4379-bc45-01d2d59fa9eb" TYPE="ext4"
    /dev/mmcblk0p5: LABEL="BOOT" UUID="0F4C-56A2" TYPE="vfat"
    /dev/mmcblk0p6: LABEL="root" UUID="d30a45d5-5d13-4827-9c2e-3f0764838b5e" TYPE="ext4"


    und df -h das hier

    Code
    pi@Raspi1 ~ $ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    rootfs          5.6G  3.3G  2.1G  61% /
    /dev/root       5.6G  3.3G  2.1G  61% /
    devtmpfs        214M     0  214M   0% /dev
    tmpfs            44M  284K   44M   1% /run
    tmpfs           5.0M     0  5.0M   0% /run/lock
    tmpfs            88M     0   88M   0% /run/shm
    /dev/mmcblk0p5   60M   15M   45M  25% /boot

    Dann noch: Im Anfangstext nach Anmeldung über putty steht, dass die letzte Anmeldung am 21. Mai war, was aber nicht stimmt. Gestern am 23. funktionierte alles noch :(

    Jede Hilfe ist willkommen :helpnew:

  • Für ein fsck des Systems durchzuführen darf dies nicht gemountet sein. Bedeutet also das du entweder ein 2.Linux System benötigst oder beim Booten ein fsck durchführen musst. Für letzteres hast du 2 Möglichkeiten:

    • Code
      sudo touch /forcefsck 
      sudo reboot


      Durch 'touch' wird eine leere Datei erzeugt (und die 'modification time' erneuert). Das System prüft dann automatisch beim nächsten Boot das Dateisystem und löscht diese Datei anschließend.

    • Code
      sudo shutdown -Fr now

      Durch das Parameter -F wird ein fsck beim nächsten Boot durchgeführt.

    Bei beiden Möglichkeiten ist zunächst nur /boot/ verfügbar, in der sich die Firmware und der Kernel befindet. Dadurch kann problemlos das eigentliche Systemlaufwerk überprüft werden. Wenn der erfolgreich war wird dies ebenfalls eingebunden und das System startet wie regulär auch.

  • Danke für die Antwort.

    Ich habe die Befehle nun ausgeführt. Zwischenzeitlich ist mir aufgefallen, dass die sich komisch verhaltende Anwendung manchmal funktioniert, manchmal nicht. Habe da noch kein Prinzip hinter erkannt. Vielleicht ein Hardwaredefekt in der SD Karte?
    Die korrekte Zeit des letzten Logins wird jetzt wieder richtig angezeigt aber direkt nachdem ich deine Befehle ausgeführt hatte wurde sie noch falsch angezeigt, auch nach dem nächsten reboot noch.
    Die Einträge in syslog sind immer noch sehr minimalistisch. Früher standen da nach jedem reboot gefühlte 100 Zeilen, jetzt macht nur noch dhclient und cron Einträge, nichts mehr vom kernel.
    Kommt dir oder sonst jemandem das bekannt vor? :s
    Wie würdest du weiter vorgehen bzw. wonach sollte ich suchen? Und wo sehe ich was der Scan mit fsck nun gebracht hat? Oder werden dann Fehler automatisch behoben?

  • Naja der PI hat keine Uhr. Das übernimmt ein Dienst -> npd . Ich persönlich bevorzuge aber rdate.. Ein Crontabeintrag ( sudo crontab -e ) könnte zB wie folgt aussehen:

    Code
    * * * * *     /usr/bin/rdate -s chronos.zedat.fu-berlin.de >/dev/null 2>&1

    Welches "syslog" meinst du? /var/log/syslog ? Ich weiß nicht genau was du meinst was da sonst noch drin stehen müsste :s Vielleicht meinst du die Sachen die in /var/log/dmesg oder /var/log/message stehen?

    Keine Ahnung wie lange deine SD schon im Einsatz ist, oder was du mit dem System gemacht hast, oder wieviel auf der SD geschrieben/gelöscht wurde usw... Kann natürlich sein das diese mittlerweile zu abgenutzt ist und ihren Geist aufgibt - NAND-Flash hält halt nicht ewig... Wenn das der Fall ist kann man nicht viel machen außer die SD auszutauschen.


  • Naja der PI hat keine Uhr. Das übernimmt ein Dienst -> npd .


    Ich verwende ntpdate, auch in crontab angelegt. Der hat auch funktioniert bzw. ich habe die Zeit mit

    Code
    date

    öfter gecheckt seit dem ich im Verdacht habe das da was nicht stimmt.
    Dass er die letzten Befehle die ich über putty eingegeben hatte nicht finden konnte ist ja auch schon verdächtig.
    Wenn ein Fehler im Bereich /dev/mmcblk0p5 vorliegt und das auf /boot gemountet ist, dann stimmt ja wahrscheinlich was beim booten nicht. Deswegen vermute ich das auch die Einträge ins log ausbleiben.


    Welches "syslog" meinst du? /var/log/syslog ?


    Ja genau. Da steht sonst noch eine Unmenge Zeug drin, z.B. die eingangs erwähnte Zeite, dass ich doch fsck laufen lassen soll.


    Keine Ahnung wie lange deine SD schon im Einsatz ist, oder was du mit dem System gemacht hast, oder wieviel auf der SD geschrieben/gelöscht wurde usw... Kann natürlich sein das diese mittlerweile zu abgenutzt ist und ihren Geist aufgibt - NAND-Flash hält halt nicht ewig... Wenn das der Fall ist kann man nicht viel machen außer die SD auszutauschen.


    Ist seit einigen Monaten im Einsatz. Auf dem Pi läuft einiges noch nicht optimal, daher mehr SD-traffic als nötig. Ich kann auch nicht ganz ausschließen, dass der Pi mal mangels Versorgungsspannungsunstabilität ausgefallen ist, eine komplizierte Geschichte, weil der Pi bei mir 24/7 im Solarbetrieb in meinem Garten in 15m Höhe in einem Baum hängt, derzeit mit einem LM2596 DC/DC Wandler. Naja, wird OT langsam...

    Also aktuell laufen die Anwendungen irgendwie wieder. Von daher ein heikler Zustand. Das Problem ist noch nicht behoben, von daher lasse ich das Thema noch mal offen. Vielleicht kennt ja jemand die Symthomatik und kann noch was dazu sagen.
    Und ich werde mir schonmal zwei Ersatz-SD-Karten holen. Ach ja, kann man eigentlich per FileZilla die Karte klonen? Wäre praktisch in meinem Fall ;) Du hast da sicher den Überblick, bist ja viel unterwegs hier :thumbs1:
    Nochmals Danke für die Rückmeldungen.

  • Das denke ich mir auch. Die Frage ist nur ab wann man von schwankend reden muss. Sind das 5V +- 5mV oder +- 500mV ?!:s Hinter den Regler habe ich zusätzlich noch 1500 µF gesetzt, der sollte Spannungseinbrüche ein Stück weit ausgleichen.
    Es hat sich seit gestern weiter bestätigt, dass der Funktion des Raspi manchmal da ist, manchmal nicht. Wie bei einem Wackelkontakt. Vielleicht trifft das ja tatsächlich auf kleine Teilbereiche der SD-Karte zu. Die Karten sind ja recht biegbar.
    Bleibt die Frage ob man die gesamte SD-Karte klonen kann ohne sie überhaupt heraus zu nehmen. Damit reduziert man dann ja die Wahrscheinlichkeit eines Hardwaredefekts.
    Kann natürlich mal hier stöbern aber vielleicht kannst du ja ein Stichwort nennen, etwa FileZilla (?). Das passt ja auch zu dem Themenkomplex -> fsck, Defekt im Dateisystem aufgrund von Hardareproblemen etc...:thumbs1:

  • Hallo Stef7,

    üblicherweise ist Spannung unter 4,75 V und mehr als 5,25 V kritisch.

    Bei niedriger Spannung schaltet der Raspberry Pi mit allen Konsequenzen aus - bei höherer Spannung besteht die Gefahr, dass Bauteile zerstört werden können.

    Deine aktuelle Beschreibung hört sich so an, als wenn die SD-KArte keinen durchgängigen Kontakt hat. Derartiges wurde hier im Forum schon mehrfach thematisiert. Die meisten Lösungen beinhalteten, dass man ein Stück dünne Pappe quasi als Keil einführt, um so einen besseren Kontakt zu ermöglichen.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Deine aktuelle Beschreibung hört sich so an, als wenn die SD-KArte keinen durchgängigen Kontakt hat.

    Ja Danke. Das kann tatsächlich auch gut sein. Ich werde von nun an versuchen das Backup ohne herausziehen der SD-Karte durchzuführen.
    Ich werde mir das mal genauer ansehen wie stabil die mechanische Verbindung (Halterung, Federn) ist. Ich musste nämlich die Karte wegen schlechter Zugänglichkeit mit einer kleinen Zange herausnehmen bzw. reinstecken. Vielleicht habe ich dabei ausversehen die Gegendrucklamellen überstrapaziert...

    Mit etwas Kontaktspray und Taschentuch mal über die Kontakte wischen kann sicher auch nicht schaden.

    Also ein klassischer Wackelkontakt...
    Ich werd's bald sehen. Warte jetzt noch auf die Bestellung der neuen SD-Karten...

    :thumbs1:

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!