清理磁盘空间

你当前的磁盘使用情况如下:

复制代码
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   46G   36G  9.8G  79% /

当前根目录 / 已使用 79% ,空间已经较为紧张。以下是一些常用的 清理磁盘空间的方法,你可以按需选择:


✅ 1. 清理系统缓存(最安全、推荐先做)

清理 PageCache、目录项和 inode 缓存:

bash 复制代码
sync; echo 3 > /proc/sys/vm/drop_caches

📌 说明:这个命令是安全的,不会影响正在运行的程序,只是释放内核的缓存。


✅ 2. 清理 YUM 缓存(适用于 CentOS/RHEL)

bash 复制代码
yum clean all

或者:

bash 复制代码
rm -rf /var/cache/yum/*

✅ 3. 清理 Docker 占用空间(如果你使用 Docker)

删除所有停止的容器:

bash 复制代码
docker container prune

删除所有未使用的镜像(悬空镜像):

bash 复制代码
docker image prune -a

删除未使用的卷和网络:

bash 复制代码
docker volume prune
docker network prune

清理所有未使用的 Docker 对象:

bash 复制代码
docker system prune -a

✅ 4. 查看大文件和占用空间的目录

bash 复制代码
du -ah /path/to/dir | sort -h

例如查看根目录下哪些目录占用空间最多:

bash 复制代码
du -sh /* 2>/dev/null

常见清理目标:

  • /var/log/:日志文件,可删除旧日志或使用 logrotate
  • /tmp/:临时文件
  • /root/.cache/:用户缓存
  • /home/*/.cache/:其他用户缓存
  • /var/cache/:系统缓存

✅ 5. 清理旧的系统日志(/var/log/)

bash 复制代码
journalctl --vacuum-time=7d    # 保留最近7天的日志

或者:

bash 复制代码
rm -f /var/log/*.log.*         # 删除压缩日志
rm -f /var/log/messages-*      # 删除历史 messages 日志

⚠️ 操作前建议备份重要日志。


✅ 6. 删除不再使用的软件包

bash 复制代码
package-cleanup --leaves

或者手动删除:

bash 复制代码
yum remove <package-name>

✅ 7. 扩容磁盘(终极方案)

如果磁盘空间确实不足,考虑以下方式扩容:

  • 扩展 LVM 卷
  • 挂载新磁盘到 /var/home
  • 使用外部存储(如 NAS、OSS、S3)

✅ 推荐操作顺序(安全 + 高效):

  1. sync; echo 3 > /proc/sys/vm/drop_caches
  2. docker system prune -a(如果使用 Docker)
  3. du -sh /* 找出占用空间大的目录清理
  4. 清理 /var/log/ 中的旧日志
  5. 删除无用软件包或缓存

示例命令汇总:

bash 复制代码
# 清理内存缓存
sync; echo 3 > /proc/sys/vm/drop_caches

# 清理 Docker
docker system prune -a

# 查看磁盘占用情况
du -sh /* 2>/dev/null

# 清理日志
journalctl --vacuum-time=7d
rm -f /var/log/*.log.* /var/log/messages-*

# 清理 yum 缓存
yum clean all && rm -rf /var/cache/yum/*

如果你需要我帮你分析具体哪个目录占用了大量空间,请运行:

bash 复制代码
du -sh /var/* /root/* /home/* /opt/* 2>/dev/null | sort -h

然后将输出贴出来,我可以帮你进一步定位清理目标。

相关推荐
wuminyu37 分钟前
Kafka中sendfile与mmap实现机制解析
java·linux·c语言·jvm·c++
新时代牛马1 小时前
嵌入式网络完整篇:从LwIP/以太网驱动到 Linux netdev 与排障
linux·网络·php
猿与禅2 小时前
Linux(Ubuntu)入门到实战:系统管理、常用命令与权限体系完整指南
linux·ubuntu·apt·进程管理·系统运维·用户权限·vi/vim
前端世界2 小时前
Linux服务器实战:NTP时间同步、SELinux权限与rsyslog日志管理,一次搞懂三大运维问题
linux·运维·服务器
Android系统攻城狮2 小时前
Linux Gstreamer深度解析之gst_audio_converter_new调用流程与实战(二十)
linux·运维·服务器·gstreamer音视频·音视频进阶
H_oRIZoN_7 小时前
Linux入门DAY41(51 单片机 串口与通信协议)
linux·运维·单片机
GeW8 小时前
RHCE备考别瞎学!按这个计划走,30天提高通过率,快速拿证
linux
Escalating_xu9 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
傲世仙尊9 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
码农小韩9 小时前
Linux应用开发(六)——进程间通信
linux·linux驱动·嵌入式软件开发·嵌入式操作系统·linux应用