You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从dd失败的指定位置启动badblocks检测硬盘坏道

解决dd失败后用badblocks检测对应位置坏扇区的方法

刚碰到过类似的硬盘读写糟心事!你说用dd处理200GB迈拓IDE硬盘最后几个块时反复报错,哪怕加了seek=48620也没用,想从dd失败的位置跑badblocks排查坏扇区,这思路完全没问题,给你捋清楚具体怎么操作:

首先得保证badblocks的扫描起点和dd失败的位置严格对齐——既然你dd用了4M的块大小(也就是你说的-b 4000000),直接用dd的seek参数对应的块数作为badblocks的起始点就行,不用额外换算字节,省得出错。

具体的badblocks命令

badblocks -b 4000000 -s -v -o bad_sectors_log.txt /dev/your_maxtor_disk 48620

给你拆解下每个参数的作用:

  • -b 4000000:和你dd命令里的块大小完全一致,确保扫描的块和dd读写的块对齐,不会出现偏移
  • -s:显示扫描进度条,毕竟扫硬盘最后部分可能耗时不短,能实时看到进展
  • -v:开启verbose模式,会输出每一步的扫描细节,方便你判断是不是真的碰到坏扇区卡住了
  • -o bad_sectors_log.txt:把检测到的所有坏扇区地址写入这个文件,后续不管是修复还是标记都能用得上
  • 最后的48620:就是你dd命令里的seek值,告诉badblocks从第48620块开始扫描,刚好衔接dd失败的位置

几个关键注意事项

  • 一定要确认/dev/your_maxtor_disk是你要检测的迈拓硬盘的正确设备名(比如IDE盘通常是/dev/hda这类h开头的设备),别选错盘,不然扫错了就麻烦了
  • 扫描过程中如果碰到坏扇区,速度会明显变慢,这是正常现象,耐心等它跑完就行
  • 如果最后真的检测出坏扇区,要是硬盘上是ext类文件系统,可以用e2fsck -l bad_sectors_log.txt /dev/your_maxtor_disk来标记这些坏扇区,避免系统后续再读写它们

内容的提问来源于stack exchange,提问作者Hashim Aziz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:06:21