So reparieren Sie fehlerhafte Blöcke unter Linux
Diese werden als fehlerhafte Soft-Sektoren oder fehlerhafte Software-Blöcke bezeichnet und können lediglich durch eine einfache Dateisystemoperation korrigiert werden. Angesichts der Gefahr des Schreibens in fehlerhafte Blöcke ist es jedoch immer eine gute Idee, Ihre Untersuchung mit einer SMART-Dateninspektion zu beginnen, wenn Sie sich mit einem festen Volume befassen. Dies ist zerstörungsfrei und kann Geometrieprobleme beseitigen, bevor Sie fortfahren. Wenn Sie nicht mit einem festen Volume arbeiten, möchten Sie Ihre Untersuchung möglicherweise mit der folgenden Methode beginnen.
Methode 1: Überprüfen von SMART-Daten
Es ist leicht zu glauben, dass diese fehlerhaften Sektoren lediglich ein Softwarefehler sind, aber es gibt eine Möglichkeit, zu überprüfen, ob dies der Fall ist. Mit SMART-Daten ist es einfach, die Firmware der Festplatte zu überprüfen und sicher zu wissen. Öffnen Sie das GNOME-Festplatten-Dienstprogramm über das Dash in Unity, das Whisker-Menü in Xfce4, das Zubehör-Menü in LXDE oder über das GNOME-Anwendungsmenü in KDE. Sie können es auch starten, indem Sie am Terminal Gnome-Disks eingeben und die Eingabetaste drücken. Klicken Sie auf das Menü neben den Steuerelementen des rechten Fensters, nachdem Sie Ihre Festplatte mit dem Zeiger in der linken Spalte markiert haben. Bei den meisten GNU / Linux-Installationen verwendet das Dienstprogramm “Festplatten” standardmäßig Ihre primäre Festplatte.
Wählen Sie SMART Data & Self-Tests aus dem Menü. Sie können auch STRG gedrückt halten und S drücken, um dieses Fenster zu öffnen. Dies zeigt Ihnen den aktuellen Zustand Ihres Laufwerks. Wenn die Werte leer sind, klicken Sie auf die Schaltfläche Selbsttest starten, um Ihre Festplatte zu zwingen, einen Selbsttest durchzuführen. In der Zeile “Gesamtbewertung” oben erfahren Sie, was das GNOME Disks Utility von Ihrem Laufwerk hält.
Möglicherweise müssen Sie auch auf einer Vollbildanzeige durch die SMART-Attribute scrollen. Achten Sie besonders auf eine Option namens Neuzuweisungsanzahl. Dies zeigt Ihnen, wie viele Sektoren bereits neu zugewiesen wurden. Wenn es viele fehlerhafte Sektoren gibt, ist es wahrscheinlich eine gute Idee, das Laufwerk auszutauschen, bevor es vollständig ausfällt.
Methode 2: Überprüfen auf den richtigen Superblock
Manchmal stellen Sie möglicherweise fest, dass SMART-Daten alles in der richtigen Reihenfolge anzeigen, aber Sie haben möglicherweise von bestimmten Festplatten-Dienstprogrammen den Fehler “Bad Superblock” erhalten. Wenn Sie mit SD-Karten, USB-Speichersticks oder einem anderen solchen Speicher arbeiten, können Sie SMART-Daten nicht lesen und haben möglicherweise dennoch Fehler. Dies könnte sehr gut ein Softwareproblem sein. Betrachten Sie das Problem der Ausführung eines Befehls wie:
fsck.ext4 / dev / sda
Dies zeigt höchstwahrscheinlich an, dass Sie einen fehlerhaften Superblock haben, der sich auf den Masterblock in Ihrem Dateisystem bezieht. Dies ist das Ergebnis eines CLI-Fehlers und kein echter fehlerhafter Block. Da sich / dev / sdb auf ein Laufwerk und nicht auf eine Parition bezieht, sucht Ihr Befehl fsck nach einem Superblock, in dem es keinen gibt, und glaubt fälschlicherweise, dass etwas nicht stimmt. Zum Glück war dies kein destruktiver Befehl. Lauf:
sudo fsck.ext4 / dev / sda1
Möglicherweise wird Ihnen jetzt mitgeteilt, dass Ihr Dateisystem sauber ist. Stellen Sie sicher, dass die Nummer nach ext mit der ext-Version Ihres Volumes übereinstimmt.
Möglicherweise wird dieser Fehler auch angezeigt, wenn Sie versuchen, ext2 / 3/4 fsck auf einem FAT12 / 16/32-, NTFS- oder HFS / HFS + -Volume auszuführen. Der Konsistenzprüfer ist verwirrt und denkt, dass etwas nicht stimmt, obwohl der Dateistrukturtyp in Wirklichkeit nicht den Erwartungen entspricht. Führen Sie fsck.vfat oder dosfsck auf FAT-Volumes aus, unabhängig davon, welche Bitversion Sie verwenden. Sie können den Schalter -t nach dosfsck oder fsck.vfat (fsck.msdos unter einigen Linux-Versionen) verwenden, um unlesbare Cluster als fehlerhafte Blöcke zu markieren.
Methode 3: Überprüfen auf NTFS-Volumes auf fehlerhafte Blöcke
Angenommen, Sie starten Microsoft Windows und Linux doppelt und haben Superblock- oder andere fehlerhafte Sektorfehler auf einem NTFS-Volume. Starten Sie dann Windows neu und führen Sie über die Befehlszeile chkdsk / rc: aus und ersetzen Sie c: durch den Laufwerksbuchstaben des NTFS-Volume in Frage. Windows muss höchstwahrscheinlich neu gestartet werden, um den Oberflächenscan abzuschließen. Dies kann einige Zeit dauern. Wenn sich also herausstellt, dass Ihr Betriebssystem nicht reagiert, liegt dies lediglich an der fraglichen Zeitdauer. Wenn Sie eine Fehlermeldung erhalten haben, dass Sie nicht über die richtigen Berechtigungen verfügen, klicken Sie im Startmenü mit der rechten Maustaste auf die Eingabeaufforderung und wählen Sie Als Administrator ausführen, bevor Sie fortfahren.
Wenn Sie mit einem NTFS-Volume ausschließlich unter Linux arbeiten, haben Sie nicht so viel Rückgriff, aber wenn der Fehler bei fehlerhaften Blöcken nur auf eine Typinkongruenz zurückzuführen ist, können Sie ihn korrigieren. Führen Sie sudo ntfsfix / dev / sdb1 aus und ersetzen Sie den Buchstaben und die Zahl nach / dev / sd durch die richtige Geräte- und Partitionskennung. Denken Sie daran, dass Sie sudo fdisk-l jederzeit ausführen oder zum GNOME-Festplatten-Dienstprogramm zurückkehren können, wenn es installiert ist, um die Namen aller an Ihr System angeschlossenen Volumes zu überprüfen. Sie können es als sudo ntfsfix -d / dev / sdb1 ausführen, wenn Sie sicher sind, dass das Dirty-Bit gelöscht werden soll.
Wenn Sie sicher sind, dass ein NTFS-Volume weiche fehlerhafte Blöcke enthält, die nicht auf die physische Hardwaregeometrie zurückzuführen sind, z. B. wenn Sie eine alte Festplatte mit fehlerhaften Sektoren auf ein neues Volume geklont haben, führen Sie sudo ntfsfix -bd / dev / sdb1 auf einem beliebigen Datenträger aus Lautstärke, die Sie möchten. Dies setzt die Liste der fehlerhaften Blockmarkierungen zurück.
Methode 4: Verwenden des Linux-Dienstprogramms badblocks
Nachdem Sie eine Live-ISO-Linux-Version gestartet oder einen anderen Weg gefunden haben, um ein ext2-, ext3- oder ext4-Dateisystem zu entfernen, können Sie sudo fsck.ext4 -c / dev / sda1 ausführen, um einen schreibgeschützten Scan nach fehlerhaften Blöcken durchzuführen. Natürlich müssen Sie nach / dev / sd die richtige Datenträgerkennung und nach fsck.ext die richtige ext-Versionsnummer verwenden, um sie ordnungsgemäß auszuführen. Wenn Sie stattdessen -cc angeben, verwendet das Programm einen noch umfangreicheren zerstörungsfreien Lese- / Schreibtest.
Dies ist die normale Art, das Dienstprogramm badblocks zu verwenden, aber Sie können es auch technisch verwenden, wenn es einsam ist. Führen Sie sudo badblocks -n auf einem Gerätenamen aus, um es selbst auszuführen, und melden Sie badblocks direkt in Ihrem Terminal. Sie können die Option -w verwenden, um einen Test im Schreibmodus zu verwenden, aber verwenden Sie die Optionen -n und -w nicht zusammen, da sie sich gegenseitig ausschließen. Sie sollten unter keinen Umständen die Option -w auf einem Volume mit Daten verwenden, da dadurch alles sauber gelöscht wird. Verwenden Sie die Option langsamer -n, da in diesem Fall Ihre Daten erhalten bleiben. Die Option -w ist in Ordnung für Volumes, die Sie gerne löschen. Die Option -v kann mit beiden kombiniert werden und gibt Ihrem Terminal eine ausführliche Ausgabe, die zur Überprüfung der Datenbeschädigung nützlich ist. Sie können jederzeit die Option -o mit dem Namen einer Textdatei verwenden, um die Informationen zu schreiben, damit Sie sie später anzeigen können. Möglicherweise möchten Sie es als sudo badblocks -nv -o badblocks.log / dev / sdb1 ausführen, um einen Snapshot zu erhalten, da Sie viele Informationen sehen, wenn es echte fehlerhafte Blöcke gibt.