服务器硬盘空间不足?手把手教你高效清理与维护
当服务器硬盘空间告急,可能导致网站访问卡顿、服务崩溃甚至数据丢失,本文将提供一套专业、安全且高效的清理方案,确保您的服务器稳定运行。
使用命令行工具快速扫描
du -sh /* 2>/dev/null # 查看根目录下各文件夹大小 find / -type f -size +100M -exec ls -lh {} ; # 查找大于100MB的文件
重点关注高占用目录
/var/log
(系统日志)/tmp
(临时文件)/var/cache
(软件缓存)ibdata
文件、WordPress的媒体库)日志文件
find /var/log -type f -name "*.log*" -mtime +30 -exec rm -f {} ;
logrotate
(自动压缩和轮转日志)缓存与临时文件
apt clean # Debian/Ubuntu yum clean all # CentOS/RHEL
旧版本备份与镜像
/var/backups
、数据库备份目录未使用的软件与依赖项
apt autoremove # Debian/Ubuntu yum autoremove # CentOS/RHEL
数据库优化
PURGE BINARY LOGS BEFORE '2024-01-01 00:00:00';
OPTIMIZE TABLE
减少碎片占用(需结合业务低峰期操作)版本控制残留文件
.git
、.svn
目录 find /path -name ".git" -type d -exec rm -rf {} +
设置定期清理任务(Crontab示例)
# 每周日凌晨清理7天前日志 0 0 * * 0 find /var/log -name "*.log" -mtime +7 -exec rm -f {} ;
监控工具推荐
扩容决策参考
若清理后空间仍不足80%,建议升级硬盘或挂载云存储(如AWS EBS、阿里云OSS)
危险操作预警
truncate
命令清空) ibdata
)需通过专业命令收缩,禁止手动删除 权限与安全
shred
或专业工具) 保留必要数据
清理后验证
systemctl list-dependencies | grep critical-service
引用说明
本文参考了Linux官方文档、AWS存储最佳实践及Nginx日志管理指南,部分命令经过生产环境验证,具体操作前请根据实际环境测试。