momo zone


透过usb-sata转接器读取 S.M.A.R.T信息问题

这里的问题是这类转换器准确的叫法是”SATA to USB mass storage bridge” ,接在上面的硬盘被称作”USB mass storage”,也就是说和U盘一样了,它是无法读取ATA/SATA SMART信息的。但一些厂家的bridge芯片动了些脑筋,制定了一些私有协议,smartmontool按照该私有协议封装SMART请求。然后bridge去解封再转换成ATA/SATA请求发给硬盘,这样就解决了这个问题。

google了一下发觉用smartctl -d sat -a /dev/sdx就ok。-d用来指示上述的私有协议类型。
这里sat指的是scsi to ata translation:

What is SAT?
SAT (SCSI->ATA Translation) is a mechanism whereby ATA task register commands may be sent
to a device which is seen by the operating system as a SCSI device. This is most often the case
when SATA drives are connected to an add-in PCI bus type of SATA controller card. Even though
the card is a SATA controller in most cases Windows will see the controller as if it were a SCSI
HBA, and so will not allow you to issue ATA task register level commands to the connected
Documentation on SAT can be found at the site
In short, SAT uses a 12 or 16 byte SCSI cdb which contains an embedded ATA task register

桥接芯片是JMS567,vid:pid 为152d:0567,给/usr/share/smartmontools/drivedb.h增加如下内容就可以直接使用smartctl了:
{ “USB: ; JMicron JMS567”, // USB->SATA(SATL)
“”, // 0x0100
“-d sat”



Fill in your details below or click an icon to log in: 徽标

You are commenting using your account. Log Out /  更改 )

Google photo

You are commenting using your Google account. Log Out /  更改 )

Twitter picture

You are commenting using your Twitter account. Log Out /  更改 )

Facebook photo

You are commenting using your Facebook account. Log Out /  更改 )

Connecting to %s

%d 博主赞过: