Linux系统服务器如何释放清理空间

如果你的Linux服务器或系统的磁盘空间不够用了,你可以按照以下简单的方法来释放空间和清理。

在本指南中,您将学习如何清理缓存、旧内核、删除未使用的软件包、日志。

✅Ubuntu 清理系统垃圾

MjIwNw

全面清理内容包括:

类型 说明
APT 缓存 清理软件包缓存、孤立包等
未使用的依赖包 自动移除 apt-get autoremove
旧配置文件 使用 --purge 清理配置
旧内核 删除不再使用的旧内核(保留当前)
Snap 旧版本 删除被禁用的 Snap 应用旧版本
系统日志缓存 清理 /var/log 中的大文件和过期日志
临时文件 清理 /tmp/var/tmp
废弃包 & 缺失包 使用 deborphan(可选)检测孤立包
用户缓存 清理 ~/.cache 下的缓存内容

⏭️一键清理

一键清理 Ubuntu 系统垃圾的完整脚本(推荐使用)

保存为:clean_ubuntu.sh

#!/bin/bash

set -euo pipefail

echo "🧼 Ubuntu 系统全面清理开始..."

### 1. 更新并升级系统 ###
echo "🔄 更新软件包索引和系统..."
sudo apt update && sudo apt full-upgrade -y

### 2. 清理 APT 缓存 ###
echo "🧹 清理 APT 缓存..."
sudo apt-get clean
sudo apt-get autoclean

### 3. 自动移除未使用依赖和配置 ###
echo "🧼 自动删除无用软件包及其配置文件..."
sudo apt-get autoremove --purge -y

### 4. 删除残留配置文件 ###
echo "🧩 清除残留未安装包的配置文件..."
dpkg -l | grep '^rc' | awk '{print $2}' | xargs -r sudo dpkg --purge

### 5. 清理 Snap 禁用的旧版本 ###
echo "📦 清理已禁用的 Snap 旧版本..."
LANG=en_US.UTF-8
snap list --all | awk '/disabled/{print $1, $3}' |
  while read snapname revision; do
    echo "🗑️ 删除 $snapname 的旧版本 revision $revision ..."
    sudo snap remove "$snapname" --revision="$revision"
  done

