問題背景
使用apt
或者apt-get
命令,會遇到部分軟件僅在PPA提供,而出現下載更新失敗的情況
PPA軟件源簡介
網站部署國家
以下爲nslookup
的查詢結果,通過地址查詢可以得知該IP位於英國
> ppa.launchpad.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: ppa.launchpad.net
Address: 91.189.95.83
Name: ppa.launchpad.net
Address: 2001:67c:1560:8008::15
位於國外的網站,多數存在以下三種情況:被牆/延遲/連接中斷
解決方案
鏡像源
我跟大家的都是第一時間想到了鏡像源,但是很可惜,搜遍了百度也沒找到相關信息。
自制鏡像源
搜遍百度只有這個解決方案,但是這個自制鏡像源所需要的金錢成本和時間成本都很高。
自行下載替換
做法簡單,用外部的工具下載好所需的文件,並替換到APT的緩存目錄下即可搞定。
解決過程
講了那麼多,誰都知道肯定是第三個方案是最佳選擇了
部署高級下載器
題外話:這個高級下載器的開發者一直默默無聞,專注給大家開源非常實用的工具,不給他點個Star都對不起良心啊。
有閒錢的也可以給作者打賞,鼓勵他繼續開發。
- 下載下載器:高級下載器
- 解壓壓縮包:我用的是0.1版本,直接解壓就能用
- 安裝依賴:
pip install -r requirements.txt
提取下載網址
根據錯誤提示找到對應的下載連接,如下圖所示
修改下載器的目標鏈接
打開main.py並修改url,如圖選中的部分
運行下載
下載過程需要等待一會,使用apt下載,速度也就1-2KB每秒,這個工具已經超過100倍了
替換APT緩存文件
等上面的程序運行結束,在項目根目錄下就能找到對應的文件,如圖所示
找到APT中與該文件對應的緩存路徑,並將其替換成剛纔下載好的文件。下圖所示爲替換前的文件
重新運行安裝命令
回到終端,重新執行剛纔apt安裝失敗的命令
走到這一步,該有的問題都該解決了,如果覺得這篇文章寫得不錯的記得點贊/關注/轉發哈!