前言

本文记录了从 Debian 9 Stretch 到 Debian 10 Buster 的系统升级过程。

Debian官方中文教程:https://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.zh-cn.html

开始

以下所有操作使用root用户完成

备份

如果你的机器不是新开的,上面跑了一些服务,那么强烈建议备份好所有的软件配置和数据库,因为升级以后,大部分软件都会更新版本,一部分软件因为兼容性甚至是无法滚回的。

以下内容你可以根据自己的需求来备份:

  1. 服务器上应用的源代码,比如 WordPress
  2. 数据库,比如 MySQL, SQLite3, Postgres
  3. 配置文件,比如 Nginx, Apache, DNS, PHP
  4. 邮件和账号
  5. 系统添加的用户和 SSH Key

更新已有软件

apt update //更新软件索引
apt full-upgrade //更新本地所有软件

切换buster源

4.2.2. 非官方源

如果您的系统上有任何非 Debian 软件包,您应当注意在升级过程中可能会因为依赖关系冲突而移除这些软件包。 如果这些软件包是通过在 APT source-list 文件中添加额外的软件源进行安装的,您应检查该软件源是否还提供了针对 buster 编译的软件包,并在更改 Debian 软件源的同时相应地更改这些软件源。

sed -i 's/stretch/buster/g' /etc/apt/sources.list //更新官方源
sed -i 's/stretch/buster/g' /etc/apt/sources.list.d/*.list //更新额外软件源

/etc/apt/sources.list更新后如下:

deb http://ftp.us.debian.org/debian buster main
deb-src http://ftp.us.debian.org/debian buster main

deb http://security.debian.org/debian-security buster/updates main
deb-src http://security.debian.org/debian-security buster/updates main

deb http://ftp.us.debian.org/debian buster-updates main
deb-src http://ftp.us.debian.org/debian buster-updates main

升级系统

apt update //更新索引
apt upgrade //更新本地软件
apt dist-upgrade //升级系统

升级过程中会让你选择是否保留旧的配置文件,这个就取决于你的选择,选择 Y 使用更新配置,选择 N 保留已有配置,需要查看差异的话可以选 D 进行比较。如果出现一长串软件版本更新、CA 证书更新的文本,可以按 q 跳过查看。

结束

更新完毕,重启一下 Debian

reboot

重启进入服务器后,验证系统信息如下:

lsb_release -a
//结果如下
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

本次升级完成。

再次提醒,升级系统是个大工程,如在生产环境下进行请务必备份数据!备份数据!备份数据!如果没备份就直接升级,那么后果自负!

-EOF-