badblocks
没有或很少条目链入本条目。 (2015年1月27日) |
badblocks是Unix-like操作系统下用来检查类似于磁盘分区这样的设备上是否存在坏道的命令行程序,其功能类似于Microsoft Windows或DOS操作系统中的SCANDISK或CHKDSK。运行后badblocks会给出一份设备上存在问题的区块(block)列表。
badblocks是ext2/3/4文件系统工具集e2fsprogs的一部分。
badblocks在大多数情况下需要配合e2fsck或mke2fs使用,此时需要专门指定合适的"-b"参数,也就是badblock所读取的区块大小(block-size)。因此,用户应该通过执行e2fsck或mke2fs时加上"-c"参数来调用badblocks,而不是直接使用badblocks。[1]
e2fsck的 "-c" 参数
编辑多数情况下badblocks会透过e2fsck的"-c"
参数调用,防止资料被写入坏道中。透过扫描时所产生的坏道清单在分配空间时避免使用到坏道部分。这项测试可以透过只读("-c"
)或非破坏性写入("-cc"
)进行。[2]
dumpe2fs
编辑执行dumpe2fs -b
可以列出由e2fsck
或>tune2fs
所纪录的坏道清单。
示例
编辑badblocks -nvs /dev/sdb
这个指令将会对 "sdb"进行非破坏性写入测试以及显示检查进度。
badblocks -wvs /dev/sdb6
这个指令将会对"sdb"的第6硬盘分区进行破坏性写入测试(-w = 写入模式),对分区写入4种不同的方式,并写验证其正确性。过程中将会显示检查进度(-s = 显示,-v = 详细资料). 指令所执行之分区资料将会被覆盖。
badblocks -wvsb 4096 /dev/sdb
这指令行为与上则相同,不过对象为整个硬盘以及指定区块大小为4096。将会破坏MBR分区及资料。新一点的硬盘并不会显示损坏的扇区,其原因为在备用扇区尚存时将自动重新定位至备用扇区[3],但是执行在新硬盘上会测试硬盘表面,解析S.M.A.R.T.信息后将会显示最终所配置的扇区数量。
使用-w
参数时,将会把原先硬盘的所有资料抹除掉。
参考
编辑引用
编辑- ^ badblocks(8) - Linux man page (页面存档备份,存于互联网档案馆), 2010年5月7日查阅
- ^ Linux系统管理员工具(Administration and Privileged Commands)手册页 –
- ^ 存档副本. [2012-06-30]. (原始内容存档于2012-07-19).
这是一篇与Linux相关的小作品。您可以通过编辑或修订扩充其内容。 |