操作系统:MX Linux 19.4
USB 外部硬盘:Silicon Power 1TB HDD(在 MX 中的快速系统信息中报告为 ST1000LM024 HN-M101MBB,大小:931.51 GiB,块大小:物理:512 B 逻辑:512 B,旋转:5400 rpm)。
问题:GSmartControl
实用程序无法识别硬盘,检查/var/lib/smartmontools/drivedb/drivedb.h
后发现没有 ST1000LM024 的条目。
在智能监控工具站点,在常见问题解答中,有将丢失的驱动器添加到数据库的说明(我的 ATA/SATA 驱动器不在 smartctl/smartd 数据库中),按照说明运行一个简短的测试smartctl -t short /dev/sdb
。这是输出:
$ sudo smartctl -t short /dev/sdb
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-4.19.0-16-amd64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
Read Device Identity failed: scsi error unsupported scsi opcode
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.
使用hdparm
命令时,得到以下输出:
$ sudo hdparm -I /dev/sdb
/dev/sdb:
SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ATA device, with non-removable media
Standards:
Likely used: 1
Configuration:
Logical max current
cylinders 0 0
heads 0 0
sectors/track 0 0
--
Logical/Physical Sector size: 512 bytes
device size with M = 1024*1024: 0 MBytes
device size with M = 1000*1000: 0 MBytes
cache/buffer size = unknown
Capabilities:
IORDY not likely
Cannot perform double-word IO
R/W multiple sector transfer: not supported
DMA: not supported
PIO: pio0
这是输出$ sudo smartctl -i /dev/sdb
$ sudo smartctl -i /dev/sdb
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-4.19.0-16-amd64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
Read Device Identity failed: scsi error unsupported scsi opcode
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.
输出为sudo smartctl -a -T permissive /dev/sdb
$ sudo smartctl -a -T permissive /dev/sdb
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-4.19.0-16-amd64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
Read Device Identity failed: scsi error unsupported scsi opcode
=== START OF INFORMATION SECTION ===
Device Model: [No Information Found]
Serial Number: [No Information Found]
Firmware Version: [No Information Found]
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: [No Information Found]
Local Time is: Sat Apr 24 21:03:53 2021 CEST
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't show if SMART supported.
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 85-87 don't show if SMART is enabled.
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.
我错过了什么吗?为什么测试显示我的外部驱动器访问被拒绝?我对 Linux 不太熟悉,所以认为在做愚蠢的事情之前最好先问一下。有人可以指导我正确的方向吗?
ps:球盒品牌是Silicon Power,找不到型号。
答案1
这
Read Device Identity failed: scsi error unsupported scsi opcode
和这个
SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
意味着您的驱动器对某些 SCSI 命令没有正确反应。
对于正确支持 SMART 的驱动器,它应该如下所示:
$ sudo hdparm -I /dev/sda
...
Commands/features:
Enabled Supported:
* SMART feature set
作为
To continue, add one or more '-T permissive' options.
建议,您可以添加-T permissive
或-T verypermissive
尝试仍然获得一些输出。不要开始一个简短的测试,而是做类似的事情
$ sudo smartctl -a /dev/sda
查看所有 SMART 报告。
但 SMART 可能会因您的驱动器而损坏。
聪明的是硬盘上固件的一项功能。如果硬盘驱动器的固件未编程为提供此功能,则该功能不可用。使用不同的 Linux 工具来访问它不会产生任何影响。数据库表条目也没有什么区别。
也就是说,有时许多 USB 外壳中使用的 USB 转 SATA 桥不允许传输 SMART 命令。测试方法是打开机箱,取出硬盘,将硬盘通过SATA直接连接到主板上。如果 SMART 在该设置下工作,那么它就是桥接芯片。如果还不行那就是硬盘的问题了
smartctl
还可以-d
选择为许多设备选择解决方法,其中桥接器或其他问题会阻止 SMART 命令。看man smartctl
。但我不建议使用其中任何一个,除非您相当确定您的硬件与这些设备匹配。