Fedora

Fedora Linux:下載安全更新暫時失敗

  • March 4, 2016

這是“為什麼我沒有獲得安全更新”的第 N 部分。這是什麼原因造成的?

  • 作業系統:Fedora 工作站 23
  • 日期:2016-03-03

1.短暫的意思是失敗,然後成功

# dnf check-update

Error: Failed to synchronize cache for repo 'updates' from 'http://download.fedoraproject.org/pub/fedora/linux/updates/23/x86_64/': Yum repo downloading error: Downloading error(s): repodata/0e95ae636347564e66b0e600c9a1369d5c57415ed969bc7bba13e1a190d195c1-filelists.xml.gz - Cannot download, all mirrors were already tried without success; repodata/33467a86da0d3b3b24c27bf054700c0e35041a0643054e62f961d687b2a8c628-prestodelta.xml.xz - Cannot download, all mirrors were already tried without success; repodata/6ae21040c8354039ebdaebd0b3ebb99d6b577c0231e83faf5fdd906944bf32ee-primary.xml.gz - Cannot download, all mirrors were already tried without success; repodata/125571cd75bc296f2b59a8f11d92652f8faa8cbfc9e0fe0637b37c26e9a258fd-updateinfo.xml.xz - Cannot download, all mirrors were already tried without success

1.1所以出現故障,wget顯示什麼?

# wget http://download.fedoraproject.org/pub/fedora/linux/updates/23/x86_64/repodata/0e95ae636347564e66b0e600c9a1369d5c57415ed969bc7bba13e1a190d195c1-filelists.xml.gz
--2016-03-03 23:32:47--  http://download.fedoraproject.org/pub/fedora/linux/updates/23/x86_64/repodata/0e95ae636347564e66b0e600c9a1369d5c57415ed969bc7bba13e1a190d195c1-filelists.xml.gz
Resolving download.fedoraproject.org (download.fedoraproject.org)... 140.211.169.206, 85.236.55.6, 152.19.134.198, ...
Connecting to download.fedoraproject.org (download.fedoraproject.org)|140.211.169.206|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/fedora/linux/updates/23/x86_64/repodata/0e95ae636347564e66b0e600c9a1369d5c57415ed969bc7bba13e1a190d195c1-filelists.xml.gz [following]
--2016-03-03 23:32:48--  https://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/fedora/linux/updates/23/x86_64/repodata/0e95ae636347564e66b0e600c9a1369d5c57415ed969bc7bba13e1a190d195c1-filelists.xml.gz
Resolving www.mirrorservice.org (www.mirrorservice.org)... 212.219.56.184
Connecting to www.mirrorservice.org (www.mirrorservice.org)|212.219.56.184|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2016-03-03 23:32:48 ERROR 404: Not Found.

1.2 只是要明確一點,這裡不需要擔心 HTTP 代理

# echo $http_proxy

#

1.3 撓頭,再試一次

# dnf check-update

Fedora 23 - x86_64 - Updates 1.3 MB/s | 20 MB 00:15

google-chrome 55 kB/s | 3.4 kB 00:00

Last metadata expiration check performed 0:00:00 ago on Thu Mar 3 23:35:26 2016.

google-chrome-stable.x86_64 49.0.2623.75-1 google-chrome

^ 顯然這包括安全更新

graphite2.x86_64 1.3.6-1.fc23 updates

…. Fedora 安全更新

pcre.x86_64 8.38-6.fc23 updates

另一個 Fedora 安全更新

1.4 注意

然後,我在瀏覽器中查看了 mirrorservice.org 上的目錄(即在成功更新檢查之後)。文件列表已更改名稱為 85f1054756ada3a2a9ab2f6c40c23378c74afb22ba4599c3cbb46334be0820a1-filelists.xml.gz。所以我們試圖獲取一個已被刪除的舊文件。

  1. 背景 =====

上面的調查開始了,因為我注意到上面的 Fedora 安全更新,但 GNOME 沒有通知我它們。GNOME Software 即使在點擊刷新後也顯示 0 個更新,這不是我所期望的行為。

pkcon update 確實顯示了更新,雖然我忘記記錄了。我不知道它是否包括當時的安全更新。

使用 成功檢查更新後dnf,刷新 GNOME 軟體會顯示更新。在撰寫本文時,我知道 dnf 和 PackageKit-on-Fedora 使用完全不同的記憶體目錄。因此dnf,填充它的記憶體並不是GNOME 軟體工作的直接原因。

我的第一個猜測是 mirrorservice.org 沒有閱讀說明並且不知道如何鏡像。換句話說,他們的儲存庫在更新時可能會出現不一致。在更新以指向新文件列表filelists.xml.gz之前,可以刪除舊的。repomd.xml但很奇怪,這麼大的鏡子會弄錯。

然後我想起了這個問題。 download.fedoraproject.org只是壞了 它會將您重定向到每個請求的不同儲存庫。問題是您不能假設各個儲存庫會同時更新。(而且 Fedora 的主記憶體儲庫沒有格式化支持這一點,因為它沒有保留以前的文件列表)。

預設配置不使用download.fedoraproject.org,所以沒問題。這只是因為我從metalink下載切換並取消註釋配置文件 baseurl中的預設行。如果您創建自己的 Fedora 儲存庫以在本地使用,那就太好了,否則您想使用預設系統,您的電腦會選擇從哪個儲存庫下載。.repo``baseurl``metalink

在我的情況下,不一致可能在 mirrorservice.org 和 bytemark 鏡像之間。您可以使用 curl 查看重定向:

$ curl --head http://download.fedoraproject.org/
HTTP/1.1 302 Found
Date: Fri, 04 Mar 2016 15:34:58 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
Location: https://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/fedora/linux//
AppTime: D=328174
AppServer: proxy02.fedoraproject.org
Content-Type: text/html; charset=UTF-8

$ curl --head http://download.fedoraproject.org/
HTTP/1.1 302 Found
Date: Fri, 04 Mar 2016 15:35:00 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
Location: http://mirror.bytemark.co.uk/fedora/linux//
AppTime: D=363432
AppServer: proxy07.fedoraproject.org
Content-Type: text/html; charset=UTF-8

引用自:https://unix.stackexchange.com/questions/267642