如何将 Azure 上的 Ubuntu 19.10 服务器升级到 20.04

导语

Ubuntu 20.04 LTS 已经正式推出了。作为一名软粉,看到新版 鲍叔毒瘤 ,我当然是 激动万分, 抱着批判的态度, 第一时间 很不情愿的更新了我的服务器。

4月23日发布的 Ubuntu 20.04 是个 LTS 版。其 Linux 内核版本升级到了5.4,支持更多新型号的 CPU、加入了 Secure Boot、更省电,并对 GCP, Azure, AWS 等云平台有所优化。

下载地址:https://ubuntu.com/download

Azure现状

Microsoft Store 几天前就提前上架了 WSL2 的 Ubuntu 20.04 LTS,Azure 国际版也毫不示弱,第一时间上架了 Ubuntu Server 20.04 LTS (啥时候Windows能有这样的待遇就好了) 。这波镜像同样分为2个 Generation,第二代支持大于2TB的系统盘、SGX、vPMEM等技术。

了解 Gen2 的特性可以参考:https://docs.microsoft.com/en-us/azure/virtual-machines/windows/generation-2

如果你想新创建 Ubuntu 20.04 的服务器,那么直接用这两个镜像就可以。 而如果你不幸用了 Windows Server,Azure 的镜像更新速度就…… 

准备工作

首先,需要确保你的系统已经更新了最新的包,不然更新时候会被阻断。依次执行命令:

sudo apt update

sudo apt upgrade

sudo apt dist-upgrade

sudo apt autoremove

然后安装一个 Windows Update 组件,啊呸,Update Manager:

sudo apt install update-manager-core

Azure 上的 Ubuntu 19.10 镜像正常情况下应该已经安装过这个组件了。

接下来,检查配置文件:

sudo nano /etc/update-manager/release-upgrades

如果里面的 Prompt 不是 normal 的话,改成normal。

开始更新

理想情况下,只要输入这个命令就可以检查到 20.04 版本,并更新:

sudo do-release-upgrade

但情况可能不太理想:

这时候可以加上 -d 参数依法强制更新:

sudo do-release-upgrade -d

它会立即检测到 Ubuntu 20.04 版本,并警告是否要在SSH下更新,可能会爆,如果SSH爆了就回不来了。

但是 Ubuntu 又不像 Windows 10 那样每次更新都会爆,我们可以放心在 SSH 下更新。输入 y,继续。

我真的不是夸张,仅过去6个月内,Windows就:

而新闻就得放在一起看:

想当年,3年爆1次的微软用户嘲笑开源产品每天折腾每天爆,而现在微软用户可能1天爆3次……世事难料。

有点黑远了,回到 Ubuntu:

不用在意这个警告,按回车继续。

继续按 y。

看着吓人,但其实选Y也不会爆。

此处关于是否替换 sshd_config 的警告更吓人, 像极了吃错药的 Windows 10 ,我们选择 “keep the local version currently installed”

选择 y,删库跑路。

选择 y,放心重启服务器,坐和放宽。

服务器重启完成后,就能在登录欢迎界面到 20.04 的字样了!

你也可以使用命令来查看 Ubuntu 的版本:

lsb_release -a

在 Azure Portal 里也能看见 Ubuntu 的版本:

汪宇杰博客

.NET | Azure | 微软MVP

长按扫码关注我们