Debian backlog 自动化处理方案
一、先明确 backlog 类型
二、系统运维类 backlog 的自动化
三、缺陷与发布类 backlog 的自动化
四、落地脚本与编排示例
#!/usr/bin/env bash
set -Eeuo pipefail
export DEBIAN_FRONTEND=noninteractive
apt update
unattended-upgrades --dry-run || true
unattended-upgrades
apt --fix-broken install -y || true
apt full-upgrade -y
apt autoclean -y
apt clean -y
apt autoremove --purge -y
# 清理旧内核(示例:保留当前与上一个版本)
current="$(uname -r)"
keep_kernels=2
dpkg -l 'linux-image-[0-9]*' | awk '/^ii/ {print $2}' \
| grep -vE "(${current//-/\-}|linux-image-generic)" \
| sort -V | head -n -${keep_kernels} \
| xargs -r apt-get -y purge
# 清理 rc 状态包
apt-get purge -y $(dpkg -l | awk '/^rc/ {print $2}') || true
# 可选:清理孤立包
if command -v deborphan >/dev/null 2>&1; then
deborphan | xargs -r apt-get -y purge
fi
五、度量与持续优化