如何从 Ubuntu 18.04 LTS 升级到 20.04 LTS
by Canonical on 22 August 2023
Ubuntu 20.04 LTS(Focal Fossa)于 4 月 23 日正式发布。这是最新的 Ubuntu 长期支持(LTS)版本,安全补丁和更新一直持续到 2025 年。如果您目前使用的是旧版 Ubuntu,您可能会对升级感兴趣。
在本教程中,我们将演示如何安全地从 Ubuntu 18.04 LTS(Bionic Beaver)即先前的 LTS 版本升级到当前版本。我们将介绍实现升级的几种方法,还会提供一些可以帮助您进一步自定义升级过程的高级提示和技巧。
升级之前…
在进行升级之前,您需要考虑以下几点:
- 升级过程可以使用 Ubuntu 更新管理器或在命令行中完成。Ubuntu 20.04 LTS 的第一小数点版本(即 20.04.1)一经发布,Ubuntu 更新管理器将开始显示升级到 20.04 的提示。显示提示的时间是在正式发布后的三个月左右。
启用此功能后,您将看到如下提示:
您现在仍然可以进行升级。不过,目前的升级过程会使用到命令行,因此需要具备一定程度的技术知识和信心。如果您对下面所列任何步骤或方法不确定,您可能需要等待小数点版本。
- 如您确实想要继续升级,可以从命令行启动图形向导,或者使用命令行完成整个过程。在本教程中,我们将演示这两种方案。
- 请务必对您的数据进行备份。升级通常是安全的,但总是有可能出现问题。将您的个人文件安全复制到备份位置,这一点至关重要,以便您在出现任何问题或更多困难时能够恢复它们。备份方法有若干种:
- Ubuntu 有自己的备份工具,您可以将其打开。
- 您也可以手动将重要文件复制到不同的设备(第二个硬盘、USB 驱动器、网络上的另一台计算机等)。您可以手动复制文件,也可以使用数据备份/复制工具。简单友好的此类工具包括 Timeshift 和 Grsync。在命令行中,可以使用命令 tar 或 rsync。
- 您还可以使用 CloneZilla 等专用系统镜像软件创建 Ubuntu 安装程序的完整系统镜像。
- 如您想要仔细检查您的硬件是否运行良好,您可以下载 Ubuntu 20.04 LTS 的 ISO 镜像,使用 Ubootnetin 等实时媒体创建工具将其复制到 USB 驱动器上,然后在 Ubuntu 20.04 LTS 实时会话中启动计算机。
- 请确保您的计算机有足够的可用磁盘空间。默认情况下,为了获得最佳体验,应当有 25 GB 的可用空间用于安装新版 Ubuntu。版本升级时,您尚且可以使用更少的可用磁盘空间,但升级过程可能需要更长的时间。
- 升级过程可能需要一些时间。期间不可以中断或取消升级进程,因为这样可能致使系统处于不稳定的状态。如果使用的是电池供电的设备,比如笔记本电脑,建议使用充电器。
使用图形向导升级到 20.04 LTS
如前面所述,Ubuntu 更新管理器将在正式发布后大约三个月开始向用户显示升级通知。不过,也可以不用等待就能升级 Ubuntu 18.04 LTS。
这需要在终端窗口中运行命令,然后由命令启动图形向导。
如您不习惯使用这个方法,最好继续运行 Ubuntu 18.04 LTS,直到通过更新管理器提供可用的升级。如果采用以下操作顺序,则需要熟悉命令行的使用,因此这种方法最适合开发人员、管理员或更娴熟的技术人员。
启动命令是 do-release-upgrade,附带特定选项一起执行。为了更好地了解接下来要做什么,您可以通过运行带 -h 标志的命令来检查 do-release-update 工具中有哪些可用选项:
sudo do-release-upgrade -h
Usage: do-release-upgrade [options]
Options:
-h, --help show this help message and exit
-V, --version Show version and exit
-d, --devel-release
If using the latest supported release, upgrade to
the development release
--data-dir=DATA_DIR
Directory that contains the data files
-p, --proposed
Try upgrading to the latest release using the
upgrader from $distro-proposed
-m MODE, --mode=MODE
Run in a special upgrade mode. Currently
'desktop' for regular upgrades of a desktop
system and 'server' for server systems are
supported.
-f FRONTEND, --frontend=FRONTEND
Run the specified frontend
-c, --check-dist-upgrade-only
Check only if a new distribution release is
available and report the result via the exit code
--allow-third-party Try the upgrade with third party mirrors and
repositories enabled instead of commenting them
out.
-q, --quiet
重要的选项具体如下:
- d – 该选项允许我们升级到 20.04;通常,这个选项是早期测试人员在正式发布之前试用 Ubuntu 开发版本时所使用的。我们将使用它来启动升级。虽然标签上写着“开发”,但不要担心,我们实际上会升级到 Ubuntu 20.04 LTS 的稳定官方版。
- f – 该选项将启动图形向导。没有该选项的话,do-release-upgrade 工具将在命令行中运行。过程在其他方面是相同的。
另一个有用的选项是 –allow-third-party。我们将在“高级选项和第三方软件”部分对此进行详细介绍。如果您的 Ubuntu 安装程序包括来自标准 Ubuntu 资源库存档以外来源的应用程序,您可能需要纳入该选项,以保留和转移第三方应用程序。
因此,要想使用 GUI 工具启动到 Ubuntu 20.04 LTS 的升级,我们需要的完整命令如下:
sudo do-release-upgrade -d -f DistUpgradeViewGtk3
这将使用基于 Gtk3 的 GUI 启动升级进程。
向导会提出几个问题,并且分多个步骤运行:
您在升级过程中可能会被问及一两个问题,特别是您是否要保留某些系统文件的现有设置(如时区配置)。如果您不确定,也可放心地选择默认答案后继续。
不久之后,升级就会完成,到时候您应该可以看到自己已登录到 20.04 桌面!
高级选项和第三方软件
对于大多数用户来说,上述流程就已足够。但是,您也可以进一步自定义流程,这对使用通过标准 Ubuntu 存档以外软件通道安装的第三方软件的人群来说特别有用。例如,如已手动安装了 Google Chrome、Skype 或 VirtualBox 软件,这些应用程序的更新将通过单独的资源库提供。
默认情况下,非 Ubuntu 软件通道将在升级期间被禁用。升级完成后需要手动启用它们。您也可以指示升级工具允许这些附加软件包。
如前文所述,这可以通过使用带有 –allow-third-party 标志的 do-release-upgrade 命令来完成。
备选升级选项
您可以通过其他若干方法启动图形向导升级进程。您可以在命令行中运行 update-manager -c 命令来启动升级。与 do-release-update 工具一样,您可以运行带有可选 -d 标志的上述命令,以在可以获取 20.04.1 之前获得“开发”版本。
sudo update-manager -c
sudo update-manager -c -d
您也可以在命令行中运行 /usr/lib/ubuntu-release-upgrader/check-new-release-gtk 命令。
sudo /usr/lib/ubuntu-release-upgrader/check-new-release-gtk
一般来说,不管使用和运行哪个工具,您都可以控制哪些 Ubuntu 版本升级可用。这可以通过编辑以下配置文件来实现:
/etc/update-manager/release-upgrades
在这里,您可以检查 Prompt=XXXX命令行,其中:
- never – 不提供升级。
- normal – 将提供立即接替当前运行版本的受支持版本。
- lts – 将提供 LTS 版本。
在命令行中升级到 20.04 LTS
在命令行中升级的过程与我们已经完成的流程非常相似。唯一的区别是不会启动 GUI,您将在终端窗口中被问及以是/否回答的问题。
sudo do-release-upgrade -d
完成后,您将登录到 20.04 桌面:
总结
在本指南中,我们概述了从 Ubuntu 18.04 LTS 升级到 20.04 LTS 的若干种方法。其中包括可视化工具,即图形向导以及命令行实用程序,后者通常最适合更娴熟的用户。Ubuntu 更新管理器将在大约三个月后开始提示用户,但如果您想要现在升级系统,我们也介绍了您需要采取的步骤。
希望本教程对您有所帮助,同时也希望您畅享全新的桌面体验。
订阅博客文章
查看更多内容
Canonical 为任何 open source Docker 镜像提供 12 年长期支持
“Everything LTS 计划”— Canonical 将根据客户的规格要求构建 distroless Docker 镜像,其中包括 Ubuntu 中未打包的上游组件,并在 24 小时内修复关键的 CVE 漏洞,在 RHEL、Ubuntu、VMware 或公共云 K8s 上畅享长达 12 年以上的支持。 Canonical 将其 LTS 产品扩展到 Ubuntu 的 “deb” 包以外,并推出了一项新的 distroless Docker 镜像设计与构建服务,该项服务为任何开源应用程序或依赖项均提供 12 年的安全维护,无论该软件是否是 Ubuntu 中已打包的软件。 「Everything LTS 计划意味着 CVE 维护将覆盖您的整个开源依赖项树,包括 Ubun […]
Canonical x Lenovo: 在边缘运行 AI workloads
携手 Canonical 和 Lenovo,在边缘运行 AI 工作负载 从制造业中的预测性维护,到医疗保健行业中的虚拟助手,再到最偏远地区的电信路由器优化,AI 正在各种边缘环境中掀起新浪潮,带来新机遇。但为了支持这些几乎随处运行的 AI 工作负载,公司需要具备快速、安全且高度可扩展的边缘基础架构。 开源工具 —— 例如用于轻量级 Kubernetes 编排的 MicroK8s 和用于 ML 机器学习工作流的 Charmed Kubeflow —— 可以为边缘 AI 部署提供更高的灵活性和安全性。如果配合加速计算堆栈使用,这些解决方案可以帮助专业人员更快地交付项目,降低运营成本,以及确保更可预测的结果。 今天这篇博客探讨为什么企业正逐渐在边缘 AI 领域转向开放式基础架构 […]
《网络弹性法案》对开源意味着什么
《网络弹性法案》(Cyber Resilience Act,CRA)即将生效。这项影响广泛的法规将引入针对开发商、零售商和设备制造商的新要求和制衡措施;而许多亟待满足的需求在开源社区并没有得到很好的解决。 在本篇博客中,笔者将探讨 CRA 对开源的影响,分享一些专家的见解,说明该法案在哪些方面有着积极的影响以及在哪些方面存在灰色地带,并向大家介绍在使用或创建开源的情况下应该为法案的推行做好哪些准备。 为何制定《网络弹性法案》? 首先大致介绍一下,CRA 是欧盟即将出台的一项法规,旨在通过对欧盟 IT 行业实施更严格的网络安全、文档和漏洞报告要求,提高设备安全性。这项法规将适用于硬件、设备、软件、应用程序和其他“带有数字连接元素的产品”的开发商、分销商、制造商和零售商。 […]