web-dev-qa-db-ja.com

破損したFATファイルシステムを作成する

破損したFATファイルシステムを検索して修復するアプリケーションがあります。

アプリケーションをテストするには、破損したファイルシステムが必要です。

FATファイルシステムを破壊するための良い再現可能な方法は何ですか?たとえば不良セクターの作成。

15
arash javan

部分的な解決策

 dd if=/dev/zero count=100 bs=1k of=fs.fat
 mkfs -t vfat fs.fat
 mount fs.fat /mnt ## as root
 # cp some file
 umount /mnt ## as root

 cp fs.fat fs.ref
 vi fs.ref ## change some bytes
 cp fs.ref fs.sampleX

これで、良好なfs(fs.fat)と破損したfs(fs.ref)ができました。

Sudo mount -t vfat fs.ref /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
  • fs.sampleXの修正を試みることができます
  • ファット(またはファイルシステムのレイアウト)について少し知っていれば、fs.refを「巧妙に破壊」するのに役立つかもしれません。
  • これは、任意のfsタイプに適用できます(extXxfs、...)
20
Archemar