根据大文件系统的使用场景选择最优文件系统:
parted工具(fdisk不支持GPT分区表)。例如:sudo parted /dev/sdb mklabel gpt # 创建GPT分区表 sudo parted /dev/sdb mkpart primary ext4 0% 100% # 创建全量主分区 -T largefile选项优化大文件存储(减少inode数量,提升大文件写入性能):sudo mkfs.ext4 -T largefile /dev/sdb1 e2fsprogs工具(CentOS 6及以下版本需升级,以支持ext4的大文件特性):下载高版本源码编译安装,修改/etc/mke2fs.conf添加auto_64-bit_support = 1。在/etc/fstab或mount命令中添加以下选项,提升大文件系统性能:
noatime,nodiratime:禁用文件/目录访问时间更新,减少不必要的磁盘I/O(对读多写少的场景效果显著)。barrier=0:关闭写屏障(提升写入性能,但可能降低数据安全性,仅在数据可靠性要求低的场景使用)。commit=60:调整日志提交间隔(默认5秒),增大间隔可减少磁盘写入次数(如设置为60秒,平衡性能与数据安全)。fstab条目:/dev/sdb1 /mnt/largefs ext4 noatime,nodiratime,barrier=0,commit=60 0 0 通过LVM(逻辑卷管理)动态调整逻辑卷大小,避免频繁分区扩展:
sudo pvcreate /dev/sdb1 sudo vgcreate vg_large /dev/sdb1 sudo lvcreate -l 100%FREE -n lv_data vg_large sudo mkfs.ext4 /dev/vg_large/lv_data sudo mount /dev/vg_large/lv_data /mnt/largefs 后续可通过lvextend命令扩展逻辑卷(无需卸载文件系统)。
/etc/sysctl.conf优化磁盘调度和缓冲区:vm.dirty_ratio = 10 # 脏页比例阈值(达到后触发写入) vm.dirty_background_ratio = 5 # 后台写入脏页比例 net.core.rmem_max = 67108864 # 接收缓冲区最大值 net.core.wmem_max = 67108864 # 发送缓冲区最大值 执行sudo sysctl -p使配置生效。/etc/security/limits.conf,提升并发处理能力:* soft nofile 65535 * hard nofile 65535 * soft nproc 65535 * hard nproc 65535 iostat(查看磁盘I/O)、iotop(查看进程级I/O)、df -h(查看挂载状态)等工具定期检查系统状态。fsck命令修复文件系统错误(需卸载分区):sudo umount /dev/sdb1 sudo fsck.ext4 -y /dev/sdb1 e4defrag工具整理碎片(XFS使用xfs_fsr):sudo e4defrag /mnt/largefs 若挂载网络大文件系统,需调整NFS挂载参数提升性能:
rsize和wsize增大读写缓冲区(如1MB):sudo mount -t nfs -o rsize=1048576,wsize=1048576 192.168.1.100:/share /mnt/nfs async选项提升写入性能(异步写入,但可能降低数据安全性)。