使用多个控制器
IDE和SCSI磁盘可以被链接。IDE链最多包括两个设备,标准SCSI链最多包括七个设备。如果在系统中有两个或更多SCSI磁盘,很可能被链接到同一个控制器。这样对大多数操作是足够的,尤其是把计算机当作单用户的工作站时。但是如果有一个服务器,那么就能够通过对每个SCSI驱动器提供一个控制器改善性能。当然,好的控制器是昂贵的。
调整硬盘参数
使用Hdparm工具可以调整IDE硬盘性能,它设计时专门考虑了使用UDMA驱动器。在缺省情况下,Linux使用是最安全的,但是设置访问IDE驱动器是最慢的。缺省模式没有利用UDMA可能的最快的性能。
使用Hdparm工具,通过激活下面的特性可以显著地改善性能:
◆ 32位支持 缺省设置是16位;
◆ 多部分访问 缺省设置是每次中断单部分传送。
注意:在使用Hdparm之前,确保对系统已经做了完全的备份。使用Hdparm改变IDE参数,如果出错可能会引起驱动器上全部数据的丢失。Hdparm可以提供关于硬盘的大量信息。打开一个终端窗口,输入下面命令获取系统中第一个IDE驱动器的信息(改变设备名获取其它IDE驱动器的信息):
Hdparm -v /dev/had
上面命令显示出当系统启动时从驱动器获得的信息,包括驱动器操作在16位或32位模式(I/O Support)下,是否为多部分访问(Multcount)。关于磁盘驱动器的更详细信息的显示可使用-i参数。
Hdparm也可以测试驱动器传输速率。输入命令测试系统中第一个IDE驱动器:
Hdparm -Tt /dev/hda
此测试可测量驱动器直接读和高速缓冲存储器读的速度。结果是一个优化的“最好的事例”数字。改变驱动器设置,激活32位传输,输入下面的命令:
Hdparm -c3 /dev/hda
-c3参数激活32位支持,使用-c0可以取消它。-c1参数也可激活32位支持并使用更少的内存开销,但是在很多驱动器下它不工作。
大多数新IDE驱动器支持多部分传输,但是Linux缺省设置为单部分传输。注意:这个设置在一些驱动器上,激活多部分传输能引起文件系统的完全崩溃。这个问题大多数发生在较老的驱动器上。输入下面的命令激活多部分传输:
Hdparm -m16 /dev/hda
-m16参数激活16部分传输。除了西部数据的驱动器外,大多数驱动器设置为16或32部分是最合适的。西部数据的驱动器缓冲区小,当设置大于8部分时性能将显著下降。对西部数据驱动器来说,设置为4部分是最合适的。激活多部分访问能够减少CPU负载30%~50%,同时可以增加数据传输速率到50%。使用-m0参数可以取消多部分传输。Hdparm还有许多选项可设置硬盘驱动器,在此不详述。