1. 选择高性能硬件
使用SSD替代传统HDD是提升读写速度的核心硬件升级,SSD的低延迟(约0.1ms)和高IOPS(每秒数万次操作)能显著改善I/O性能。此外,增加内存(RAM)可作为磁盘缓存,减少对物理磁盘的直接访问,进一步提升读写效率。
2. 优化分区对齐
分区对齐可减少磁盘寻址时间,尤其对SSD至关重要。对于GPT分区表,推荐起始扇区设置为4096(或1MB边界);对于MBR分区表,起始扇区设置为2048。使用parted工具创建对齐分区(如sudo parted -a opt /dev/sdb -- mkpart primary 0% 10GB),或手动计算起始扇区(如起始扇区 = (磁盘物理扇区大小 × N),确保对齐)。
3. 选择合适的文件系统
根据场景选择文件系统:
4. 调整文件系统挂载选项
通过修改/etc/fstab文件调整挂载参数,减少不必要的I/O操作:
data=ordered为元数据和数据都写入日志),提高写入性能(适用于有应用层数据保护的应用,如数据库);nodiscard(禁用实时TRIM),通过cron定期运行fstrim(如0 3 * * * /sbin/fstrim -av)在非高峰期执行TRIM,避免实时TRIM带来的延迟。5. 优化磁盘调度算法
根据存储介质选择合适的I/O调度算法:
noop(FIFO队列,无调度)或deadline(保证请求延迟,适用于延迟敏感应用),减少调度开销;deadline(优先处理即将到期的请求,避免随机读取延迟)或bfq(预算公平队列,适用于多用户环境,平衡请求),提升顺序/随机读写性能。echo命令修改调度算法(如echo deadline > /sys/block/sda/queue/scheduler)。6. 调整内核参数
修改/etc/sysctl.conf文件优化内存与磁盘交互:
pdflush进程将脏页写入磁盘(减少此值可降低I/O峰值,如设为10%);7. 使用LVM(逻辑卷管理)
LVM提供灵活的存储管理,可通过以下方式提升性能:
lvcreate -i 2 -I 64 -L 10G -n my_lv vg0,-i 2表示2个物理卷,-I 64表示条带大小64KB),提高并行读写速度;lvextend -L +5G /dev/vg0/my_lv),减少分区碎片。8. 定期监控与维护
使用工具监控磁盘性能,及时发现瓶颈:
iostat -mx 1,显示每秒读写速率、IOPS、等待时间);iotop -o,显示实时I/O消耗排名);vmstat 1,显示内存、I/O、CPU使用情况)。e4defrag /dev/sda1,SSD无需频繁整理),保持系统健康。