Debian 8 "jessie" 升级至 Debian 9 "stretch" 教程

Debian 8

Debian 9 Stretch 已经在 2017 年 6 月 17 号发布,而很多商家的步伐并未那么快,比如某千万云,所以我们可以选择自己升级

本教程会指导你如何在 Debian 8 Jessie 的机器上快速升级到 Debian 9 Stretch

以下安装步骤都在 root 用户下完成,请自行使用 su 命令切换到 root 用户

此教程仅适用于 KVM、Xen 等可以更换内核的虚拟环境或独立服务器,OpenVZ 等无法更换内核的环境是不能升级的

1、备份数据

如果你的机器不是新开的,上面跑了一些服务,那么强烈建议备份好数据,我们推荐你备份所有的软件配置和数据库,因为升级以后,大部分软件都会更新版本,一部分软件甚至是无法滚回的,比如 Mariadb 会升级到 10.1,如果你不备份,而你的数据库没法在新的系统上运行,那么损失就大了

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

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

当然,新开的机器的话,别废话,直接看下面的步骤

2、更新系统

首先检查你当前的系统版本

root@debian ~ # lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 8.8 (jessie)
Release:	8.8
Codename:	jessie

然后按照以下顺序更新系统

apt-get update
apt-get upgrade
apt-get dist-upgrade

建议重启一次

3、替换 sources.list 源文件

Debian 8 代号 Jessie ,我们需要替换 /etc/apt/sources.list 里的源为 Debian 9 的代号 StretchStable

备份一下原来的文件

cp -r /etc/apt/sources.list /etc/apt/sources.list.old

然后直接替换

sed -i 's/jessie/stretch/g' /etc/apt/sources.list

当然也可以替换为 stable ,但是我们并不建议这么做,因为未来 Debian 10 成为 stable 版的时候也会自动升级从而可能造成错误

注意的是,如果你的系统带有 /etc/apt/sources.list.d/*.list 文件,也就是某些软件会单独在这个目录下生成 .list 文件,那么也记得对应修改,修改前请先去官网查看是否有 Debian 9 Stretch 版本,没有的话升级就会失败

替换后,你的 /etc/apt/sources.list 文件就会像这个样子

deb http://deb.debian.org/debian/ stretch main
deb-src http://deb.debian.org/debian/ stretch main

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

deb http://deb.debian.org/debian/ stretch-updates main
deb-src http://deb.debian.org/debian/ stretch-updates main

4、更新系统

还是老步骤,建议一步一步来

apt-get update
apt-get upgrade

5、升级系统

更新完系统之后,就可以直接升级了

apt-get dist-upgrade

升级过程中会让你选择是否保留旧的配置文件,这个就取决于自行选择,如果出现一长串软件版本更新、CA 证书更新的文本,可以按 q 跳过查看

6、重启并验证系统

全部更新完毕,直接重启系统

reboot

如果不出意外,重启后进入服务器并验证系统

root@debian ~ # lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 9.0 (stretch)
Release:	9.0
Codename:	stretch

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

文章来源:

Author:Showfom
link:https://sb.sb/debian-8-upgrade-to-debian-9/