选择合适的文件系统
根据场景选择文件系统是挂载优化的基础。ext4适用于大多数通用场景(如桌面、常规服务器),兼容性好且稳定性高;XFS适合大文件存储(如视频、数据库)和高性能要求的场景(如高并发读写),其扩展性和吞吐量优于ext4;Btrfs则提供快照、数据校验等高级功能,但稳定性仍在提升中,适合对数据安全性要求高的环境。
优化挂载选项减少磁盘I/O
通过挂载选项可显著降低不必要的磁盘操作。noatime:禁用文件最后访问时间更新,减少每次文件访问的磁盘写操作(如/etc/fstab中添加noatime);nodiratime:禁用目录最后访问时间更新,进一步减少I/O(常与noatime配合使用);discard:针对SSD启用TRIM功能,及时回收无效块,提升SSD寿命和性能(仅适用于支持TRIM的SSD)。
调整磁盘I/O调度器适配场景
CentOS提供多种I/O调度器,需根据磁盘类型和使用场景选择:
echo deadline > /sys/block/sdX/queue/scheduler);echo noop > /sys/block/sdX/queue/scheduler);grub2-mkconfig -o /boot/grub2/grub.cfg)并重启生效。使用LVM管理磁盘空间提升灵活性
LVM(逻辑卷管理)可将多个物理磁盘组合为逻辑卷,支持动态调整卷大小(无需重新分区),提高存储管理效率。例如,通过pvcreate创建物理卷、vgcreate创建卷组、lvcreate创建逻辑卷,后续可根据需求扩展卷大小(lvextend+resize2fs/xfs_growfs),适合数据量增长快的场景。
优化网络文件系统(NFS/SMB)参数
若挂载网络存储,需调整协议和参数提升性能:
vers=3.0(或更高版本)替代默认的NFSv4(避免协议协商开销);调整rsize和wsize(如rsize=131072,wsize=131072)增大读写缓冲区,减少网络往返次数;添加noatime,nodiratime减少元数据操作。cachetype=loose(缓存模式)、uid=0,gid=0(指定用户/组)等参数,提升文件共享性能。启用磁盘缓存(针对HDD/SSD)
hdparm启用写缓存(hdparm -W 1 /dev/sdX),提升写性能(注意:断电可能导致数据丢失,需确保电源稳定);hdparm -W 1 /dev/sdX)并开启TRIM功能(discard挂载选项),提升读写速度和寿命。调整内核参数优化系统性能
修改/etc/sysctl.conf文件调整内核参数,提升挂载和I/O性能:
vm.dirty_ratio = 10(脏页比例阈值,超过则触发写回)、vm.dirty_background_ratio = 5(后台写回的脏页比例),减少I/O等待;net.ipv4.tcp_tw_reuse = 1(复用TIME-WAIT连接)、net.ipv4.tcp_fin_timeout = 30(FIN超时时间),提升网络传输效率。禁用不必要的SELinux功能
若不需要SELinux的强制访问控制,可将其设置为Permissive模式(setenforce 0),减少SELinux对挂载和文件访问的性能开销。如需永久生效,编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=permissive。
定期监控与维护
使用工具定期监控系统性能,及时发现瓶颈:
iostat -x 1);vmstat 1);fio --name=test --filename=/mnt/data/testfile --size=1G --rw=randread --ioengine=libaio --bs=4k --numjobs=4 --runtime=60 --time_based)。/var/log)、缓存(sync; echo 3 > /proc/sys/vm/drop_caches),释放磁盘空间。