So beschädigen Sie ein Dateisystem

So beschädigen Sie ein Dateisystem

Ich werde „xfs_repair“ auf einigen großen Dateisystemen (ca. 50 TB) testen, da der Speicherverbrauch in der Vergangenheit hoch war. Obwohl ich das Programm nur auf Dateisystemen testen konnte, die korrekt waren, wäre es gut, sie auf einem beschädigten System zu testen.

Was wäre also die beste Methode, ein Dateisystem zu beschädigen? Extrapunkte, wenn die Methode jedes Mal die gleiche Beschädigung verursacht...

Um den Leuten eine Vorstellung davon zu geben, was ich meine, im Jahr 2006

„Um ein Dateisystem mit mehreren Terabyte erfolgreich zu prüfen oder zu reparieren, benötigen Sie:

  • eine 64-Bit-Maschine
  • eine 64-Bit-XFS_Repair/XFS_Check-Binärdatei
  • ~2 GB RAM pro Terabyte Dateisystem
  • 100–200 MB RAM pro Million Inodes im Dateisystem.

xfs_repair verwendet normalerweise weniger Speicher, aber diese Zahlen geben Ihnen eine ungefähre Vorstellung davon, was die Reparatur eines großen Dateisystems, das zu mehr als 80 % voll ist, erfordern kann.

Als dies das letzte Mal intern auftrat, waren für die Reparatur des betreffenden 29-TB-Dateisystems etwa 75 GB RAM+Swap erforderlich."

Antwort1

xfs_db hat eine Option blocktrash, die

Löscht zufällig ausgewählte Dateisystem-Metadatenblöcke. Das Löschen erfolgt für zufällig ausgewählte Bits in den ausgewählten Blöcken. Dieser Befehl ist nur in Debugversionen von xfs_db verfügbar. Er ist zum Testen xfs_repair(8)und ... nützlich xfs_check(8).

Zum Beispiel

xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/xfstest/testfs

Antwort2

dd-Blöcke auf das Gerät, auf dem sich das Dateisystem befindet. Sie können dies per Skript wiederholen. Nur ein paar zufällige Blöcke an zufälligen Orten, dann geht es weiter.

Antwort3

Sie könnten versuchen, die ersten 512 Bytes (MBR und Partitionstabelle) des Blockgeräts zu überschreiben.

Sichern Sie es zuerst:

dd if=/dev/device bs=512 count=1 of=backup.bin

Und später auf Null setzen:

dd if=/dev/zero bs=512 count=1 of=/dev/device

Ihr Computer sollte danach nicht mehr booten. Sie können die XFS-Reparatur mit einer Live-CD testen.

verwandte Informationen