使用 do-release-upgrade 方法在生命周期结束后无法从迪斯科 19.04 升级到焦点 20.04

Kin*_*gWm 27 upgrade do-release-upgrade 19.04

目前,我无法从 Disco 19.04 更新到 Focal 20.04。我已经阅读了几个当前已关闭的问题,指的是一些非常古老的问题。我已经阅读了所有 8 年前的线程并遵循了这些说明。他们很有帮助,但没有解决我的问题。打字时,我已经阅读了所有向我提出的问题。请不要关闭我的线程并参考旧的线程,因为它们没有解决这个问题,这是新的(因为这些问题已经回答了 8 年,但它们没有解决我的问题)。

在排除故障并将“存档”替换为“旧版本”并从源列表中删除所有第三方软件包后,我能够“apt update”和“apt upgrade”并且系统是最新的。

我尝试过“完全升级”、“dist-upgrade”以及我能想到的所有其他方法。现在都说:

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

我已经使用我已经阅读的所有其他线程中的所有建议修复了我收到的所有错误消息。

当我运行“do-release-upgrade”时,我得到以下输出:

Checking for a new Ubuntu release 
Your Ubuntu release is not supported anymore. 
For upgrade information, please visit: http://www.ubuntu.com/releaseendoflife

Get:1 Upgrade tool signature [1,554 B]
Get:2 Upgrade tool [1,337 kB]
Fetched 1,338 kB in 0s (0 B/s)
authenticate 'focal.tar.gz' against 'focal.tar.gz.gpg' 
extracting 'focal.tar.gz'
Reading cache
Checking package manager
Can not upgrade 
An upgrade from 'disco' to 'focal' is not supported with this tool.
Run Code Online (Sandbox Code Playgroud)

当我使用软件升级图形工具时,我得到以下信息:

Can not upgrade: An upgrade from 'disco' to 'focal' is not supported with this tool.
Run Code Online (Sandbox Code Playgroud)

这台计算机有很多用户,加载了很多软件,我无法进行全新安装。首先,在保存所有用户、文件和程序的同时,我不知道如何做到这一点;其次,我预见到计算机炸毁而一切都消失的噩梦。

如果我能从19.04升级到19.10,我一直想不通。我很确定它无法完成,因为 19.04 不再受支持。

万一重要,我的磁盘已加密。

请,请,请告诉我有一种方法可以从 19.04 升级到 20.04 而无需全新安装,从而保存我所有的用户、数据和程序!如果仅仅因为我错过了更新截止日期而无法升级,我会感到非常震惊。如果没有,我将被迫购买一台新电脑!

Pra*_*ngh 13

生命结束后面临同样的问题。升级到 20.04 的过程首先是升级到 19.10。以下是我如何将19.04升级到19.10

  1. 打开/etc/apt/sources.list
  2. 删除所有内容并将其替换为以下内容:(您可能需要保留备份以防万一)
deb http://old-releases.ubuntu.com/ubuntu eoan main 
deb http://old-releases.ubuntu.com/ubuntu eoan-updates main 
deb http://old-releases.ubuntu.com/ubuntu eoan-security main 
Run Code Online (Sandbox Code Playgroud)
  1. 最后,只需一一运行这些命令:
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
Run Code Online (Sandbox Code Playgroud)

基本上就是这样。Ubuntu 现在应该升级到 19.10 (Eoan)

现在从 Eoan 升级到 Focal 是一件容易的事 (20.04)

按照@xiaojueguan的建议,运行以下命令从Eoan升级到Focal:

do-release-upgrade
Run Code Online (Sandbox Code Playgroud)

注意:更新到 Eoan 后,您可能需要更新您的sources.list文件。你可以在这里找到它:

Eoan(Ubuntu 19.10):https://gist.github.com/malikalichsan/860b8134a74c65a394efe09711d0b95f

Focal(Ubuntu 20.04): https://gist.github.com/ishad0w/788555191c7037e249a439542c53e170


