在 macOS 上对外部 USB 硬盘进行 SMART 检查

gio*_*ber 3 usb smart external-hard-drive macos

我最近尝试获取 WD My Passport USB 硬盘的智能状态。我第一次运行$ smartctl -a /dev/disk3,但显然输出必然是:

smartctl 7.2 2020-12-30 r5155 [Darwin 18.7.0 x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

Smartctl open device: /dev/disk3 failed: Operation not supported by device
Run Code Online (Sandbox Code Playgroud)

我检查了 smartmontools wiki 以查找有关USB 硬盘驱动器使用说明,并发现您必须添加-d正确的驱动程序,在我的例子中是-d sat. 不幸的是,macOS Mojave 上正确命令的输出是:

$ smartctl -d sat -a /dev/disk3     
smartctl 7.2 2020-12-30 r5155 [Darwin 18.7.0 x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

/dev/disk3: Type 'sat+...': Not a device of type 'scsi'
=======> VALID ARGUMENTS ARE: ata, scsi[+TYPE], nvme[,NSID], sat[,auto][,N][+TYPE],usbcypress[,X], usbjmicron[,p][,x][,N], usbprolific, usbsunplus, sntjmicron[,NSID], sntrealtek, intelliprop,N[+TYPE], jmb39x[-q],N[,sLBA][,force][+TYPE], jms56x,N[,sLBA][,force][+TYPE], auto, test <=======

Use smartctl -h to get a usage summary
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?我注意到其他人都使用相同的命令获得了正确的输出。

提前致谢。

Tet*_*jin 8

如果你仔细阅读该列表,看看有多少个已经过测试可以在 macOS\xe2\x80\xa6 上运行,我找不到任何一个。
\n人们普遍认为,您无法在 Mac 上通过 USB 获取 SMART 数据,因为它们不提供 SCSI 直通。

\n

有一些例外情况需要DriveDx制造商提供额外的插件,他们注意到 \xe2\x80\xa6

\n
\n

如果您想在 OS X \xe2\x80\x93 上执行外部驱动器诊断,当前只有一个选项 \xe2\x80\x93 您可以安装第 3 方内核扩展 \xe2\x80\x93 SAT SMART 驱动程序。SAT SMART 驱动程序是由 Jarkko Sonninen 提供的免费开源项目(根据 Apple 公共源代码许可证发布)。它托管在 GitHub 上。

\n
\n

如果您需要驱动程序,请通过上面链接的 DriveDx 页面访问它,因为它们链接到用于不同目的的各种版本。还链接了特定操作系统版本的操作方法。

\n

smartmontools 在其USB 设备和 smartmontools页面\xe2\x80\xa6上引用了此内容

\n
\n

\xe2\x80\x8bOS X SAT SMART 驱动程序提供对 Mac OS X 上支持 SAT、JMicron 和 Sunplus 的 USB 和 Firewire 设备的 SMART 数据的访问。在 OSX El Capitan (10.11+) 上,您可能需要一个签名的驱动程序,该驱动程序可以是从 \xe2\x80\x8bDriveDx 网站下载。请注意,这不支持 48 位 ATA 命令 (-l xerror) 或非 SMART ATA 命令 (-s apm,N)。完整的 USB 支持需要 SCSI 直通支持,而 Mac OS X 上尚不支持该支持。

\n
\n