Centos7
在私有倉庫中找不到primary.sqlite.bz2
我一直在為我正在工作的公司建立一個私人回購。一開始它工作正常,但是今天,當我嘗試安裝我建構的新 rpm 時,我遇到了這個醜陋的錯誤:
http://<server_name>/centos/7/repodata/a6ecd0c880b1f5128974cd147a53cd84d7dab269b9055215b6fbe99fb98f6d7a-primary.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found-:-- ETA
我已經嘗試過:
yum clean all rm -rf /var/cahe/yum yum repolist
再次出現同樣的錯誤。
我已經刪除了 repo 伺服器上 repodata 下的所有內容,並再次使用以下命令重新創建了 repo:
createrepo /path/to/repo/directory
重新創建回購之後,我又跑了
yum clean all rm -rf /var/cahe/yum yum repolist
但仍然沒有任何工作
我 100% 確定客戶端配置沒問題,因為我是目前唯一一個在玩伺服器的人,上週它執行良好。
否則,可以通過 http 訪問 repo,我可以使用 Web 瀏覽器查看所有包和 repodata。如果執行
curl http://<server_name>/centos/7/repodata/repomd.xml
從客戶那裡,我得到了正確的文件。
我已經意識到主數據庫名稱的名稱在客戶端中不是正確的名稱(即使在執行之後
yum clean all; rm-rf /var/cache/yum; yum update
)。請問我該如何解決?我整個下午都在研究這個問題,但沒有任何改變回購目錄中的權限設置正常(三重檢查)
我錯過了什麼???
預先感謝您的幫助
我想我昨天晚上已經找到了答案,至少目前我沒有面臨之前描述的問題。
解決方案很簡單,避免客戶端保留 repos 的本地記憶體。這可以在
/etc/yum.conf
客戶端文件的下一行中完成:http_caching=none
設置此選項後,每次客戶端執行 a
yum update
或yum repolist
從儲存庫伺服器下載所有 repodata 時,所有文件都處於其最新版本。我仍然不明白為什麼我要擦除客戶端中的所有本地記憶體,而客戶
yum clean all; rm -rf /var/cache/yum
端一直在搜尋舊的 repodata 文件。如果有人有答案,請分享。在過去的幾天裡,它讓我發瘋了。無論如何,謝謝你的提示和建議