Sta*_*nko 11

这是唯一对我有帮助的指令:升级生命周期结束 (EOL) Ubuntu 版本 Ubuntu 19.04

引用上面的链接:

~# nano /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

我在尝试将 php 7.2 更新到 7.4 时遇到了困难,因为我的 Digital Ocean 服务器使用的是旧版本的 Ubuntu。

如果我尝试更新我的版本,我会得到以下信息

# do-release-upgrade
Checking for a new Ubuntu release
Your Ubuntu release is not supported anymore.
For upgrade information, please visit:
http://www.ubuntu.com/releaseendoflife

Please install all available updates for your release before upgrading.
Run Code Online (Sandbox Code Playgroud)

当尝试使用apt-get update更新我的软件包时,我会收到这些类型的错误。

Err:5 http://mirrors.digitalocean.com/ubuntu disco Release
  404  Not Found [IP: 172.67.168.253 80

E: The repository 'http://mirrors.digitalocean.com/ubuntu disco Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
Run Code Online (Sandbox Code Playgroud)

发生这些是因为我的 Ubuntu 版本不仅已过时,而且在其生命周期结束时,因此将 Ubuntu 更新为更新版本。将需要我更新我的存储库。

Digital Ocean 使用自己的镜像作为存储库,因此在确定使用哪些镜像方面需要做更多的工作。

我使用的是哪个版本的 Ubuntu?

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 19.04
Release:        19.04
Codename:       disco
Run Code Online (Sandbox Code Playgroud)

正在使用哪些存储库?

~# nano /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

Digital Ocean Ubuntu 19.04 上的示例存储库

deb http://mirrors.digitalocean.com/ubuntu/ disco main restricted
Run Code Online (Sandbox Code Playgroud)

让我们首先更新我们当前的 Ubuntu 版本

为了让服务器更新文件,我们必须编辑 /etc/apt/sources.list工作存储库位置。

为了达到这个目标,在这个 Digital Ocean 服务器上,将它们用于存储库的 URL 更新为您将拥有更新所需文件的 URL

我们想替换这个网址

mirrors.digitalocean.com
Run Code Online (Sandbox Code Playgroud)

old-releases.ubuntu.com
Run Code Online (Sandbox Code Playgroud)

这个命令会起作用

sudo sed -i -e 's/mirrors.digitalocean.com/old-releases.ubuntu.com/g'
Run Code Online (Sandbox Code Playgroud)

/etc/apt/sources.list

现在

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

将工作!

我们继续吧

sudo apt-get upgrade -y
sudo apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)

尝试在命令行上升级 Ubuntu。

我们仍然无法通过do-release-upgrade 升级

# do-release-upgrade

Checking package manager

Can not upgrade

An upgrade from 'disco' to 'focal' is not supported with this tool.
Run Code Online (Sandbox Code Playgroud)

弗莱克!

所以现在我拥有最新版本的 Ubuntu,但我无法使用do-release-upgrade升级到下一个版本

您可以尝试手动升级。

首先去https://changelogs.ubuntu.com/meta-release并向下滚动到您要升级到的版本。

例如,如果你想升级到 Ubuntu 19.10 Eoan 滚动到你找到 UpgradeTool 的 URL

UpgradeTool: http://old-releases.ubuntu.com/ubuntu/dists/eoan-updates/main/dist-upgrader-all/current/eoan.tar.gz
Run Code Online (Sandbox Code Playgroud)

现在将其拉到您服务器上的目录中

wget http://old-releases.ubuntu.com/ubuntu/dists/eoan-updates/main/dist-upgrader-all/current/eoan.tar.gz
mkdir eoan_upgrade
tar -xvzf  eoan.tar.gz -C eoan_upgrade

cd eoan_upgrade
Run Code Online (Sandbox Code Playgroud)

运行升级脚本

sudo ./eoan
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
Run Code Online (Sandbox Code Playgroud)