smartctl使用smartmontools監控磁盤的健康狀態

 

smartmontools介紹linux

     smartmontools是一款開源的磁盤控制,監視工具,能夠運行在Linux,Unix,BSD,Solaris,Mac O
  S,OS/2,Cygwin和Windows上,同時它還能夠從啓動光盤或啓動軟盤運行,支持ATA/ATAPI/SATA-3
  (到-8)位的硬盤和SCSI硬盤,另外還支持磁帶設備,它的老家在smartmontools.sourceforge.net,實際上
 它是一個軟件包,包括了兩個實用程序:smartctl和smatd。它監控的硬盤必須具備S.M.A.R.T特性,目前所
 有硬盤都有這個特性,但默認狀況下一般沒有開啓這個功能,有兩種方法來開啓這個特性:1)經過BIOS設置選
 項2)經過smartctl命令。利用它能夠測試硬盤的健康情況,並在發生故障前進行預警。git

     準備工做ide

     在開始測試或監控以前,先檢查一下目標硬盤是否支持S.M.A.R.T,以root登錄(Windows下以系統管理
 員身份登錄),運行下面的命令:
  #smartctl -i -d ata /dev/sda工具

       這裏的參數-i指出顯示設備信息,-d指出設備類型,這裏指定的設備類型爲ata,固然,若是是SCSI硬
 盤,就指定scsi了,最後的/dev/sda就是設備了,這個命令返回:
  smartctl version 5.37 'i686-pc-linux-gnu' Copyright (C) 2002-6測試

     Bruce Allen.net

     Home page is http://smartmontools.sourceforge.net/=== START OF INFORMATION SECTIO
  N ===日誌

     Model Family: Western Digital Caviar SE (Serial ATA) familyorm

     Device Model: WDC WD800JD-00MSA1ci

     Serial Number: WD-WMAM9S474555get

     Firmware Version: 10.01E01

     User Capacity: 80,026,361,856 bytes

     Device is: In smartctl database 'for details use: -P show'

     ATA Version is: 7

     ATA Standard is: Exact ATA specification draft version not

     indicated

     Local Time is: Thu Feb 7 13:09:37 2008 PST

     SMART support is: Available - device has SMART capability.

     SMART support is: Disabled

     從返回的信息中,能夠看到硬盤的生產廠家,型號,序列號,容量,是否支持SMART,目前SMART開啓
 沒有。結果的最後兩行就是咱們須要的信息,從這裏能夠看出,這塊硬盤是支持SMART技術的,但目前尚未
 開啓它。

     若是運行這個命令返回了相似「Device does not support SMART」的信息就說明目標硬盤不支持SMAR
  T,不能使用這套軟件包進行測試和監控。

     對於前面的例子,咱們可使用下面的命令來開啓SMART特性:
  #smartctl -s on -d ata /dev/sda

     這裏的參數-s就是用來開關SMART特性的,若是加上參數值on就表示開啓,若是參數值是off就表示關
 閉。

     開始測試

     其實就一條命令就完成了測試,如:
   #smartctl -H -d ata /dev/sda

     這裏的參數-H就是指定顯示目標硬盤的健康狀態,這個命令返回以下結果:
  smartctl version 5.37 'i686-pc-linux-gnu' Copyright (C) 2002-6

     Bruce Allen

     Home page is http://smartmontools.sourceforge.net/=== START OF READ SMART DATA S
  ECTION ===

     SMART overall-health self-assessment test result: PASSED

     注意最後一行的測試結果「PASSED」,代表測試經過,該硬盤目前處於健康狀態。

  其它一些有用的參數

     -A 顯示支持的SMART屬性,參考命令:
  #smartctl -A sda

     返回內容:    
  smartctl version 5.38 [i686-mingw32-xp-sp2] 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

     3 Spin_Up_Time 0x0027 220 220 063 Pre-fail Always - 13621

     4 Start_Stop_Count 0x0032 253 253 000 Old_age Always - 999

     5 Reallocated_Sector_Ct 0x0033 253 253 063 Pre-fail Always - 0

     6 Read_Channel_Margin 0x0001 253 253 100 Pre-fail Offline - 0

     7 Seek_Error_Rate 0x000a 253 252 000 Old_age Always - 0

     8 Seek_Time_Performance 0x0027 250 241 187 Pre-fail Always - 59017

     9 Power_On_Minutes 0x0032 225 225 000 Old_age Always - 1019h+16m

     10 Spin_Retry_Count 0x002b 253 252 157 Pre-fail Always - 0

     11 Calibration_Retry_Count 0x002b 253 252 223 Pre-fail Always - 0

     12 Power_Cycle_Count 0x0032 251 251 000 Old_age Always - 1091

     192 Power-Off_Retract_Count 0x0032 253 253 000 Old_age Always - 0

     193 Load_Cycle_Count 0x0032 253 253 000 Old_age Always - 0

     194 Temperature_Celsius 0x0032 253 253 000 Old_age Always - 39

     195 Hardware_ECC_Recovered 0x000a 253 252 000 Old_age Always - 1566

     196 Reallocated_Event_Count 0x0008 253 253 000 Old_age Offline - 0

     197 Current_Pending_Sector 0x0008 253 253 000 Old_age Offline - 0

     198 Offline_Uncorrectable 0x0008 253 253 000 Old_age Offline - 0

     199 UDMA_CRC_Error_Count 0x0008 199 199 000 Old_age Offline - 0

     200 Multi_Zone_Error_Rate 0x000a 253 252 000 Old_age Always - 0

     201 Soft_Read_Error_Rate 0x000a 253 251 000 Old_age Always - 5

     202 TA_Increase_Count 0x000a 253 252 000 Old_age Always - 0

     203 Run_Out_Cancel 0x000b 253 252 180 Pre-fail Always - 0

     204 Shock_Count_Write_Opern 0x000a 253 252 000 Old_age Always - 0

     205 Shock_Rate_Write_Opern 0x000a 253 252 000 Old_age Always - 0

     207 Spin_High_Current 0x002a 253 252 000 Old_age Always - 0

     208 Spin_Buzz 0x002a 253 252 000 Old_age Always - 0

     209 Offline_Seek_Performnce 0x0024 189 187 000 Old_age Offline - 0

     99 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0

     100 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0

     101 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0

     返回結果中的id#爲194的屬性(Temperature_Celsius)表示輸出硬盤溫度,因此纔會有軟件可以監測到
 硬盤的溫度。咱們從這裏也能夠直接看到硬盤當前的溫度爲39°C,理想的狀態是控制在5°C左右,因此應該增
 加風扇了。

     -a 顯示設備全部的SMART信息。

     -l error 列出硬盤錯誤日誌。若是顯示沒有錯誤最好,若是顯示了大量的錯誤信息,那就該着手準備替換
 硬盤了。

     -l selftest 列出自行測試結果。

     利用smartd進行自動監控

     smartd是smartmontools軟件包中的一個實用程序,能夠單獨運行,也能夠註冊爲系統服務,Windows
 上的註冊命令爲:
  >smartd install

     註冊後,打開services.msc,可看到一個名叫「SmartD Service」服務,並設置爲「自動」啓動。

     在非Windows平臺上可經過向/etc/rc.d/init.d添加smartd腳本,其實在安裝smartmontools軟件包的
 時候一般會安裝到這個位置,只須要在對應的啓動級別下作一個軟連接就能夠了。

     smartd的配置文件爲smartd.conf(Windows和非Windows平臺都叫這個名字,Windows平臺與smart   d.exe在同一個目錄下,非Windows平臺位於/etc目錄下),在這個配置文件中已經內置許多種監視方法和參數  說明,值得一體的是-m參數,能夠利用它將監視報告以郵件的形式發送給指定的E-mail地址,這樣設備管理員  就能夠坐在電腦前就能夠掌控全部硬盤設備的健康情況了。  

相關文章
相關標籤/搜索