本文将详细介绍如何将Debian 12(bookworm)系统无损升级至Debian 13(trixie),涵盖升级前准备、软件源修改、执行升级及升级后清理等关键步骤。
升级前准备
备份关键数据
使用tar命令打包系统关键目录,避免升级失败导致数据丢失。
sudo tar czf /debian_backup.tar.gz \
–exclude=/debian_backup.tar.gz \
–exclude=/dev \
–exclude=/run \
–exclude=/mnt \
–exclude=/proc \
–exclude=/sys \
–exclude=/tmp \
–exclude=/media \
–exclude=/lost+found \
/
备份APT配置
保存当前软件源配置,便于恢复。
mkdir ~/apt_backup
cp /etc/apt/sources.list ~/apt_backup
cp -r /etc/apt/sources.list.d/ ~/apt_backup
更新现有软件包
确保所有软件包为最新版本。
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
清理残留包
移除不再需要的依赖包。
sudo apt –purge autoremove
sudo reboot
修改软件源配置
替换bookworm为trixie
将软件源从Debian 12(bookworm)切换到Debian 13(trixie)。
sudo sed -i ‘s/bookworm/trixie/g’ /etc/apt/sources.list
sudo sed -i ‘s/bookworm/trixie/g’ /etc/apt/sources.list.d/*
验证软件源
检查源配置,确保所有条目指向trixie而非bookworm。
grep “trixie” /etc/apt/sources.list /etc/apt/sources.list.d/*
执行升级
最小化升级
仅升级已安装包,避免新增包导致的冲突。
sudo apt upgrade –without-new-pkgs
完整升级
升级所有包并处理依赖。
sudo apt full-upgrade
遇到提示时,选择默认选项(如保留修改的配置文件)。
升级后清理
移除过时包
清理无用包,释放磁盘空间。
sudo apt –purge autoremove
更新软件源格式(可选)
迁移至deb822格式,提升配置可读性。
sudo mv /etc/apt/sources.list ~/apt_backup
sudo nano /etc/apt/sources.list.d/debian.sources
示例内容(使用CDN源):
Types: deb
URIs: https://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
故障排查
未满足依赖关系
修复依赖错误。
sudo apt –fix-broken install
文件冲突
强制移除冲突包。
sudo dpkg -r –force-depends <冲突包名>
sudo apt full-upgrade
配置文件冲突
升级时若提示配置文件冲突,根据需求选择保留旧文件或使用新文件。
