开发者社区 问答 正文

阿里云国际代理商:ECS 内存 或 磁盘爆满怎么清理?

阿里云国际代理商:ECS 内存 或 磁盘爆满怎么清理?

展开
收起
云渠道商yunshuguoji 2026-08-13 14:08:56 23 分享 版权
1 条回答
写回答
取消 提交回答
  • 专注分享|知识干货|避坑指南 有注册开户类、云领域知识等不了解的问题可以问我哦

    本文由阿里云国际云服务器代理商:云枢国际yunshuguoji撰写。
    01084746.png

    模块 A:磁盘空间爆满 排查 + 清理步骤
    步骤 1:确认磁盘占用,定位满盘分区
    bash
    df -h
    观察Use%=100%的分区(一般是根分区 /)

    步骤 2:逐级查找占用空间最大目录
    bash
    查看根目录下文件夹大小,从大到小排序
    sudo du -sh /* 2>/dev/null | sort -rh | head -15
    找到大目录后,进入目录再次执行命令,层层定位大文件。

    步骤 3:优先安全清理(无业务风险,优先执行)
    清理系统临时目录
    bash
    sudo rm -rf /tmp/ /var/tmp/
    清理系统 journal 系统日志
    bash
    sudo journalctl --vacuum-size=200M
    Amazon Linux/CentOS 清理 dnf/yum 缓存
    bash
    sudo dnf clean all
    Ubuntu 清理 apt 缓存
    bash
    sudo apt clean && apt autoremove -y
    Nginx / 应用过期日志(确认日志无用再清理)
    bash
    删除30天之前轮转日志
    find /var/log/nginx -name ".log." -mtime +30 -delete
    使用 Docker 场景:清理无用镜像、容器
    bash
    docker system prune

    步骤 4:特殊疑难场景:删除文件空间不释放
    现象:删掉大文件,df 查看空间依旧满;原因:文件被进程持续占用。
    bash
    sudo lsof | grep deleted
    找到对应进程 PID,优先重启对应业务服务,不要直接 kill 核心业务进程。

    步骤 5:长期根治方案
    配置 logrotate 自动轮转日志;定期清理过期备份;必要时控制台扩容云盘。

    模块 B:内存爆满 排查 + 缓解步骤

    步骤 1:查看整体内存状态
    bash
    free -h
    重点看 available 可用内存、Swap 交换分区占用。Swap 持续上涨 = 内存严重不足。

    步骤 2:找出占用内存最高进程
    bash
    按内存从高到低排序
    ps aux --sort -rss | head -12
    或者实时监控
    bash
    top
    按下大写M,按内存排序

    步骤 3:应急缓解方案
    临时释放页缓存(业务低谷执行,高峰慎用)
    bash
    sync; echo 3 > /proc/sys/vm/drop_caches
    确认异常进程:
    测试进程、僵尸进程:正常停止或 kill
    业务程序持续内存占用:排查代码内存泄漏、调整 JVM / 应用内存参数

    步骤 4:长期根治
    优化程序内存配置;增加 ECS 实例内存规格;增加 Swap 分区作为缓冲。

    2026-08-13 14:13:31
    赞同 441 展开评论
问答分类:
问答地址: