ارتقا بین نسخههای Debian معمولاً بیدردسر است، به شرط اینکه مرحلهبهمرحله و با آمادگی انجام شود. روی سرور حیاتی، ابتدا روی یک کپی (snapshot یا ماشین آزمایشی) تمرین کنید.
۱. آمادگی
sudo apt update && sudo apt full-upgrade -y # اول Debian 12 کاملاً بهروز شود
sudo reboot
df -h / # حداقل ۵ گیگابایت فضای خالی
apt list '~o' 2>/dev/null # بستههایی که دیگر در هیچ مخزنی نیستند
apt-mark showhold # بستههای نگهداشتهشده- از سرور snapshot یا بکاپ کامل بگیرید.
- از پایگاههای داده dump جداگانه بگیرید.
- اگر از راه دور وصل هستید، کار را داخل
tmuxانجام دهید.
۲. تغییر مخازن
sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bookworm.bak
sudo sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
grep -rl bookworm /etc/apt/sources.list.d/ 2>/dev/nullمخازن شخص ثالث (مثل Docker یا PostgreSQL) را جداگانه بررسی کنید. اگر نسخهی trixie را ندارند، موقتاً غیرفعالشان کنید.
۳. ارتقا در دو مرحله
sudo apt update
sudo apt upgrade --without-new-pkgs -y
sudo apt full-upgrade -yهنگام پرسش دربارهی فایلهای پیکربندی، اگر فایل را خودتان ویرایش کردهاید، گزینهی N (نگه داشتن نسخهی فعلی) را بزنید و بعداً تفاوتها را با فایل .dpkg-dist مقایسه کنید.
۴. ریاستارت و بررسی
sudo reboot
cat /etc/debian_version
uname -r
systemctl --failed
sudo journalctl -p err -b۵. پاکسازی و قالب جدید مخازن
sudo apt autoremove --purge -y
sudo apt modernize-sources # تبدیل sources.list به قالب deb822۶. پس از ارتقا
- فایلهای
.dpkg-distو.dpkg-oldرا در/etcبررسی کنید:sudo find /etc -name '*.dpkg-*' - سرویسهای اصلی (وب، پایگاه داده، بکاپ) را یکییکی آزمایش کنید.
- مخازن شخص ثالثی که غیرفعال کرده بودید را با نسخهی trixie برگردانید.