迷彩 潜伏 隐蔽 伪装
分类:
2012-07-21 06:41:15
原文地址:Linux下hdparm硬盘测速 作者:zzjlzx
2012-03-23 14:07:58| 分类: 基本命令 | 标签: |字号大中小
在Linux下可以使用hdparm对硬盘进行测试或者查看硬盘的相关信息。这样你就知道了硬盘读写速度。
hdparm
参数:
-a 表示是否关闭磁盘预读取功能。对于大文件读取,这个显然能提高性能。
-A设置硬盘驱动器缓存读取特性。可能就是硬盘缓存开关
-g 显示硬盘的磁轨,磁头,磁区等参数。
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。
-I 直接读取硬盘所提供的硬件规格信息。
-p 设定硬盘的PIO模式。
-Tt 评估硬盘的读取效率和硬盘快取的读取效率。
-u; 在硬盘存取时,允许其他中断要求同时执行。
-v 显示硬盘的相关设定。
例子:
1)直接硬盘读测试
[root@apktv ~]# 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
显示硬盘的柱面、磁头、扇区数
#hdparm -g /dev/sda
/dev/sda:
geometry = 35539[柱面数]/255[磁头数]/63[扇区数], sectors = 570949632[总扇区数], start = 0[起始扇区数]
评估硬盘的读取效率(停止所有服务,多测几次)
:~# hdparm -T /dev/sda
/dev/sda:
Timing cached reads: 7540 MB in 2.00 seconds = 3771.50 MB/sec
:~# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 226 MB in 3.04 seconds = 74.36 MB/sec
:~# hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 7750 MB in 2.00 seconds = 3876.91 MB/sec
Timing buffered disk reads: 270 MB in 3.00 seconds = 89.99 MB/sec
-T
用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不存取磁盘直接从Linux缓存 读取数据的速度.这项测量实际上标示了被测系统的处理器,缓存 和内存的吞吐量. 如果标志 -t 也被指定,那么一个基于 -T 输出结果的修正量将被综合到 -t 操作报告的结果中.
-t
用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不使用预先的数据缓冲从磁盘 这项测量标示了Linux下没有任何文件系统开销时磁盘可以支持多快的连续数据读取.为确保测量的精确,缓存在 -t 的过程中通过BLKFLSBUF控制被刷新. 如果标志 -T 也被指定,那么一个基于 -T 数促结果的修正量将被综合到 -t 操作报告的结果中.
hdpa(hard disk parameters)
功能说明:显示与设定硬盘的参数。
语 法:hdp [-CfghiIqtTvyYZ][-a <快取分区>][-A <0或1>][-c ][-d <0或1>][-k <0或1>][-K <0或1>][-m <分区数>][-n <0或1>][-p
补充说明:hdp
参 数:
-a<快取分区> 设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定。
-A<0或1> 启动或关闭读取文件时的快取功能。
-c 设定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
-P<磁区数> 设定硬盘内部快取的分区数。
-q 在执行后续的参数时,不在屏幕上显示任何信息。
-r<0或1> 设定硬盘的读写模式。
-S<时间> 设定硬盘进入省电模式前的等待时间。
-t 评估硬盘的读取效率。
-T 平谷硬盘快取的读取效率。
-u<0或1> 在硬盘存取时,允许其他中断要求同时执行。
-v 显示硬盘的相关设定。
-W<0或1> 设定硬盘的写入快取。
-X<传输模式> 设定硬盘的传输模式。
-y 使IDE硬盘进入省电模式。
-Y 使IDE硬盘进入睡眠模式。
-Z 关闭某些Seagate硬盘的自动省电功能。
显示与设置硬盘参数
------------------------------------------------------------------------
.显示硬盘的相关设置
[root@linuxso.com ~]# hdparm /dev/sda
/dev/sda:
IO_pport = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geomey = 19929[柱面数]/255[磁头数]/63[扇区数], sectors = 320173056[总扇区数], start = 0[起始扇区数]
.显示硬盘的柱面、磁头、扇区数
[root@linuxso.com ~]# hdparm -g /dev/sda
/dev/sda:
geometry = 19929[柱面数]/255[磁头数]/63[扇区数], sectors = 320173056[总扇区数], start = 0[起始扇区数]
.评估硬盘的读取效率
[root@linuxso.com ~]# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 166 MB in 3.03 seconds = 54.85 MB/sec
[root@linuxso.com ~]# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 160 MB in 3.01 seconds = 53.11 MB/sec
[root@linuxso.com ~]# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 166 MB in 3.00 seconds = 55.31 MB/sec
.评估硬盘快取的读取效率
[root@linuxso.com ~]# hdparm -T /dev/sda
/dev/sda:
Timing cached reads: 3784 MB in 2.00 seconds = 1894.60 MB/sec
[root@linuxso.com ~]# hdparm -T /dev/sda
/dev/sda:
Timing cached reads: 3816 MB in 2.00 seconds = 1909.06 MB/sec
[root@linuxso.com ~]# hdparm -T /dev/sda
/dev/sda:
Timing cached reads: 3728 MB in 2.00 seconds = 1866.29 MB/sec
.检测IDE硬盘的电源管理模式
[root@linuxso.com ~]# hdparm -C /dev/sda
/dev/sda:
drive e is: standby [省电模式]