Answers:
有时使用驱动器的自动扇区重定位功能是不合适的,因此ohho提出的问题变得与众不同:
如果扇区存在缺陷,那么您将:
– 在执行可能导致重定位(或重新映射或保留,或您所说的任何事情)的任何操作之前,请考虑这一点。
虽然SpinRite 6不适用于Mac,但是2003版的第5版令人鼓舞:
请注意有关自动重定位和相关数据丢失风险的部分。
除了SpinRite之外,从2003年到2013年是十年:
对这里的问题...
对于Mac –对于OS X –我不知道像SpinRite 那样强大和小心的东西(没有禁用自动重定位)。
因此,就目前情况而言:要使用OS X验证USB 上磁盘的扇区,我们可能仅限于使用可能导致重定位的实用程序。我无法估计相关数据丢失的风险程度,但是如果这种风险可以接受,那么我应该首先转向:
提示:相关问题(1)下的内容更易于使用。
仅OS不能在总线外部的驱动器(例如USB 2.0和FireWire)上使用SMART技术。
在其他地方,有大量的信息(还有误解;),所以我将答案的这一部分仅集中于一点:
kasbert / GitHub上的OS-X-SAT-SMART-Driver:
…Mac OS X外部USB或FireWire驱动器的内核驱动程序。通过提供对驱动器SMART数据的访问,它扩展了标准驱动程序的行为。SMART数据的接口与ATA系列驱动程序的接口相同,因此大多数现有应用程序都可以使用。该驱动程序需要具有SAT(SCSI ATA转换)功能的外部驱动器机箱。…
如果与Lion一起尝试此KEXT,则与任何第三方内核扩展一样,请谨慎操作。
在“应用程序/实用工具”中打开Terminal.app。
在内部剪切并粘贴以安装Brew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
使用brew安装e2fsprogs:
brew install e2fsprogs
键入diskutil list
以找到您的设备(/ dev / diskX)
badblocks
在您的设备上运行:(用设备号替换X)
/usr/local/Cellar/e2fsprogs/1.44.3/sbin/badblocks -v /dev/diskX
Operation not permitted while trying to determine device size
带有/不带有sudo)
如果您怀疑/知道自己有坏扇区,请允许我以什么顺序进行处理:
1)使用dd将整个分区复制到另一台设备(使用来查找分区名称df
)。在容量为400Gb的USB2磁盘上,这可能需要一段时间,甚至可能需要一天以上的时间。bs=
加快速度(5或更多倍),sync
如果有任何读取错误,则用零填充输入块。
dd if=/dev/disk3s8 of=/dev/disk4s9 bs=1024k conv=noerror,sync
2)然后检查它是否确实起作用,不仅检查文件夹结构,还要打开内容。
3)如果没有,请尝试在文件级别复制分区的内容。
cp -Rp /Volumes/<source>/ /Volumes/<destination>/
4)直到现在,您已尝试在不接触文件系统的情况下尽可能多地保存文件,然后对分区进行检查。-f
即使看起来不错,该选项也会强制执行,以-S
扫描错误的块。不能保证此操作是非限制性的,但是它可以节省磁盘。
fsck_hfs -fS /dev/disk3s8