星期六, 5月 14, 2022

CentOS 用 yum 出現 Failed to download metadata for repo ‘AppStream’

在使用 vagrant 架設 CentOS 環境時,yum 安裝套件出現 Failed to download metadata for repo 'AppStream' 的錯誤。

本來以為是有打錯字什麼的,後來發現沒啥問題,就請 Google 幫忙找找看,就找到這篇:Failed to download metadata for repo ‘AppStream’ [CentOS]

看完以後,簡單整理如下:

  1. 因為 CentOS 從 2021/12/31 開始就進入不維護狀態, repo 也跟著調整,mirror.centos.org 不再提供 repo metadata 。用白話講,就是 yum 無法取得套件資料庫。
  2. 要處理此問題,就需要把 mirrorlist.centos.org 替換掉,這時候可以用文章裡提供的指令來做。
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

這邊是使用 sed 指令來做替換,不確定指令做什麼的話,可以直接用 vim 或熟悉的文字編輯器打開 /etc/yum.repos.d 目錄下所有以 CentOS-* 開頭的所有檔案,做兩項變更:

  1. 把裡面的 mirror.centos.org 換為 vault.centos.org。
  2. 註解 mirrorlist 開頭的那一行。

這樣修改以後,就可以執行 yum 了。

沒有留言: