令我惊讶的是,我能够完美地恢复ddrescue
在 RPi 中使用了很长一段时间的 SD 卡。但当我扫描带有badblocks -nvs
坏块的 SD 卡时,会以疯狂的速度列出。(顺便说一句,在救援行动开始之前,RPi 的表现相当不稳定。)
谁能向我解释一下,为什么ddrescue
能够光荣地恢复所有内容,同时又badblocks
对我大喊,这张 SD 卡坏了?
令我惊讶的是,我能够完美地恢复ddrescue
在 RPi 中使用了很长一段时间的 SD 卡。但当我扫描带有badblocks -nvs
坏块的 SD 卡时,会以疯狂的速度列出。(顺便说一句,在救援行动开始之前,RPi 的表现相当不稳定。)
谁能向我解释一下,为什么ddrescue
能够光荣地恢复所有内容,同时又badblocks
对我大喊,这张 SD 卡坏了?
badblocks
查找磁盘上出现故障(有读取错误)的区域(块/扇区) ;其中包括仍然可读的区域(尽管可能需要多次读取尝试;即正在变坏/即将消失),ddrescue
然而预计会恢复数据,因此允许重新读取扇区(忽略读取错误--max-error-count
)除非达到定义...IE。这两种工具有非常不同的意图/用途。
ddrescue
会很高兴地重试,直到--max-error-count
达到已经声明的位置... asbadblocks
正在寻找失败的块,因此读取错误计数为 1在其代码中是个坏消息,因为它是一个抢占式工具,用于检测可能出现故障的媒体。工具的“栏”比所使用的“栏”高得多,ddrescue
有意忽略它得到的任何“错误”。您的选择是
该卡可能有问题,或者用于读取该卡的硬件存在某种问题(甚至可能是 PSU,因为即使是好的组件在供电不良时也会出现故障)