我尝试使用 dmsetup 创建设备映射器,如下所示:
dmsetup create error_disk
0 20000 linear /dev/loop0 0
20000 1 error
20001 20959 linear /dev/loop0 20001
然后我用下面的命令检查:
dd if=/dev/mapper/error_disk of=/dev/null bs=1k count=10000 => Result OK
dd if=/dev/mapper/error_disk of=/dev/null bs=1k count=10001 => Result IO error
所以结果和我预想的一样。
但后来我安装如下:
mke2fs /dev/mapper/error_disk
mount /dev/mapper/error_disk /mnt/
我安装成功了。但是当我将大小为 20Mb 的文件复制到 /mnt/ 时,复制成功。但我认为复制一定会失败,因为这个错误磁盘在扇区 20000 (10Mb) 处出错。那么我该如何应对这种应对是失败的。