本文通过使用hdparm 和 tune2fs 等工具对磁盘性能调整的介绍,引出了另外一个测试磁盘的工具 Bonnie。
一、磁盘性能的调整
很多人可能不知道 Linux 内核有几个开关可以打开 IDE 磁盘的32 位 DMA 通道来加快传输速度。在性能上能加快两倍,几乎就和加一块磁盘镜像一样。
这些开关是几个命令的组合:
在PCI 总线上使用32 位 I/O :
# /sbin/hdparm -c 1 /dev/hda
(在有些芯片集的主板上,可能需要使用 -c 3 参数)
打开 DMA 通道:
# /sbin/hdparm -d 1 /dev/hda
(和内核是否支持主板芯片集,是否编译进去有关)
测试性能是否有改进:
# /sbin/hdparm -t /dev/hda
假如性能有改进的话,就可以保存设置:
# /sbin/hdparm -k 1 /dev/hda
内核会偶然复位IDE 控制器,所以,假如没有保存的话,
先前的设置就丢失了,磁盘性能又回到死系胤健?
另外还有一个 -m 参数用来改变每次硬盘中断时的传递扇区数。
一般的机器都安装了 hdparm ,假如没有的话,可以在下面的地址找到:
http://metalab.unc.edu/pub/Linux/system/hardware/hdparm-3.5.tar.gz
用户报告在服务器上使用
# /sbin/hdparm -c1 -d1 -k1 -m16 -a128 /dev/hda
命令可以得到最大性能。
而在笔记本电脑上是:
# /sbin/hdparm -c1 -d1 -k1 -m16 /dev/hda
需要注重的时,打开DMA 通道在某些硬盘上会有危险,因为这些磁盘在DMA 的设计上不是很好。幸运的是,大多数磁盘还是可以使用这个方法来提升性能。假如你打开DMA 以后,经常碰到文件系统损坏的话,就要考虑不使用 DMA 了。
二、文件系统的调整
经常启动Linux 的人会知道,Linux 每当启动过一定次数后就会自动运行一个 fsck 程序,来检查文件系统。这个次数可以通过命令:
# tune2fs -c my_times
来调整。
tune2fs 是一个十分有用的工具,使用 -e 参数你可以指定文件系统碰到问题时应该怎样处理。具体的信息可以用
# man tune2fs
得到。
但是,不要在以读/写方式挂接的分区上运行 tune2fs。
三、磁盘速度测试
Bonnie 是一个用来测试文件系统性能的程序,使用方法为:
bonnie [-d dir] [-s size] [-Html]
它往硬盘写入一个 100MB 的文件然后读出来测试磁盘性能。你可以用 -s 参数来调整这个文件的大小,单位是 MB。默认的测试目录是当前目录,可以用 -d 参数改变。
-html 参数用来把结果以 HTML 格式输出。
例如:
# bonnie -d /home/tuneup -s 50
会测试目录 /home/tuneup 所在的文件系统读写 50MB 文件时的性能。
最新版本的 Bonnie 1.2 可以在以下网址下载:
FTP://ftp.linux.com/mounts/u3/mirrors/suse/people/garloff/linux/bonnie/bonnie-1.2.tar.gz