debian

debian缓存清理技巧

小樊
38
2025-11-21 01:30:48
栏目: 智能运维

Debian缓存清理技巧

一 核心清理清单

二 常用命令速查

目标 命令示例 作用说明
APT 全量清理 sudo apt-get clean 清空 /var/cache/apt/archives 中所有已下载包
APT 过期索引 sudo apt-get autoclean 仅删除不可再下载的旧版本索引与包
移除无用依赖 sudo apt-get autoremove --purge 删除不再被依赖的包及其配置
清理部分下载 sudo rm -rf /var/cache/apt/archives/partial/* 删除下载中断的临时包
清理系统日志 sudo journalctl --vacuum-time=2weeks 仅保留最近 2 周 的日志
清理临时文件 sudo rm -rf /tmp/* 清理临时目录(系统空闲时执行)
清理旧内核 先 dpkg -l grep linux-image 查看旧内核;再用 sudo apt-get remove --purge linux-image-<版本> 删除
清理本地化数据 sudo apt-get install localepurge && sudo localepurge 移除未使用语言的 locale 文件
清理孤立包 sudo apt-get install deborphan && sudo deborphan xargs sudo apt-get purge -y
图形化清理 sudo apt-get install bleachbit && sudo bleachbit 图形界面选择清理项(谨慎勾选)
磁盘占用分析 sudo apt-get install ncdu && sudo ncdu / 交互式查看目录占用,定位大文件/目录
以上命令覆盖了 APT、日志、临时文件、旧内核与孤立包等常见清理点,适合作为日常维护与紧急释放空间的快速操作集。

三 安全操作要点

四 一键清理脚本

#!/usr/bin/env bash
set -e

echo "==> 更新包索引"
sudo apt-get update

echo "==> 清理 APT 缓存与过期索引"
sudo apt-get clean
sudo apt-get autoclean

echo "==> 移除无用依赖(含配置)"
sudo apt-get autoremove --purge -y

echo "==> 清理部分下载与临时文件"
sudo rm -rf /var/cache/apt/archives/partial/*
sudo rm -rf /tmp/*

echo "==> 限制系统日志保留(最近 2 周)"
sudo journalctl --vacuum-time=2weeks

echo "==> 清理旧内核(保留当前运行内核)"
current_kernel=$(uname -r)
echo "当前运行内核: $current_kernel"
for img in $(dpkg -l | awk '/^ii/ && /linux-image-[0-9]/ {print $2}' | grep -v "$current_kernel"); do
  echo "删除旧内核: $img"
  sudo apt-get remove --purge -y "$img"
done

echo "==> 清理孤立包(如已安装 deborphan)"
if command -v deborphan >/dev/null 2>&1; then
  sudo deborphan | xargs -r sudo apt-get purge -y
fi

echo "==> 分析磁盘占用(ncdu)"
if command -v ncdu >/dev/null 2>&1; then
  sudo ncdu /
else
  echo "提示:安装 ncdu 可交互式查看大文件/目录:sudo apt-get install ncdu"
fi

echo "==> 完成清理"

该脚本整合了常见的清理步骤,适合定期维护或在磁盘告警时快速释放空间。

0
看了该问题的人还看了