温馨提示×

debian缓存如何自动清理

小樊
33
2026-09-22 22:10:02
栏目: 智能运维

在 Debian 系统中,“缓存”通常指以下几类,不同缓存有不同的自动清理方式。下面按常见场景说明。


一、APT 软件包缓存(最常见)

APT 下载的 .deb 包会保存在:

/var/cache/apt/archives/

1️⃣ 手动清理(了解用)

sudo apt clean          # 删除所有已下载的 deb 包
sudo apt autoclean     # 只删除过期的包

2️⃣ 自动清理(推荐)

✅ 方法一:apt 自动清理(Debian 默认支持)

编辑配置文件:

sudo nano /etc/apt/apt.conf.d/99clean

加入:

APT::AutoClean "true";

或(更常用):

APT::Clean-Installed "false";

(安装后不立即清理,但 autoclean 会定期生效)

✅ 方法二:使用 systemd 定时任务(最干净)

创建 service:

sudo nano /etc/systemd/system/apt-autoclean.service

内容:

[Unit]
Description=APT autoclean

[Service]
Type=oneshot
ExecStart=/usr/bin/apt-get autoclean

创建 timer:

sudo nano /etc/systemd/system/apt-autoclean.timer

内容:

[Unit]
Description=Run apt autoclean weekly

[Timer]
OnCalendar=weekly
Persistent=true

[Install]
WantedBy=timers.target

启用:

sudo systemctl enable --now apt-autoclean.timer

二、systemd 日志缓存(journal)

日志位置:

/var/log/journal/

自动清理(推荐)

编辑:

sudo nano /etc/systemd/journald.conf

修改或添加:

SystemMaxUse=200M
MaxRetentionSec=2week

重启服务:

sudo systemctl restart systemd-journald

三、用户缓存(~/.cache)

用户级缓存,如浏览器、桌面环境。

自动清理方式

  • 登录/登出时清理(不推荐全清)
  • 使用 tmpfiles.d
sudo nano /etc/tmpfiles.d/user-cache.conf

示例(7天清理):

d /home/*/.cache 0700 - - 7d

四、/tmp 临时文件(系统级)

Debian 默认会自动清理 /tmp

  • 使用 systemd-tmpfiles
  • 配置在:
/usr/lib/tmpfiles.d/tmp.conf

默认:

d /tmp 1777 root root 10d

五、Docker 缓存(如已安装)

docker system prune -af

可加到 cron:

0 3 * * 0 docker system prune -af

✅ 推荐组合(普通服务器)

  • ✅ APT:apt autoclean + timer
  • ✅ 日志:journald.conf 限制大小
  • ✅ tmp:默认已自动

如果你能说明是 服务器 / 桌面 / 容器环境,我可以给你一套更精确的自动清理方案。

0