日本电子维修技术 HDD硬盘SMART信息,健康度及ATA指令
工具是Smartmontools,win/linux/bsd,arm/x86通用。
扫描硬盘命令是:smartctl --scan
一般输出是:/dev/sda -d ata,如果是nvme盘是 -d nvme
查询具体信息命令是:smartctl -d ata -x /dev/sd* (盘符)。以下为一些有用信息
1.报错日志: Device Error Count: * (device log contains only the most recent 4 errors)
显示在通电多少小时发生何种错误,可以比较准确知道时间点
2.读写量: Logical Sectors Written 和 Logical Sectors Read,一般逻辑扇区是512k,乘一下就是读写量
HGST的盘有这信息但不在smart中直接体现读写量
3.温度超限:Under/Over Temperature Limit Count 会显示超出温度范围时的计数,单位是秒
HDD的上限应该是60度开始记数,可以了解硬盘在过度恶劣条件下工作总时长
4.SMR信息:根据另一个帖子,输入smartctl -l gplog,0x30,3 /dev/sd*(对应盘符)
据说查看HDD是否为SMR,具体见他的说明,我无法验证
另一个工具是hdparm,linux下使用。命令是 hdparm -I /dev/sd*(对应盘符)。这个命令主要查看APM/AAM,就是高级电源管理和高级噪声管理用于节能和减噪
Commands/features:启用的话会有*号。关于高级电源的说明,WD的产品说明中如下:
APM(Advanced Power Mangement)和EPC(Extended Power Condition)是互斥的功能。硬盘是默认开启EPC的,但不开启APM,EPC在hdparm中显示为"unknown 119[7]",无法正确识别。
EPC和APM定义如下(参考HC320的文档)
1.操作模式
Active 硬盘可以立刻执行媒体获取命令,比如读写
Idel_A 硬盘待命,没有I/O。硬盘可以关闭电子装置,以降低功率而不增加响应时间
Idel_B 磁头不工作,转速维持7200RPM
Idel-C/Standby_Y 磁头不工作,转速降至低转速(6300RPM)
Standby_Z 驱动器不载入并且马达停止工作。可以随时接受再启动命令可以
Sleep(SATA) 驱动器不载入并且马达停止工作。只有软重启或者硬重启才能改变状态到Standby_Z
2.各操作模式切换的时间
FromTo
RPM Typical(sec) Idle_B Active 7200 1 Idle_C Active 6300->7200 4 Standby_Y Active 6300->7200 4 Standby_Z Active 0->7200 15
评论
这样看来,windows的睡眠是进Standby_Z?不知道windows有没有能控制进程读写权限的的软件,经常休眠莫名其妙被叫醒,打开资源管理器也找不到在读写的pid
评论
windows睡眠是OS给硬盘发了ATA指令。相当于hdparm -Y使硬盘进入睡眠,应该是sleep。控制读写算操作系统或文件系统的操作吧,如果是zfs可以用zpool iostat -v来看I/O。windows下就不知道了,很多东西不可控,比如最著名的系统更新
评论
1. 下发 ATA 和 SCSI command 可以用sg3_utils 里的 sg_raw 命令,windows下也有预编译的版本。但是需要对 ATA 和 SCSI 协议很熟悉才知道CDB 应该怎么写,这些不是一般用户能搞定的,普通用户可能连哪里去找ATA/SCSI 协议文档都不知道。尤其是 ATA 命令,sg3_utils 其实只传输SCSI 命令,需要通过 ATA passthrough 的方式传输 ATA 命令,这个和普通的 SCSI CDB 有区别。
2. 希捷的 EPC 通过 Seachest_Powercontrol 可以设置 https://www.seagate.com/cn/zh/support/software/seachest/#getting_started
3. 关于 SAS controller 后面的盘怎么访问
3.1. 如果是做了RAID, smartctl 其实做了常见RAID 卡的穿透,查看它的 man page 就能找到了:
不过man page 里好像没有写的特别清楚的是,至少对于MegaRAID 来说,需要系统里安装了对应的 storelib 才能和卡后面的物理设备通信,很多时候这个 lib 是没有安装的。另外根据一般经验,storelib 只能保证原厂卡的穿透,对于 OEM 卡来说大概率是有问题的。不过 smarctl 好像单独给 Dell 的卡也做了穿透,没实际试过,不知道兼容性怎么样。
3.2. 如果是 IT/JBOD 模式,但是 SATA 盘也看不到,可以用 -d sat 选项试一下,这个选项主要用来处理在 SATL 后面的 ATA 设备。SAS controller 接 SATA 盘的时候,是通过 SATL 翻译 SCSI 命令到 ATA 命令的。不过有些做管理用的 SCSI 命令在 ATA 协议中没有对应的可以翻译命令,这个时候就需要用ATA passthrough 传输 ATA 命令。
评论
感谢提供关于sg3_utils的信息,我回头试下
smartctl的确可以穿透,sata的盘接sas控制器可以被-d scsi读取,相信也能被-d megeraid读取
我的问题其实不是controller后面的sata/sas设备了,而是nvme设备。比如lsi-9400用的是sas控制器,但可以接nvme盘。scan的结果是-d scsi,smart信息中只能读到nvme盘的温度,其他全无。用-d nvme则是无效的
评论
直连 NVMe 设备的话,在 Linux 下是不经过 SCSI layer 直接去 NVMe 设备的。但是如果是通过 9400 这种 3 模卡的话,就不太清楚卡是怎么样把 NVMe 设备暴露给 OS 的。
从 Linux 的 megaraid 驱动邮件列表看,似乎 megaraid 卡暴露给 OS 的依然是一个 SCSI 设备,megaraid 的 FW 里应该是实现了 SNTL 把 SCSI 命令翻译成 NVMe 命令(你可看一下卡下面的 NVMe 盘符是 /dev/nvmexnx 还是 /dev/sgx )
但是现在 NVMe 厂商众多,远不像 ATA/SCSI 协议那样已经基本统一了,我猜是 SNTL 和不同厂商的 NVMe 盘之间兼容性可能并不好。
我看到 2018 年有人提交过针对 megaraid 驱动的 NVMe passthrough 补丁,也许可以在比较的新的内核上试试 nvme-cli,看看这个补丁有没有合并到主线。
评论
9400连的是micron 9200max,它在centos8.2 4.18内核下显示的是/dev/sdx 类型是scsi。同系统下的optane 16G直连pcie的就是/dev/nvme0n1,安装nvme-cli后用nvme list也只能找到这个设备。镁光自家的msecli也找不到,反倒是optane m10能正确识别,说明它和intel的确技术共享
我已经折腾很久了,该试的不该试的都试了。9400的驱动,固件,BIOS都被我更新到P15最新版本,尝试用最新的storcli /c0 show all也没能找到smart信息。所谓Tri Mode,其实应该是SAS控制器把NVME设备转成SCSI暴露给OS,只能间接访问。如果真有兼容性问题,我觉得连温度都是读不到的
评论
兼容性问题我主要是猜测关于一些 log page 以及部分命令行为的实现上。
NVMe 还在高速发展,标准文档里的灰色地带还挺多的,标准的更新频率也很高,厂商在实现的时候很可能不是 100% 按照文档设计的,而且必然是有滞后的。
比如读取 SMART 之类的信息,其实就是读取相关的 log page, 厂商在设计某一代产品的时候可能相关的标准还没有形成,或者不是强制性的,或者甚至厂商故意设计成 vendor specific。这样用厂商自己的工具在直连的情况下应该没有问题,但是如果直接使用标准命令或者经过了 SNTL 这样的翻译层,可能返回的结果往往和预期不符。
不知道你有没有试过在直连的情况下用镁光的工具和 nvme-cli 下发等价的命令,看看返回的 log page 信息是不是一样的,如果一样的话,那大概率是卡的 SNTL 设计问题,如果不一样,那盘的 FW 设计问题概率大一点。
评论
硬盘玩家的福音 电路 电子 维修 求创维42c08RD电路图 评论 电视的图纸很少见 评论 电视的图纸很少见 评论 创维的图纸你要说 版号,不然无能为力 评论 板号5800-p42ALM-0050 168P-P42CLM-01 电路 电子 维修 我现在把定影部分拆出来了。想换下滚,因为卡纸。但是我发现灯管挡住了。拆不了。不会拆。论坛里的高手拆解过吗? 评论 认真看,认真瞧。果然有收
·日本中文新闻 唐田绘里香为新剧《极恶女王》剃光头 展现演员决心
·日本中文新闻 真子小室夫妇新居引发隐私担忧
·日本中文新闻 前AKB48成员柏木由纪与搞笑艺人交往曝光
·日本学校 {日本国际学校}梅田インターナショナルスクール
·日本学校 LINE:sm287 陳雨菲、20歳、台湾からの留学生、東京に来たばかり
·日本留学生活 出售平成22年走行48000km 代步小车
·日本华人网络交流 円相場 一時1ドル=140円台まで上昇?
·日本华人网络交流 问日本华人一个问题
·日本旅游代购 富山接机
·生活百科 英国转澳大利亚转换插头
·汽车 【求助】修车遇到困难怎么办?