smartctl 命令linux
這個一個用於控制和監控支持smart技術的硬盤的命令。一般配合 -a 選項咱們能夠查看到比較詳盡的硬盤信息(好比序列號、硬盤容量、已運行時間、硬盤健康情況等)。用法以下:git
smartctl -a /dev/sda安全
Centos安裝:
yum -y install smartmontools
smartctl
-i 指定設備
-d 指定設備類型,例如:ata, scsi, marvell, sat, 3ware,N
-a 或A 顯示全部信息
-l 指定日誌的類型,例如:TYPE: error, selftest, selective, directory,background, scttemp[sts,hist]
-H 查看硬盤健康狀態
-t short 後臺檢測硬盤,消耗時間短
-t long 後臺檢測硬盤,消耗時間長
-C -t short 前臺檢測硬盤,消耗時間短
-C -t long 前臺檢測硬盤,消耗時間長
-X 中斷後臺檢測硬盤
-l selftest 顯示硬盤檢測日誌
HP硬盤:
smartctl -s on -d cciss,0 /dev/cciss/c0d0 開啓SMART
smartctl -a -d cciss,0 -i /dev/cciss/c0d0 顯示全部SMART信息
smartctl -l error -d cciss,0 -i /dev/cciss/c0d0 查看磁盤錯誤日誌
+++++++++++++++++++++++smarted服務+++++++++++++++++測試
簡單說下smartctl:smartd由kernel-utils包缺省安裝。用命令 rpm -ql kernel-utils 能夠列出kernel-utils包中的文件
它是一個守護進程(一個幫助程序),它能監視擁有自我監視,分析和彙報技術(Self-Monitoring, Analysis, and Reporting Technology - SMART)的硬盤。
主配置文件:/etc/smartd.conf
添加一行/dev/cciss/c0d0 -H -m sys@5iqiong.com
上邊的配置表示smartd以靜默狀態工做,當SMART中報告PASSED的時候不理睬一旦出現Failure,馬上用郵件通知用戶指定的郵箱spa
smartctl -a 顯示硬盤全部SMART信息。.net
smartctl -i 顯示硬盤model number, serial number,是否開啓SMART等信息。日誌
smartctl -s on 若是沒有打開SMART技術,使用該命令打開SMART技術。blog
smartctl -t short 後臺檢測硬盤,消耗時間短進程
smartctl -t long 後臺檢測硬盤,消耗時間長內存
smartctl -C -t short 前臺檢測硬盤,消耗時間短
smartctl -C -t long 前臺檢測硬盤,消耗時間長
smartctl -X 中斷後臺檢測硬盤。
smartctl -l selftest 顯示硬盤檢測日誌。
smartctl -l error 顯示硬盤錯誤彙總。
# smartctl -i /dev/sda
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF INFORMATION SECTION Model Family: Western Digital Caviar Second Generation Serial ATA family Device Model: WDC WD3200JS-55PDB0 Serial Number: WD-WCAPD1876075 Firmware Version: 21.00M21 User Capacity: 320,072,933,376 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: Mon Dec 19 17:21:12 2011 CST SMART support is: Available - device has SMART capability. SMART support is: Enabled
檢查一下硬盤是否具備 SMART 特性
# smartctl -H /dev/sda
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF READ SMART DATA SECTION SMART overall-health self-assessment test result: PASSED
查看硬盤健康狀態
# smartctl -t short /dev/sda
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION Sending command: "Execute SMART Short self-test routine immediately in off-line mode". Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 2 minutes for test to complete. Test will complete after Mon Dec 19 17:33:51 2011 Use smartctl -X to abort test.
快速檢測硬盤。
# smartctl -l selftest /dev/sda
查看硬盤測試結果
#smartctl -l error /dev/sda
查看出錯日誌
hdparm 命令
該命令用來獲取或設置SATA/IDE設備的參數。實際上hdparm是linux中的一個用戶層程序,查看源碼會發現這個命令就是向磁盤發送一些ioctl命令。可是注意了,既然能夠獲取也能夠設置,因此使用這個命令的時候務必要當心。固然咱們只是爲了獲取查看硬盤信息,故不會對硬盤及系統形成什麼危害。一般會配合 -i 或 -I(大寫的i) 選項來取得硬盤的硬件信息。例如序列碼等等啊~用法以下: hdparm -i /dev/sdb
語 法:hdparm [-CfghiIqtTvyYZ] [-a <快取分區>][-A <0或1>][-c <I/O模式>][-d <0或1>][- k <0或1>][-K <0或1>][-m <分區數>][-n <0或1>][-p < PIO模式>][-P <分區數>][-r <0或1>][-S <時間>][-u <0或 1>][-W <0或1>][-X <傳輸模式>][設備]
補充說明:hdparm可檢測,顯示與設定IDE或SCSI硬盤的參數。
參 數:
-a<快取分區> 設定讀取文件時,預先存入塊區的分區數,若不加上<快取分區>選項,則顯示目前的設定。
-A<0或1> 啓動或關閉讀取文件時的快取功能。
-c<I/O模式> 設定IDE32位I/O模式。
-C 檢測IDE硬盤的電源管理模式。
-d<0或1> 設定磁盤的DMA模式。
-f 將內存緩衝區的數據寫入硬盤,並清楚緩衝區。
-g 顯示硬盤的磁軌,磁頭,磁區等參數。
-h 顯示幫助。
-i 顯示硬盤的硬件規格信息,這些信息是在開機時由硬盤自己所提供。
-I 直接讀取硬盤所提供的硬件規格信息。
-k<0或1> 重設硬盤時,保留-dmu參數的設定。
-K<0或1> 重設硬盤時,保留-APSWXZ參數的設定。
-m<磁區數> 設定硬盤多重分區存取的分區數。
-n<0或1> 忽略硬盤寫入時所發生的錯誤。
-p<PIO模式> 設定硬盤的PIO模式。
-P<磁區數> 設定硬盤內部快取的分區數。
-q 在執行後續的參數時,不在屏幕上顯示任何信息。
-r<0或1> 設定硬盤的讀寫模式。
-S<時間> 設定硬盤進入省電模式前的等待時間。
-t 評估硬盤的讀取效率(不通過磁盤cache)。
-T 平估硬盤快取的讀取效率。
-u<0或1> 在硬盤存取時,容許其餘中斷要求同時執行。
-v 顯示硬盤的相關設定。
-W<0或1> 設定硬盤的寫入快取。
-X<傳輸模式> 設定硬盤的傳輸模式。
-y 使IDE硬盤進入省電模式。
-Y 使IDE硬盤進入睡眠模式。
-Z 關閉某些Seagate硬盤的自動省電功能。
----------------------------------------
補充說明:hdparm可檢測,顯示與設定IDE或SCSI硬盤的參數。
測試各硬盤讀取速度判斷硬盤故障
在服務端命令窗口中執行以下命令
hdparm -t /dev/hda (IDE硬盤)
hdparm -t /dev/sda (SATA、SCSI、硬RAID卡陣列)
hdparm -t /dev/md0 (軟RAID設備)
hdparm -tT /dev/sda1