hddtemp 似乎无法正确检测我的 SSD(三星 EVO 840)的温度传感器。这是运行 hddtemp 时的 bash 输出:
WARNING: Drive /dev/sda doesn't seem to have a temperature sensor.
WARNING: This doesn't mean it hasn't got one.
WARNING: If you are sure it has one, please contact me ([email protected]).
WARNING: See --help, --debug and --drivebase options.
/dev/sda: Samsung SSD 840 EVO 120G B @: no sensor
我查看了最近发布的 .db 文件http://nongnu.mirrors.hostinginnederland.nl//hddtemp/hddtemp.db,但它似乎根本没有列出任何 SSD 驱动器。
有人能够使用 hddtemp 读取 SSD 的温度传感器吗?
答案1
抱歉,我无法发表评论……无论如何
Hddtemp
通常194
从硬盘的智能数据中读取字段,但在这种情况下,传感器的信息存储在字段中190
。使用该命令,您可以读取该特定型号的hddtemp
字段值。190
去检查:
smartctl -a /device
hddtemp --debug /device
在两种情况下,字段 190 都显示硬盘的温度,(例如 190 Airflow_Temperature_Cel)
答案2
可以确认之前针对 Ubuntu 14.04.4 LTS 和“三星 SSD 850 EVO 1TB”的回答。(但驱动器标签中没有提到所需的空间)
那么该怎么办?
如果 hddtemp 无法识别该驱动器:
检查驱动器的 SMART 数据输出以获取温度传感器数据并查找字段“ID#”
$ sudo smartctl /dev/sdb -a | grep -i Temp
190 Temperature_Celsius 0x0022 111 104 000 Old_age Always - 36
第一个字段是传感器属性 id#,在本例中为“190”。
在 hddtemp 的数据库中添加一个条目,位于 /etc/hddtemp.db
$ sudo echo "Samsung SSD 850 EVO 1TB" 190 C "Label for SSD 1TB" >> /etc/hddtemp.db
- 字段 1:使用与驱动器的显示名称匹配的字符串或正则表达式(如 hddtemp 输出所报告的)
- 字段 2:SMART 数据字段编号(本例中为 190)
- 字段3:温度单位(C|F)
- 字段 4:标签字符串/注释
现在 hddtemp 知道如何读取数据
$ sudo hddtemp /dev/sdb
/dev/sdb: Samsung SSD 850 EVO 1TB: 40°C
答案3
root@elmo:/etc# hddtemp
WARNING: Drive /dev/sda doesn't seem to have a temperature sensor.
WARNING: This doesn't mean it hasn't got one.
WARNING: If you are sure it has one, please contact me ([email protected]).
WARNING: See --help, --debug and --drivebase options.
/dev/sda: Samsung SSD 850 EVO 120G B ▒@: no sensor
插入/usr/share/misc/hddtemp.db
此行:
"Samsung SSD 850 EVO 120G B" 190 C "Samsung SSD 850 EVO 120GB"
现在hddtemp
显示温度
root@elmo:/etc# hddtemp
/dev/sda: Samsung SSD 850 EVO 120G B ▒@: 47 C
答案4
做:
sudo echo '"Samsung SSD 840 EVO 120G B" 190 C "Samsung SSD 840 EVO 120GB"' >> /etc/hddtemp.db