Проверка на температурата на твърдия диск с hddtemp

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Тази статия е за тези които искат да си проверят температурата на диска с hddtemp но дискът им не е в базата данни на hddtemp и съответно не излиза никаква информация.

За да поправим това трябва първо да видим дали дискът има температурен сензор. За тази цел ще ни трябва пакета smartmontools.

apt-get install smartmontools

Овен за да проверите това, въпросният пакет ще ви бъде от ползва ако искате да следите текущото състоняние на диска ви и да видите дали не е започнал да се скапва. S.M.A.R.T. трябва да бъде разрешен от BIOS-а за дадения диск за да може монитора да следи информацията за диска.

За да намерим точният номер който отговаря на етмпературния сензор трябва да изпълним следната команда:

smartctl -a /dev/sda

Където /dev/sda е вашият диск който искате да проверите. Изходът на командата ще бъде нещо такова:

smartctl version 5.38 [x86_64-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
 
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   100   100   046    Pre-fail  Always       -       117564
  2 Throughput_Performance  0x0005   100   100   030    Pre-fail  Offline      -       45481984
  3 Spin_Up_Time            0x0003   100   100   025    Pre-fail  Always       -       1
  4 Start_Stop_Count        0x0032   099   099   000    Old_age   Always       -       1399
  5 Reallocated_Sector_Ct   0x0033   100   100   024    Pre-fail  Always       -       8589934592000
  7 Seek_Error_Rate         0x000f   100   100   047    Pre-fail  Always       -       165
  8 Seek_Time_Performance   0x0005   100   100   019    Pre-fail  Offline      -       0
  9 Power_On_Hours          0x0032   097   097   000    Old_age   Always       -       1883
 10 Spin_Retry_Count        0x0013   100   100   020    Pre-fail  Always       -       0
 11 Calibration_Retry_Count 0x0032   253   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       989
182 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
184 Unknown_Attribute       0x0033   253   253   097    Pre-fail  Always       -       0
185 Unknown_Attribute       0x0010   253   253   000    Old_age   Offline      -       0
186 Unknown_Attribute       0x0032   253   253   000    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       107374182400
188 Unknown_Attribute       0x0032   100   099   000    Old_age   Always       -       1
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   054   049   000    Old_age   Always       -       46 (Lifetime Min/Max 29/48)
191 G-Sense_Error_Rate      0x0032   253   253   000    Old_age   Always       -       16580608
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       1376277
193 Load_Cycle_Count        0x0032   100   100   000    Old_age   Always       -       19015
195 Hardware_ECC_Recovered  0x001a   100   100   000    Old_age   Always       -       23
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       441909248
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   253   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x000f   100   100   060    Pre-fail  Always       -       9781
203 Run_Out_Cancel          0x0002   100   100   000    Old_age   Always       -       2632772681223
240 Head_Flying_Hours       0x003e   200   200   000    Old_age   Always       -       0

Редът който ни интересува е:

190 Airflow_Temperature_Cel 0x0022   054   049   000    Old_age   Always       -       46 (Lifetime Min/Max 29/48)

Както виждате ID номерът на температурният сензор е 190. След като вече го знаем можем да го въведем в базата данни на hddtemp.
За да направим това трябва да редактираме следният файл – /etc/hddtemp.db. Това е нормален текстов файл в който са описани моделите дискове и ID омера където може да бъде открит температурният сензор. Записът във файла трябва да изглежда ето така:

"FUJITSU MHZ2250BH G2"          190    C        "Fujitsu MHZ2250BH G2"

Където първият параметър е производителят и моделът на диска както ги изписва hddtemp, ID номерът на температирният сензор, мерните единици – C за Целзий и F за Фаренхайт, и накрая следва коментарен запис който обикновенно е отновно производителят и моделът на диска.
След като сте готови, остава само да изпълните командата:

hddtemp /dev/sda

За да получите резултата:

/dev/sda: FUJITSU MHZ2250BH G2: 46°C

Надявам се че статията ви е била полезна. 🙂

За melkor

Дългогодишен UNIX/Linux потребител. В момента работи като Senior UNIX Administrator в HP GDBC.
Публикувано в Linux с етикети , , , , , , , . Постоянна връзка.

2 отговора към Проверка на температурата на твърдия диск с hddtemp

  1. Емил Манолов каза:

    От 3 години и половина притежавам лаптопа си и съм правил какви ли не опити да прочета температурата на хард диска му (FUJITSU MHW2160BH PL), но все безуспешно. Вече в gnome-panel-a си имам иконка с температурата на хард диска точно до иконките показващи температурата на процесора ми 🙂 Благодаря!

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  2. melkor каза:

    За нищо. Радвам се че съм помогнал. 🙂

    VN:F [1.9.22_1171]
    Rating: 0 (from 0 votes)

This site uses Akismet to reduce spam. Learn how your comment data is processed.