一、采用合理的磁盘分区方案
合理的分区结构是优化磁盘使用的基础,需根据系统用途分配空间,避免单一分区过大或过小。通用分区建议:
二、使用LVM(逻辑卷管理)提升灵活性
LVM通过“物理卷-卷组-逻辑卷”的层级结构,实现磁盘空间的动态管理,解决传统分区无法灵活扩容的问题:
pvcreate /dev/sdX(将新磁盘或分区转换为物理卷);vgcreate vg_name /dev/sdX(将物理卷加入卷组,卷组是逻辑卷的存储池);lvcreate -L 10G -n lv_root vg_name(从卷组中划分10G空间给逻辑卷,名称自定义);mkfs.ext4 /dev/vg_name/lv_root → mount /dev/vg_name/lv_root /mnt。lvextend -L +5G /dev/vg_name/lv_root # 扩展逻辑卷5G
resize2fs /dev/vg_name/lv_root # 调整ext4文件系统大小
若使用XFS文件系统,扩展命令为xfs_growfs /dev/vg_name/lv_root(无需卸载文件系统)。三、定期清理无用文件释放空间
无用文件会快速占满磁盘,需定期清理:
rm -rf /tmp/*(删除/tmp目录下所有临时文件,重启后自动重建);truncate -s 0 /var/log/syslog(将syslog文件大小截断为0,保留文件但释放空间);yum list installed查看已安装软件,yum remove package_name卸载无用软件;yum clean all(删除YUM下载的rpm包,节省/var/cache/yum空间);ncdu /(交互式磁盘分析工具)或du -sh * | sort -h(按大小排序目录),定位占用空间大的目录(如/var/log、/home)。四、优化文件系统与分区性能
选择合适的文件系统并调整参数,可提升磁盘I/O效率:
noatime(禁用访问时间更新,减少磁盘写操作)、nodiratime(禁用目录访问时间更新),例如:/dev/mapper/vg_root-lv_root / ext4 defaults,noatime 0 1。cat /sys/block/sda/queue/scheduler查看当前调度器):
echo deadline > /sys/block/sda/queue/scheduler(临时生效),或写入/etc/rc.local(永久生效)。五、利用监控工具及时预警
定期监控磁盘使用情况,提前发现空间不足问题:
df -h:查看各分区使用率(重点关注使用率>80%的分区);du -sh /path/*:查看指定目录大小(如du -sh /var/*查看/var下各目录大小);yum install gparted);yum install ncdu,使用:ncdu /)。journalctl -xe查看系统日志,定位导致磁盘空间快速增长的服务(如日志服务rsyslog)。六、其他优化技巧
systemctl list-unit-files --state=enabled查看已启用的服务,禁用无用服务(如systemctl disable bluetooth),减少系统资源占用;setenforce 0)或永久关闭(修改/etc/selinux/config中的SELINUX=disabled),减少SELinux生成的日志文件大小;