Ubuntu 中損壞軟件包的 8 個最佳修復方法

在 Ubuntu 等 Linux 操作系統上安裝和刪除軟件包既順利又簡單,但如果由於軟件包損壞而出現錯誤,安裝和刪除軟件包就會變得更加困難。
如果您無法安裝或刪除軟件包,本指南適合您,它適用於 Ubuntu、Linux Mint、Kali、Fedora、CentOS 和其他 Linux 發行版。
Linux 操作系統(Ubuntu 等)中軟件包損壞的原因
- 該軟件包已部分安裝
- 依賴或存儲庫錯誤
- 新更新中斷安裝
- 軟件包中的某些內容與系統上的其他內容髮生衝突
- 軟件包被錯誤刪除
如何修復基於 Ubuntu 和 Debian 的發行版中損壞的軟件包?
- 清潔包裝
- 重新安裝損壞的 Ubuntu 軟件包 (APT)
- 使用 DPKG 強制刪除損壞的包
- 解決阻塞問題
- 自動清理破損包裹
- 在恢復模式下修復損壞的文件
- 修復損壞的系統包
- 嘗試 Synaptic 包管理器
1. 清潔包裝
如果您確切地知道哪個軟件包引起了問題,那麼在 Ubuntu 中修復損壞的軟件包就非常容易了。您可以刪除該軟件包並清理磁盤空間。
- 按鍵盤上的 Ctrl + Alt + T 並按 Enter 鍵打開終端。
- 首先使用以下命令清除包緩存:
- sudo rm -rf /var/cache/apt/archives/[包名稱]
- 例如,要清除 Chrome 包緩存文件,請嘗試以下命令
- sudo rm -rf /var/cache/apt/archives/google-chrome-stable_current_amd64.deb
- 輸入您的 sudo 帳戶密碼
- 之後,釋放存儲空間,然後使用以下命令更新存儲庫:
- sudo apt-get autovacuum
- sudo apt-get 更新
- sudo apt-get 更新
此外,另一種方法是將包緩存文件移動到臨時文件。然後使用 Debian 軟件包管理器 (dkpg) 刪除損壞的軟件包。(以下命令移動並刪除 RVM。)
- sudo mv /var/lib/dpkg/info/rvm.* /tmp/
- sudo dpkg –remove –force-remove-reinstreq rvm
2. 重新安裝損壞的 Ubuntu (APT) 軟件包
並不總是能夠知道 Linux 系統上哪個軟件包被破壞。因此,請嘗試此方法讓您的系統檢查丟失的更新,更新軟件包列表,然後強制安裝損壞的軟件包。
- 按 Ctrl + Alt + T 打開終端。
- 使用命令查找丟失的更新。檢查並修復更新需要一些時間。
- sudo apt – 修復丟失的更新
- 完成此操作後,就可以從可用源更新包列表了。
- sudo 合適的更新
- 現在,在以下命令中使用 -f 標誌來強制安裝損壞的軟件包。Ubuntu 將查找任何損壞的軟件包並強制安裝它。
- sudo正確安裝-f
3.使用DPKG強制刪除損壞的包
如果您在使用 APT 包管理系統刪除有問題的包時遇到問題,請改用 dpkg 包管理系統。
如果您需要強制卸載軟件包,這非常有用。這是因為有時軟件包安裝在根目錄中。
打開終端 shell 並執行以下操作:
- 強制 dpkg 系統重新配置已解壓但未配置的軟件包。當我嘗試使用 -a 標誌配置所有包時。
- sudo dpkg –配置-a
- 獲取 dpkg 標記為所需的所有軟件包的列表。
- 須藤 dpkg -l | grep ^..p
- 現在您已經有了所需軟件包的列表,請刪除所有損壞的軟件包。將 [package-name] 替換為您要刪除的包。
- sudo dpkg –remove –force-remove-reinstreq [程序包名稱]
- 清理包裹。
- 須藤適當清潔
- 從可用來源更新軟件包列表
- sudo 合適的更新
- sudo apt update – 修復丟失的更新
- 運行以下命令查看已安裝哪些軟件包。
- $ sudo apt-get install -f
4.解決鎖問題
dpkg 阻塞問題並不常見,但它會阻止您執行任何操作。您可以訪問 apt 和 dpkg 包管理系統。
每當您執行此操作時,您都會收到一條錯誤消息,指出該文件正在被另一個文件或工具使用。
出現此問題的原因是某些軟件包在安裝過程中作為存檔保存到文件系統中。當您嘗試刪除它們時,它們會顯示錯誤。
通常,當您從 Ubuntu 系統中刪除某些內容時,其所有插件和依賴文件也會被刪除。但有些文件由於上述原因無法工作並導致問題。
獲取 root 訪問權限並刪除有問題的文件:
- 須藤 rm /var/lib/apt/lists/lock
- 須藤 rm /var/cache/apt/archives/lock
5、破損包裹自動清理
此方法不會刪除損壞的 Ubuntu 軟件包,而是清理刪除後軟件包留下的臨時文件。
許多軟件包在卸載時會在文件系統上留下一些文件,因此如果用戶決定再次安裝該應用程序,該過程會更快。我們將清理這些文件。
- 清理未使用的空間並擦除緩存文件
- sudo apt-get autovacuum
- 須藤 apt-clean
- 使用 root 訪問權限和以下命令刪除不必要的文件和依賴數據。
- sudo apt-get 自動刪除
- 刪除後,更新已安裝的軟件包列表
- sudo apt-get 更新
6. 在恢復模式下修復損壞的文件
這是在 Ubuntu 中修復損壞的軟件包的有效方法,但並不常用。它不會從技術上修復損壞的文件,但會進行修復來解決損壞的包的問題。重複以下步驟:
- 要進入恢復模式,請打開 Ubuntu 系統。
- 當您看到製造商的徽標時,請立即按住鍵盤上的 Shift 鍵,直到黑屏 (BIOS) 上出現一些選項。
- 選擇“Ubuntu 的高級選項”。
- 然後選擇“Ubuntu with Linux……”。(恢復模式)’。
- 當出現恢復菜單時,選擇 dpkg 並按 Enter。
- 它會要求您以讀/寫模式重新掛載文件系統。選擇是。
- 該過程完成後,它可以請求更新(如果有)。輸入 yN 繼續。
7.修復損壞的系統包
軟件更新程序負責更新您的 Ubuntu 系統。任何依賴性或系統錯誤都可能損壞系統軟件包,從而導致軟件更新應用程序無法正常工作。
要消除此錯誤,請清除系統緩存並清理文件系統。
- 須藤 apt-clean
- sudo apt-get install -f
8.嘗試Synaptic包管理器
它是一個易於使用的 GUI 包管理器,可以安裝、刪除、更新和修復損壞的 Ubuntu 包。
要安裝 Synaptic 包管理器,請使用以下命令,這需要 root 訪問權限:
- sudo apt-get 更新
- sudo apt-get 安裝突觸
- 確認後按Y並按Enter鍵。
- 安裝後,通過單擊“操作”、輸入“突觸包管理器”並打開應用程序來啟動它。
- 將包裹標記為破損。
- 然後單擊菜單欄中的“編輯”並選擇“修復損壞的包”。
- 恢復包後,使用上述任一方法刪除包。
修復 Fedora、CentOS 和其他 Red Hat Enterprises Linux (RHEL) 上損壞的軟件包
通常 yum 和 dnf 在 RHEL 操作系統上保持軟件包乾淨方面做得很好,但某些應用程序仍然會破壞軟件包。
- 對於基於 rpm 的系統,請使用以下命令。
- sudo rpm -Va
- 這將為您提供 rpm 數據庫中已安裝文件的列表。之後,您可以檢查可疑的軟件包並應用以下命令。
- sudo dnf -update 重新安裝 [軟件包名稱]
- 上面的命令會將元數據設置為過期,並可以幫助您找到此包的損壞依賴項,並建議使用 –skip-broken 標誌。
如何避免基於 Ubuntu 和 Debian 的發行版中的軟件包損壞?
在Ubuntu中修復損壞的軟件包需要時間,因此最好通過清理和刪除已刪除的軟件存儲庫文件來提前防止這種情況。
- 打開軟件和更新。
- 單擊“其他軟件”選項卡。它將有一個存儲庫列表。選擇任意一個進行刪除。
結論
在 Ubuntu 中查找並修復或刪除損壞的軟件包有點困難,但是藉助上述各種方法,您可以選擇適合您的方法並保持 Ubuntu 系統乾淨且無錯誤。
發佈留言