小服务器磁盘突然满了,我一般这么查
【摘要】 前两天网站突然打不开,登上去一看,40G 的盘全满了。小配置服务器这种事挺常见的,记一下我的排查顺序,给同样用小机器的朋友参考。第一步,先看是哪个分区满了:df -h一般就是根分区 / 。第二步,一层一层往下找大目录:du -h --max-depth=1 / 2>/dev/null | sort -hr | head哪个大就 cd 进去再跑一遍。我这次是 /www/wwwlogs 和 /v...
前两天网站突然打不开,登上去一看,40G 的盘全满了。小配置服务器这种事挺常见的,记一下我的排查顺序,给同样用小机器的朋友参考。
第一步,先看是哪个分区满了:
df -h
一般就是根分区 / 。
第二步,一层一层往下找大目录:
du -h --max-depth=1 / 2>/dev/null | sort -hr | head
哪个大就 cd 进去再跑一遍。我这次是 /www/wwwlogs 和 /var/log 占了快 20G。
第三步,处理日志。别直接 rm 正在写的日志,进程还占着空间不会释放,用清空就行:
/www/wwwlogs/xxx.log
systemd 的日志可以这样压到 200M:
journalctl --vacuum-size=200M
第四步,如果删了文件 df 还是满的,多半是有进程占着已删除的文件:
lsof | grep deleted
找到对应服务重启一下就释放了。
最后是防止再满:宝塔里可以开日志切割,只保留最近几天;备份文件也别全堆在本地,放到 OBS 里。我现在还加了个定时任务,磁盘超过 85% 就发个提醒,省得网站挂了才知道。
就这些,不复杂,但第一次碰到的时候我也折腾了半天。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)