每當我嘗試使用安裝或更新套件時yum
,在更新其資料庫後,都會顯示以下訊息:
Loaded plugins: langpacks, presto, refresh-packagekit, tidy-cache google64
http://download.fedora.redhat.com/pub/epel/6/i386/repodata/repomd.xml:
[Errno 14] curl#6 - "Couldn't resolve host" Trying other mirror.
http://download.fedora.redhat.com/pub/epel/6/i386/repodata/repomd.xml:
[Errno 14] curl#6 - "Couldn't resolve host" Trying other mirror.
Error: failure: repodata/repomd.xml from mypck: [Errno 256] No more mirrors to try.
我正在運行 Linux 3.4.3。什麼可能導致這個問題?我如何解決它?
答案1
鏡像清單包含無效條目。在我的 Fedora 安裝中,該錯誤只是提供信息,因為它會轉到鏡像列表中的下一個條目並成功完成。
root
您可以透過(作為或使用sudo
)編輯文件來消除錯誤/etc/yum.repos.d/fedora-updates.repo
。您將看到以下幾行:
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/
$releasever/$asearch/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f
$releasever&arch=$basearch
取消註解該baseurl
行並註解掉該mirrorlist
行。這將刪除從維護的鏡像清單中取得更新的選項。
答案2
在我看來,主機不存在:
$ host download.fedora.redhat.com
Host download.fedora.redhat.com not found: 3(NXDOMAIN)
所以,要么
- 等待主機再次可用
- 找到替換主機並將其更新為 yum 來源
- 從來源中刪除主機
注意
$ host download.fedoraproject.org
download.fedoraproject.org is an alias for wildcard.fedoraproject.org.
wildcard.fedoraproject.org has address 85.236.55.6
wildcard.fedoraproject.org has address 80.239.156.215
wildcard.fedoraproject.org has address 209.132.181.16
wildcard.fedoraproject.org has IPv6 address 2001:4178:2:1269::fed2
wildcard.fedoraproject.org has IPv6 address 2610:28:3090:3001:dead:beef:cafe:fed4
這可能就是您正在尋找的。
答案3
這就是我解決問題的方法。這對你有幫助
對我來說,出現這個問題是因為 Fedora 中的 IPV6 網路連線。所以首先我們必須完全禁用 IPV6。這是你必須做的
- 打開終端
- 輸入 su 並回車以超級使用者身分登入
- 輸入根密碼
- 輸入 cd /etc/modprobe.d/ 將目錄改為 /etc/modprobe.d/
- 鍵入 vi disableipv6.conf 以在其中建立新文件
- 按 Esc + i 將資料插入文件
- 在檔案上鍵入 install ipv6 /bin/true 以避免載入 IPV6 相關模組
- 輸入 Esc + : 然後輸入 wq 儲存並退出
- 輸入reboot來重啟fedora
- 重新啟動後打開終端機並輸入 lsmod |查詢ipv6
- 如果沒有結果,則表示您正確停用了 IPV6
Fedora 可能會使用您的 ADSL 路由器或數據機作為 DNS 伺服器。另一方面,Fedora 可能會使用一些功能較弱的 DNS 伺服器來尋找。因此,您的 DNS 查找在大多數情況下會很慢且錯誤。這會導致 Curl 錯誤和緩慢載入錯誤。因此,我們必須在 Fedora 中設定一些強大的 DNS 伺服器來進行查找。這是步驟。
- 打開終端
- 輸入 su 並回車以超級使用者身分登入
- 輸入根密碼
- 輸入 cat /etc/resolv.conf 檢查您的 Fedora 使用的 DNS 伺服器。大多數情況下 - 這將是您的數據機 IP 位址。
- 現在我們必須找到一個強大的DNS伺服器。幸運的是,有一個開放的 DNS 伺服器 - 由 Google 維護。
- 前往此頁面並了解什麼是“Google 公用 DNS IP 位址”
- 現在是 8.8.8.8 和 8.8.4.4。但將來這些可能會改變。
- 輸入 vi /etc/resolv.conf 編輯 resolv.conf 文件
- 按 Esc + i 將資料插入文件
- 透過在每行的開頭插入 # 來註解文件中的所有內容。不要刪除任何內容,因為將來可能有用。
在文件中輸入以下兩行
nameserver 8.8.8.8 nameserver 8.8.4.4
輸入 Esc + : 然後輸入 wq 儲存並退出
- 現在您已完成,一切正常(無需重新啟動)。
- 但每次重新啟動電腦時,您的 /etc/resolv.conf 都會被預設取代。所以我讓你找到一種方法來避免這種情況。
請參閱此處查看詳細答案 http://codeketchup.blogspot.com/2014/07/how-to-fix-curl-6-could-not-resolve.html
答案4
您可以將/etc/resolv.conf
檔案設為唯讀
chattr +i /etc/resolv.conf