### 6. 清理用户缓存 ###
echo "🗃️ 清理当前用户缓存目录 ~/.cache ..."
rm -rf ~/.cache/*

### 7. 清理系统临时文件 ###
echo "🧊 清理 /tmp 和 /var/tmp 临时文件..."
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

### 8. 清理 journal 日志 ###
echo "🧾 清理 systemd 日志(保留最近7天)..."
sudo journalctl --vacuum-time=7d

### 9. 清理已安装语言包中未使用的语言 ###
echo "🌐 清理未使用的语言包..."
sudo apt-get install -y localepurge
sudo localepurge

### 10. 可选:清理孤立内核(需谨慎)###
echo "🧬 检查是否有旧内核可清理(可选操作)..."
sudo apt --purge autoremove

echo "✅ Ubuntu 系统垃圾清理完成!建议重启以释放内核资源(如有内核更新)。"

🔒 安全说明

  • 日志仅删除 7 天以上的(可调)
  • Snap 清理只删除“已禁用”的旧版本
  • 内核清理不会移除当前使用的版本
  • 使用 localepurge 清除不需要的语言包(需手动选择保留语言)

🚀 使用方式

1、保存脚本

nano clean_ubuntu.sh

2、赋予执行权限

chmod +x clean_ubuntu.sh

3、执行脚本

./clean_ubuntu.sh

⏭️ 一键清理-增强版本

你也可以告诉我是否希望清理以下内容:

  • 清理 .thumbnails、浏览器缓存

  • 删除孤立 .desktop 文件

  • 清理 docker、flatpak 缓存

  • 定期计划任务(自动每月清理)

🚀 增强版清理脚本:clean_ubuntu_enhanced.sh

#!/bin/bash

set -euo pipefail

echo "🧼 [1] 更新系统..."
sudo apt update && sudo apt full-upgrade -y

echo "🧹 [2] 清理 APT 缓存..."
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove --purge -y

echo "🧩 [3] 删除残留配置..."
dpkg -l | grep '^rc' | awk '{print $2}' | xargs -r sudo dpkg --purge

echo "📦 [4] 清理 Snap 被禁用版本..."
LANG=en_US.UTF-8
snap list --all | awk '/disabled/{print $1, $3}' |
  while read snapname revision; do
    echo "🗑️ 删除 $snapname 的旧版本 revision $revision ..."
    sudo snap remove "$snapname" --revision="$revision"
  done

echo "📁 [5] 清理用户缓存 ~/.cache 和缩略图..."
rm -rf ~/.cache/*
rm -rf ~/.thumbnails/*

echo "🌍 [6] 清理浏览器缓存..."
rm -rf ~/.mozilla/firefox/*.default*/cache2/*
rm -rf ~/.cache/mozilla/*
rm -rf ~/.cache/google-chrome/*
rm -rf ~/.cache/chromium/*

echo "🧊 [7] 清理系统临时目录..."
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

echo "🧾 [8] 清理日志(保留 7 天)..."
sudo journalctl --vacuum-time=7d

echo "📚 [9] 清理未使用的语言包..."
sudo apt-get install -y localepurge
sudo localepurge

echo "📦 [10] 清理 Flatpak 缓存(如使用)..."
flatpak uninstall --unused -y || true
sudo rm -rf /var/tmp/flatpak-cache*
sudo rm -rf ~/.var/app/*/cache/*

echo "🐳 [11] 清理 Docker(镜像、容器、网络、挂载卷)..."
docker system prune -af --volumes || echo "⚠️ Docker 未安装或未运行,跳过"

echo "✅ 清理完成!系统状态良好。"

🕑 添加计划任务(每月自动清理)

你可以让这个脚本每月自动运行一次。以下命令将设置每月 1 号执行该脚本。

第一步:保存脚本

保存路径建议为 /usr/local/bin/clean_ubuntu_enhanced.sh

sudo mv clean_ubuntu_enhanced.sh /usr/local/bin/
sudo chmod +x /usr/local/bin/clean_ubuntu_enhanced.sh

第二步:添加 cron 定时任务

(crontab -l 2>/dev/null; echo "0 2 1 * * /usr/local/bin/clean_ubuntu_enhanced.sh >> ~/clean_log.txt 2>&1") | crontab -

每月 1 号凌晨 2 点执行,并把日志写入 ~/clean_log.txt

📌 说明

  • 请确保你不在使用重要的 Snap / Docker / Flatpak 容器时再运行脚本
  • docker system prune -af –volumes 会清除未使用的镜像、容器、网络和挂载卷,慎用
  • 对 Flatpak 无害,无用数据会被移除

✅CentOS7 清理系统垃圾

适用于 CentOS 7/8/Stream、RHEL 等使用 yumdnf 的系统。

保存为:clean_centos_enhanced.sh

#!/bin/bash
set -euo pipefail

echo "🧼 [1] 更新系统..."
if command -v dnf >/dev/null 2>&1; then
    sudo dnf upgrade --refresh -y
else
    sudo yum update -y
fi

echo "🧹 [2] 清理软件缓存..."
sudo dnf clean all || sudo yum clean all
sudo rm -rf /var/cache/{yum,dnf}/*

echo "🧩 [3] 自动移除未使用的软件包..."
sudo dnf autoremove -y || true

echo "📁 [4] 清理用户缓存和缩略图..."
rm -rf ~/.cache/*
rm -rf ~/.thumbnails/*

echo "🌍 [5] 清理浏览器缓存..."
rm -rf ~/.mozilla/firefox/*.default*/cache2/*
rm -rf ~/.cache/mozilla/*
rm -rf ~/.cache/google-chrome/*
rm -rf ~/.cache/chromium/*

echo "🧊 [6] 清理临时目录..."
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

echo "🧾 [7] 清理日志文件(保留最近7天)..."
sudo journalctl --vacuum-time=7d

echo "🐳 [8] 清理 Docker 资源..."
docker system prune -af --volumes || echo "⚠️ Docker 未安装或未运行,跳过"

echo "✅ CentOS 系统清理完成!"

✅ Debian 增强版清理脚本

适用于纯 Debian(非 Ubuntu)系统,比如 Debian 10/11/12。

保存为:clean_debian_enhanced.sh

#!/bin/bash
set -euo pipefail

echo "🧼 [1] 更新系统..."
sudo apt update && sudo apt full-upgrade -y

echo "🧹 [2] 清理软件包缓存..."
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove --purge -y

echo "🧩 [3] 清除残留配置文件..."
dpkg -l | grep '^rc' | awk '{print $2}' | xargs -r sudo dpkg --purge

echo "📁 [4] 清理用户缓存和缩略图..."
rm -rf ~/.cache/*
rm -rf ~/.thumbnails/*

echo "🌍 [5] 清理浏览器缓存..."
rm -rf ~/.mozilla/firefox/*.default*/cache2/*
rm -rf ~/.cache/mozilla/*
rm -rf ~/.cache/google-chrome/*
rm -rf ~/.cache/chromium/*

echo "🧊 [6] 清理临时目录..."
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

echo "🧾 [7] 清理日志文件(保留最近7天)..."
sudo journalctl --vacuum-time=7d

echo "📚 [8] 清理未使用语言(如已启用 localepurge)..."
if command -v localepurge >/dev/null 2>&1; then
    sudo localepurge
else
    echo "localepurge 未安装,跳过语言清理。"
fi

echo "🐳 [9] 清理 Docker 资源..."
docker system prune -af --volumes || echo "⚠️ Docker 未安装或未运行,跳过"

echo "✅ Debian 系统清理完成!"

🕑 自动化建议(适用于两者)

添加每月自动执行计划任务:

(crontab -l 2>/dev/null; echo "0 3 1 * * /path/to/script.sh >> ~/clean_log.txt 2>&1") | crontab -

(将 /path/to/script.sh 替换为脚本路径)

📌 说明

  • CentOS 使用 yum/dnf,Debian 使用 apt 系统
  • 日志清理为 systemd 系统有效(journalctl)
  • Docker 清理全系统未使用资源(可选,慎用)
  • 建议根据实际用途在服务器上保留必要缓存
© 版权声明
底线,心之尺,言之界
心有所喜,可点赞、可分享、可收藏
点赞12赞赏 分享
寄言于此 抢沙发
头像
愿您每一次发声,皆为生活添色,予人共鸣、沉思与欢喜
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容