อ่านค่าเซ็นเซอร์อุณหภูมิ SSD พร้อม hddtemp


10

ดูเหมือนว่า hddtemp ไม่สามารถตรวจจับเซ็นเซอร์อุณหภูมิของ SSD ของฉัน (Samsung EVO 840) ได้อย่างถูกต้องนี่คือเอาต์พุต bash เมื่อรัน 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 (hddtemp@guzu.net).
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

ทุกคนสามารถอ่านเซ็นเซอร์อุณหภูมิของ SSD ที่มี hddtemp ได้หรือไม่

คำตอบ:


8

ขออภัย แต่ฉันไม่สามารถแสดงความคิดเห็น ... ต่อไป

Hddtempมักจะอ่านข้อมูล194จากข้อมูลที่สมาร์ทของฮาร์ดดิสก์ 190แต่ในกรณีนี้ข้อมูลจากเซ็นเซอร์จะถูกเก็บไว้ในสนาม ด้วยคำสั่งนั้นคุณhddtempจะบอกให้อ่านค่าของฟิลด์190สำหรับโมเดลนั้น ๆ

เพื่อตรวจสอบ:

smartctl -a /device

hddtemp --debug /device

ในทั้งสองกรณีฟิลด์ 190 แสดงอุณหภูมิของฮาร์ดดิสก์ (เช่น 190 Airflow_Temperature_Cel)


8

สามารถยืนยันคำตอบก่อนหน้าสำหรับ Ubuntu 14.04.4 LTS ด้วยและ "Samsung SSD 850 EVO 1TB" (แต่ไม่มีพื้นที่ดังกล่าวที่จำเป็นในฉลากไดรฟ์)

แล้วจะทำอย่างไรดี?

  1. ในกรณีที่ไดรฟ์ไม่รู้จักกับ hddtemp:

    ตรวจสอบเอาต์พุตข้อมูล SMART ของไดรฟ์สำหรับข้อมูลเซ็นเซอร์อุณหภูมิและค้นหาฟิลด์ "ID #"

    $ sudo smartctl /dev/sdb -a | grep -i Temp

    190 Temperature_Celsius 0x0022 111 104 000 Old_age Always - 36

    เขตข้อมูลแรกคือเซ็นเซอร์คุณลักษณะ id #, "190" ในกรณีนี้

  2. เพิ่มรายการลงใน db ของ hddtemp ซึ่งอยู่ที่ /etc/hddtemp.db

    $ sudo echo "Samsung SSD 850 EVO 1TB" 190 C "Label for SSD 1TB" >> /etc/hddtemp.db

    • ฟิลด์ 1: ใช้สตริงหรือ regex ที่ตรงกับชื่อที่แสดงของไดรฟ์ (ตามที่รายงานโดยเอาต์พุต hddtemp)
    • ฟิลด์ 2: หมายเลขฟิลด์ข้อมูล SMART (190 ในกรณีนี้)
    • สนามที่ 3: หน่วยอุณหภูมิ (C | F)
    • ฟิลด์ 4: สตริงป้ายกำกับ / ความคิดเห็น
  3. ตอนนี้ hddtemp รู้วิธีอ่านข้อมูล

    $ sudo hddtemp /dev/sdb

    /dev/sdb: Samsung SSD 850 EVO 1TB: 40°C


สงสัยว่าทำไมฉันถึงได้รับอักขระขยะในผลลัพธ์: root@digger:/etc# hddtemp /dev/sdaอัตราผลตอบแทน Samsung SSD 850 EVO 120G B ▒@: 35 C
ผู้ขุด

5
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 (hddtemp@guzu.net). 
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

คุณไม่ควรให้คำแปลสำหรับผลลัพธ์ภาษาเยอรมันในคำถามในคำตอบของคุณ เสนอการแก้ไขกับคำถามแทนและลบที่นี่ ขอบคุณ! :)
ผู้บัญชาการไบต์

3
บน Ubuntu 14.04.3 LTS เส้นทางของฐานข้อมูลคือ/etc/hddtemp.db
Daniel F

เหมือนกันสำหรับ 16.04 LTS
Richard Border

2
sudo echo '"Samsung SSD 840 EVO 250G B" 190 C "Samsung SSD 840 EVO 250GB"' >> /etc/hddtemp.db

ทำงานกับฉัน แต่ต้องมีช่องว่างระหว่าง "250G" และ "B" เช่น "250G B" ไม่ใช่ "250GB"


หากต้องการพื้นที่ว่างทำไมคุณไม่รวมอยู่ในคำสั่ง?
αғsнιη

-1

ทำ:

sudo echo '"Samsung SSD 840 EVO 120G B" 190 C "Samsung SSD 840 EVO 120GB"' >> /etc/hddtemp.db

คุณช่วยอธิบายว่าคำสั่งนี้ทำอะไรได้บ้าง?
Jorge Castro

ฉันเข้าใจคำสั่งนี้เพิ่ม SSD ของฉันไปยังไฟล์ฐานข้อมูลดังนั้นฉันจึงไม่ได้รับข้อผิดพลาด "ไม่อยู่ในฐานข้อมูล" อีกต่อไป ... แต่ปัญหาของฉันคือฉันไม่สามารถอ่านเซ็นเซอร์ในตอนแรกค่าของมันไม่สามารถอ่านได้โดย hddtemp แม้ว่าฉันจะมีสิ่งก่อสร้างในตัวก็ตาม
abbrandl
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.