引言

随着 Ubuntu 18.04 LTS 版本的官方支持期满,是时候将实验室的几台服务器迁移到新的 LTS 版本了。Ubuntu 的长期支持(LTS)版本为提供了五年的更新支持。现在18.04 版本的支持画上句号了。本文记录了升级过程中的步骤,避免类似问题踩坑。

升级指南

在开始升级前,请确保已备份所有重要数据,以防升级过程中发生数据丢失。

更新现有软件包

首先,将系统至最新状态,确保所有软件包都是最新的。

1
sudo apt update && sudo apt upgrade -y

如果你在升级过程中遇到网络速度慢的问题,可以尝试将 /etc/apt/sources.list 文件中的软件源地址更换为国内的源,以提高下载速度。

安装 update-manager-core

确保 update-manager-core 包已经安装。这是进行版本升级所必需的。

1
sudo apt install update-manager-core

升级前的准备

编辑 /etc/update-manager/release-upgrades 文件,确认文件中的 Prompt 选项设置为 lts。这样设置后,系统会提示你升级到最新的 LTS 版本,通常保持默认即可。

1
2
3
4
5
6
7
8
[DEFAULT]
# 升级提示模式,有效选项包括:
#
# never - 从不检查或允许升级到新版。
# normal - 检查是否有新版可用。如果找到多个新版,将尝试升级到
# 紧接当前运行版本之后的支持版本。
# lts - 检查是否有新的 LTS 版本可用。升级器将尝试升级到
# 在当前运行版本之后可用的第一个 LTS 版本。

开始升级

执行以下命令启动升级过程。建议在 tmux 会话中运行,以防连接中断。

1
sudo do-release-upgrade

提示操作

在升级过程中,系统会提示你做出一些选择,比如是否覆盖某些配置文件。根据屏幕上的指示操作。

升级过程中的屏幕提示

重启服务器

升级完成后,执行 lsb_release -a 命令,你会看到系统版本已经更新。此时,通常需要重启服务器,以确保所有更新的软件包完全生效。

安全起见,升级后可以更新和卸载一些不再需要的软件包,然后再选择重启:

1
2
3
4
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
sudo reboot

遇到的问题及解决方案

在升级其中一台服务器时,遇到了服务器自动关机的问题,通过查看系统日志(sudo less /var/log/syslog),排查发现和桌面系统设置有关。通过删除和禁用桌面系统解决:

1
2
3
sudo systemctl disable lightdm
sudo apt-get purge 'gnome*'
sudo -u gdm dbus-launch gsettings list-recursively org.gnome.settings-daemon.plugins.power