hdparm(hard disk parameters)
功能說明:顯示與設定硬盤的參數。
語 法: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設置硬盤驅動器緩存讀取特性。可能就是硬盤緩存開關
-g 顯示硬盤的磁軌,磁頭,磁區等參數。
-i 顯示硬盤的硬件規格信息,這些信息是在開機時由硬盤本身所提供。
-I 直接讀取硬盤所提供的硬件規格信息。
-p 設定硬盤的PIO模式。
-Tt 評估硬盤的讀取效率和硬盤快取的讀取效率。
-u; 在硬盤存取時,允許其他中斷要求同時執行。
-v 顯示硬盤的相關設定。
例子:
1)直接硬盤讀測試
[root@linuxeye ~]# hdparm -tT –direct /dev/sda1
/dev/sda1:
Timing O_DIRECT cached reads: 704 MB in 2.00 seconds = 351.50 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
Timing O_DIRECT disk reads: 546 MB in 3.01 seconds = 181.43 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
使用DMA方式傳輸數據可以占用更少的CPU資源,因此與其它操作系統一樣,
Linux支持硬盤以DMA方式轉輸數據,但在安裝Red Hat7.0時關於DMA的默認選項是Disable的,當然你可以在安裝時就enable它。
hdparm -t /dev/hda 查看IDE的磁盤,Sata或scsi的為:hdparm -t /dev/sda
一硬盤using_dma 為off,讀取速度慢;而另一硬盤using_dma 為on,讀取速度快。
查看與開啟DMA支持執行命令如下:
[root@RJ-RMS root]# hdparm -cdt /dev/hda
/dev/hda:
IO_support = 0 (default 16-bit)
using_dma = 0 (off)
Timing buffered disk reads: 64 MB in 20.84 seconds = 3.07 MB/sec
[root@RJ-RMS root]# hdparm -d1 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
using_dma = 1 (on)
[root@RJ-RMS root]# hdparm -cdt /dev/hda
/dev/hda:
IO_support = 0 (default 16-bit)
using_dma = 1 (on)
Timing buffered disk reads: 64 MB in 1.09 seconds = 58.72 MB/sec
hdparm的改變是個臨時的狀態,下次再次啟動Linux系統的時候hdparm將會消失。所以要想永久的保存修改後的信息,就必須把修改後的參數和數據寫入/etc/rc.d/rc.local或/etc/rc.local文檔,甚至比啟動過程要早運行的程式中。
壞道修復
檢查: smartctl -l selftest /dev/sda
卸載:
umount /dev/sda*
修復: badblocks /dev/sda