CentOS文件系统维护指南
定期监控文件系统的磁盘空间、inode使用率及分区类型是维护的基础。常用命令:
df -h:以易读格式显示各文件系统的总容量、已用空间、可用空间及挂载点(-h表示人类可读,如GB、MB);df -i:查看inode使用情况(inode耗尽会导致无法创建新文件,即使磁盘空间充足);du -sh /*:统计根目录下各目录的大小(-s汇总,-h易读);lsblk:查看块设备(磁盘、分区)的挂载关系。文件系统错误多由非正常关机(如断电、强制重启)引起,需通过以下步骤修复:
umount /dev/sda1),若为系统分区需进入救援模式(通过CentOS安装光盘/USB启动,选择“Rescue a CentOS system”);fsck -y /dev/sda1(-y自动回答“yes”以修复错误);xfs_repair /dev/sda1(XFS修复无需卸载,但建议在单用户模式或救援模式下操作);定期清理无用文件可释放磁盘空间,提升系统性能:
yum clean all(CentOS 7及以下)或dnf clean all(CentOS 8及以上),删除下载的软件包缓存;rm -rf /tmp/*(系统临时文件)、rm -rf ~/.cache/*(用户临时文件)、rm -rf /var/tmp/*(临时文件);package-cleanup --oldkernels --count=1(保留最新1个内核),避免旧内核占用过多空间;find / -type f -size +100M -exec ls -lh {} \;(查找大于100MB的文件),定位后可选择性删除;find /var/log -type f -name "*.log" -size 50M -mtime 7 -exec truncate -s 0 {} \;(清空7天前大于50MB的日志);/etc/logrotate.conf(如调整maxsize、rotate参数),自动压缩/删除旧日志。合理的配置可提升文件系统的读写效率:
/)、用户数据(/home)、临时文件(/tmp)等分开,避免单一分区空间耗尽影响整体性能;sync; echo 3 | sudo tee /proc/sys/vm/drop_caches清理页面缓存(释放内存,提升系统响应速度);/etc/fstab中为分区添加noatime(不记录访问时间,减少磁盘写入)、nodiratime(不记录目录访问时间)等选项(如/dev/sda1 / ext4 defaults,noatime 0 1)。rsync、tar或专业备份工具(如Veeam)备份重要数据,建议每周增量备份、每月全量备份;cron任务定期运行df -h,或使用监控工具(如Zabbix、Nagios)设置磁盘空间阈值告警(如剩余10%时报警);systemctl list-unit-files查看所有服务,禁用不需要的服务(如systemctl disable bluetooth),减少系统资源占用;ncdu(yum install ncdu或dnf install ncdu),以交互式界面查看磁盘空间使用情况,快速定位大文件/目录。