做西安网站开发的同行大概都遇到过这样的场景:早上刚到公司,客户电话就来了——「网站打不开了!」登上服务器一看,磁盘使用率 100%。数据库写不进去、日志写不进去、Session 存不下,网站自然就趴了。别慌,陕西星环深索的技术小伙伴今天就把这套「磁盘爆满急救手册」分享给你,照着做,十分钟内基本能止血。

第一步:先搞清楚是谁把磁盘吃光了

别上来就乱删,先定位。两条命令足够:

  • df -h:看每个分区还剩多少,确认是哪个挂载点爆了;
  • du -sh /* 再逐层往下 du -sh /var/*,像剥洋葱一样找到那个「大胃王」目录。

想更快一点,直接上 find / -type f -size +500M,把超过 500M 的大文件揪出来,往往一击命中。

第二步:常见「元凶」逐个击破

在我们给客户做西安网站开发与运维的过程中,磁盘爆满的原因翻来覆去就那么几个:

  • 日志文件疯长:Nginx、Tomcat、应用日志没做切割,一年下来几个 G 很常见。用 logrotate 配置按天切割、保留 7~15 天,或者用 truncate -s 0 xxx.log 清空,注意不要直接 rm 正在被进程占用的日志,否则空间不会立刻释放。
  • 被删除却仍被占用的文件:lsof | grep deleted 一查便知,重启对应服务即可回收空间。
  • 数据库 binlog 和备份:MySQL 的 binlog 记得设置过期时间 expire_logs_days,备份文件建议直接丢到对象存储,别全堆在服务器上。
  • 上传目录和缓存:用户上传的图片、视频、临时缓存文件,建议按日期分目录,并配合定时任务清理过期数据。
  • Docker 镜像和容器日志:docker system prune -a 是救火神器,但记得先确认没有要保留的镜像。

第三步:治标之后要治本

清理只是急救,真正的功夫在日常。我们在做西安软件开发项目交付时,都会顺手把这几件事配上:

  • 磁盘水位监控告警,超过 80% 就自动发通知,别等 100% 才被动救火;
  • 日志统一收集到日志平台,本地只留少量滚动文件;
  • 图片、视频、附件走对象存储 + CDN,服务器只存业务数据;
  • 定期巡检脚本,把大文件、僵尸文件、无用备份自动清理掉。

说白了,磁盘管理跟家里收纳一个道理:东西不是不能多,而是要有地方放、有习惯扔。

写在最后

服务器稳定是网站的底裤,平时看不见,一旦出事就是大事。如果你正在做西安网站开发、西安小程序开发,或者想给自己的业务搭一套 AI 智能体开发方案,却总被运维小事绊住脚,欢迎找陕西星环深索聊聊。我们有专门的运维巡检与技术保障团队,让你的服务器少掉链子,让老板少接几个「网站又打不开了」的电话。