Ich werde 'xfs_repair' auf einigen großen Dateisystemen (ca. 50 TB) testen, da in der Vergangenheit die Speichernutzung hoch war. Während ich das Programm nur auf korrekten Dateisystemen testen konnte, wäre es gut, sie auf einem beschädigten System zu testen.
Was wäre der beste Weg, um ein Dateisystem zu beschädigen? Zusätzliches Guthaben, wenn die Methode jedes Mal wiederholt dieselbe Beschädigung verursacht ....
Um den Leuten eine Vorstellung davon zu geben, was ich 2006 meine, ish
"Um die Reparatur eines Multi-Terabyte-Dateisystems erfolgreich zu überprüfen oder auszuführen, benötigen Sie:
- eine 64-Bit-Maschine
- eine 64-Bit-xfs-Reparatur / xfs-Check-Binärdatei
- ~ 2 GB RAM pro Terabyte Dateisystem
- 100-200 MB RAM pro Million Inodes im Dateisystem.
xfs_repair benötigt normalerweise weniger Speicher als dieser, aber diese Zahlen geben Ihnen einen Überblick darüber, was ein großes Dateisystem, das zu> 80% voll ist, zur Reparatur benötigen kann.
FWIW, das letzte Mal, als dies intern auftauchte, benötigte das betreffende 29-TB-Dateisystem ~ 75 GB RAM + Swap, um es zu reparieren. "
quelle
Antworten:
xfs_db hat eine Option blocktrash welche
Zum Beispiel
xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/xfstest/testfs
quelle
dd blockiert das Gerät, auf dem sich das Dateisystem befindet. Sie können dies so schreiben, dass es wiederholbar ist. Nur ein paar zufällige Blöcke an zufälligen Orten, dann weiter.
quelle
Sie können versuchen, die ersten 512 Bytes (MBR und Partitionstabelle) des Blockgeräts zu überschreiben.
Sichern Sie es zuerst:
Und später auf Null:
Ihr Computer sollte danach nicht mehr starten. Sie können die XFS-Reparatur mithilfe einer Live-CD testen.
quelle