admin 发表于 2026-8-13 07:04:37

服务器inode耗尽、磁盘空间异常爆满修复

服务器inode耗尽和磁盘空间异常爆满修复指南

问题诊断

当服务器出现inode耗尽或磁盘空间爆满时,会导致新文件无法创建、服务异常甚至系统崩溃。以下是修复步骤:

1. 检查磁盘空间使用情况
df -h# 查看磁盘空间使用情况

2. 检查inode使用情况
df -i# 查看inode使用情况

解决方案

针对磁盘空间爆满

[*]查找大文件

   du -h --max-depth=1 / | sort -hr# 从根目录开始查找大文件/目录
   # 或针对特定目录
   du -h --max-depth=2 /var/log/    # 例如检查日志目录

[*]清理日志文件

   # 清理旧日志(以logrotate配置的日志为例)
   sudo logrotate -f /etc/logrotate.conf
   
   # 或手动清理
   sudo rm -f /var/log/*.log.1# 删除旧日志
   sudo truncate -s 0 /var/log/syslog# 清空当前日志(谨慎使用)

[*]清理缓存文件

   # 清理APT缓存(Debian/Ubuntu)
   sudo apt-get clean
   
   # 清理YUM/DNF缓存(CentOS/RHEL)
   sudo yum clean all
   sudo dnf clean all

[*]删除无用文件
[*]删除不再需要的安装包、临时文件
[*]清理旧的备份文件
[*]删除核心转储文件(core dump)


针对inode耗尽

[*]查找inode占用高的目录

   # 查找文件数量最多的目录
   find / -xdev -printf '%h\n' | sort | uniq -c | sort -k1 -n -r | head

[*]常见inode占用原因
[*]大量小文件(如应用生成的临时文件)
[*]邮件队列堆积
[*]日志文件过多但未轮转
[*]缓存文件过多
[*]清理策略
[*]删除不再需要的小文件
[*]配置日志轮转策略
[*]限制应用生成临时文件的数量


预防措施

[*]监控设置
[*]配置磁盘空间和inode使用率监控
[*]设置阈值告警(如使用80%时报警)
[*]日志管理
[*]配置logrotate定期轮转日志
[*]设置日志保留策略(保留天数、文件大小限制)
[*]定期维护
[*]制定定期清理计划
[*]自动化清理脚本
[*]应用优化
[*]优化应用配置,减少不必要的文件生成
[*]限制用户文件上传数量和大小


紧急恢复

如果服务已因资源耗尽而停止:

[*]通过单用户模式或救援模式启动
[*]清理足够空间后重启
[*]考虑增加磁盘空间或优化文件系统


通过以上方法,您可以有效地解决服务器inode耗尽和磁盘空间异常爆满的问题,并建立预防机制避免问题再次发生。
页: [1]
查看完整版本: 服务器inode耗尽、磁盘空间异常爆满修复