hdparm

显示与设定硬盘的参数

补充说明

hdparm命令 提供了一个命令行的接口用于读取和设置IDE或SCSI硬盘参数。

语法

  1. hdparm(选项)(参数)

选项

  1. -a<快取分区>:设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定;
  2. -A<01>:启动或关闭读取文件时的快取功能;
  3. -c<I/O模式>:设定IDE32I/O模式;
  4. -C:检测IDE硬盘的电源管理模式;
  5. -d<01>:设定磁盘的DMA模式;
  6. -f:将内存缓冲区的数据写入硬盘,并清楚缓冲区;
  7. -g:显示硬盘的磁轨,磁头,磁区等参数;
  8. -h:显示帮助;
  9. -i:显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供;
  10. -I:直接读取硬盘所提供的硬件规格信息;
  11. -k<01>:重设硬盘时,保留-dmu参数的设定;
  12. -K<01>:重设硬盘时,保留-APSWXZ参数的设定;
  13. -m<磁区数>:设定硬盘多重分区存取的分区数;
  14. -n<01>:忽略硬盘写入时所发生的错误;
  15. -p<PIO模式>:设定硬盘的PIO模式;
  16. -P<磁区数>:设定硬盘内部快取的分区数;
  17. -q:在执行后续的参数时,不在屏幕上显示任何信息;
  18. -r<01>:设定硬盘的读写模式;
  19. -S<时间>:设定硬盘进入省电模式前的等待时间;
  20. -t;评估硬盘的读取效率;
  21. -T:平谷硬盘快取的读取效率;
  22. -u<01>:在硬盘存取时,允许其他中断要求同时执行;
  23. -v:显示硬盘的相关设定;
  24. -w<01>:设定硬盘的写入快取;
  25. -X<传输模式>:设定硬盘的传输模式;
  26. -y:使IDE硬盘进入省电模式;
  27. -Y:使IDE硬盘进入睡眠模式;
  28. -Z:关闭某些Seagate硬盘的自动省电功能。

参数

设备文件:指定id驱动对应的设备文件名。

实例

显示硬盘的相关设置:

  1. hdparm /dev/sda
  2. /dev/sda:
  3. IO_support = 0 (default 16-bit)
  4. readonly = 0 (off)
  5. readahead = 256 (on)
  6. geometry = 19457[柱面数]/255[磁头数]/63[扇区数], sectors = 312581808[总扇区数], start = 0[起始扇区数]
  7. ```shell
  8. 显示硬盘的柱面、磁头、扇区数:
  9. ```shell
  10. hdparm -g /dev/sda
  11. /dev/sda:
  12. geometry = 19457[柱面数]/255[磁头数]/63[扇区数], sectors = 312581808[总扇区数], start = 0[起始扇区数]

测试硬盘的读取速度:

  1. hdparm -T /dev/sda
  2. /dev/sda:
  3. Timing cached reads: 4684 MB in 2.00 seconds = 2342.92 MB/sec

测试硬盘缓存的读取速度:

  1. hdparm -T /dev/xvda
  2. /dev/xvda:
  3. Timing cached reads: 11154 MB in 1.98 seconds = 5633.44 MB/sec

检测硬盘的电源管理模式:

  1. hdparm -C /dev/sda
  2. /dev/sda:
  3. drive state is: standby [省电模式]

查询并设置硬盘多重扇区存取的扇区数,以增进硬盘的存取效率:

  1. hdparm -m /dev/sda
  2. hdparm -m #参数值为整数值如8 /dev/sda

附:硬盘坏道修复方法

  1. 检查:smartctl -l selftest /dev/sda
  2. 卸载:umount /dev/sda*
  3. 修复:badblocks /dev/sda