
我在這個問題上被困了一段時間。基本上,我有一台運行 20.04.6 的伺服器,我一直在嘗試將其升級到目前的 LTS。唯一的問題是從do-release-upgrade
apt 來源清單中刪除官方 Ubuntu 來源,然後拒絕繼續升級,因為它找不到其必要的軟體包。
/etc/apt/sources.list
這是我的文件的相關內容:
:~# cat /etc/apt/sources.list | grep -v ^$ | grep -v ^#
deb http://ftp.ubuntu.com/ubuntu focal main restricted
deb http://ftp.ubuntu.com/ubuntu focal-updates main restricted
deb http://ftp.ubuntu.com/ubuntu focal universe
deb http://ftp.ubuntu.com/ubuntu focal-updates universe
deb http://ftp.ubuntu.com/ubuntu focal multiverse
deb http://ftp.ubuntu.com/ubuntu focal-updates multiverse
deb http://ftp.ubuntu.com/ubuntu focal-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu focal-security main restricted
deb http://security.ubuntu.com/ubuntu focal-security universe
deb http://security.ubuntu.com/ubuntu focal-security multiverse
當我運行 時apt update
,我正確地得到了這個:
:~# apt update
Hit:1 http://ppa.launchpad.net/ondrej/apache2/ubuntu focal InRelease
Hit:2 http://ftp.ubuntu.com/ubuntu focal InRelease
Get:3 http://ftp.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:4 http://ftp.ubuntu.com/ubuntu focal-backports InRelease [108 kB]
Get:5 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Hit:6 https://esm.ubuntu.com/apps/ubuntu focal-apps-security InRelease
Hit:7 https://esm.ubuntu.com/apps/ubuntu focal-apps-updates InRelease
Hit:8 https://esm.ubuntu.com/infra/ubuntu focal-infra-security InRelease
Hit:9 https://esm.ubuntu.com/infra/ubuntu focal-infra-updates InRelease
Fetched 336 kB in 3s (104 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
我的資料夾中有一些額外的文件/etc/apt/sources.list.d
,特別是esm
儲存庫的文件。
現在,如果我運行do-release-upgrade
,我將看到以下內容:
Checking package manager
Reading package lists... Done
Building dependency tree
Reading state information... Done
Hit http://ftp.ubuntu.com/ubuntu focal InRelease
Hit http://ftp.ubuntu.com/ubuntu focal-updates InRelease
Get:1 http://ftp.ubuntu.com/ubuntu focal-backports InRelease [108 kB]
Hit http://ppa.launchpad.net/ondrej/apache2/ubuntu focal InRelease
Get:2 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Hit https://esm.ubuntu.com/apps/ubuntu focal-apps-security InRelease
Hit https://esm.ubuntu.com/apps/ubuntu focal-apps-updates InRelease
Hit https://esm.ubuntu.com/infra/ubuntu focal-infra-security InRelease
Hit https://esm.ubuntu.com/infra/ubuntu focal-infra-updates InRelease
Fetched 222 kB in 0s (0 B/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
Updating repository information
Third party sources disabled
Some third party entries in your sources.list were disabled. You can
re-enable them after the upgrade with the 'software-properties' tool
or your package manager.
To continue please press [ENTER]
如果我按 [ENTER]:
Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Get:2 https://esm.ubuntu.com/apps/ubuntu jammy-apps-security InRelease [7,553 B]
Get:3 https://esm.ubuntu.com/apps/ubuntu jammy-apps-updates InRelease [7,459 B]
Get:4 https://esm.ubuntu.com/infra/ubuntu jammy-infra-security InRelease [7,453 B]
Get:5 https://esm.ubuntu.com/infra/ubuntu jammy-infra-updates InRelease [7,452 B]
Get:6 http://security.ubuntu.com/ubuntu jammy-security/main i386 Packages [277 kB]
Get:7 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [631 kB]
Get:8 https://esm.ubuntu.com/apps/ubuntu jammy-apps-security/main amd64 Packages [41.5 kB]
Get:9 http://security.ubuntu.com/ubuntu jammy-security/main Translation-en [148 kB]
Get:10 http://security.ubuntu.com/ubuntu jammy-security/main amd64 c-n-f Metadata [11.0 kB]
Get:11 http://security.ubuntu.com/ubuntu jammy-security/restricted i386 Packages [29.7 kB]
Get:12 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [651 kB]
Get:13 http://security.ubuntu.com/ubuntu jammy-security/restricted Translation-en [104 kB]
Get:14 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 c-n-f Metadata [532 B]
Get:15 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [756 kB]
Get:16 https://esm.ubuntu.com/apps/ubuntu jammy-apps-security/main i386 Packages [32.7 kB]
Get:17 http://security.ubuntu.com/ubuntu jammy-security/universe i386 Packages [544 kB]
Get:18 http://security.ubuntu.com/ubuntu jammy-security/universe Translation-en [136 kB]
Get:19 https://esm.ubuntu.com/apps/ubuntu jammy-apps-updates/main amd64 Packages [479 B]
Get:20 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 c-n-f Metadata [15.9 kB]
Get:21 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [36.5 kB]
Get:22 http://security.ubuntu.com/ubuntu jammy-security/multiverse i386 Packages [1,032 B]
Get:23 http://security.ubuntu.com/ubuntu jammy-security/multiverse Translation-en [7,060 B]
Get:24 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 c-n-f Metadata [260 B]
Get:25 https://esm.ubuntu.com/infra/ubuntu jammy-infra-security/main amd64 Packages [479 B]
Get:26 https://esm.ubuntu.com/infra/ubuntu jammy-infra-updates/main amd64 Packages [479 B]
Fetched 3,567 kB in 0s (0 B/s)
Checking package manager
Reading package lists... Done
Building dependency tree
Reading state information... Done
Invalid package information
After updating your package information, the essential package
'ubuntu-minimal' could not be located. This may be because you have
no official mirrors listed in your software sources, or because of
excessive load on the mirror you are using. See /etc/apt/sources.list
for the current list of configured software sources.
In the case of an overloaded mirror, you may want to try the upgrade
again later.
因此,我們可以清楚地看到,剛剛決定在第二步中do-release-upgrade
刪除所有主要來源的列表,同時保留同一文件中的來源,這當然會導致升級失敗,但我不明白為什麼要刪除它們,以及如何防止它刪除它們。ftp.ubuntu.com/ubuntu
security.ubuntu.com
我想這裡長話短說的問題可能是,因為它說它正在刪除第三方來源,也許它認為在這種情況下主要焦點存儲庫是第三方,那麼它如何確定它是第三方來源,也許,如果是的話原因,以及如何防止它認為它是第三方來源?
答案1
事實證明我是對的:do-release-upgrade
我認為主要的 ubuntu 儲存庫是第三方的。但我不知道為什麼。我最終發現該工具有一個標誌,--allow-third-party
它將避免忽略第三方存儲庫。
我能夠使用此標誌升級我的伺服器,沒有出現任何問題。然而,考慮到這是第三方儲存庫,該工具的原始問題仍然存在,但它是可以解決的。