我有一个应用程序可以搜索损坏的 FAT 文件系统并修复它。
为了测试应用程序,我需要一个损坏的文件系统。
损坏 FAT 文件系统的良好且可重现的方法是什么?例如创建坏扇区。
答案1
部分解决方案
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
- 了解一些有关 fat(或文件系统布局)的知识可能有助于“巧妙地破坏”fs.ref
- 这可以应用于任何 fs 类型(
extX
,xfs
, ... )