Linux-Mint
無法在 linux mint、終端和包管理器中安裝/升級包
如前所述,無法安裝軟體包。我嘗試在包管理器中安裝 VLC,但出現錯誤消息
installArchives() failed: Selecting previously unselected package libaribb24-0:amd64. (Reading database ... (Reading database ... 5%% (Reading database ... 10%% (Reading database ... 15%% (Reading database ... 20%% (Reading database ... 25%% (Reading database ... 30%% (Reading database ... 35%% (Reading database ... 40%% (Reading database ... 45%% (Reading database ... 50%% (Reading database ... 55%% dpkg: unrecoverable fatal error, aborting: files list file for package 'libstdc++-6-dev:amd64' contains empty filename
基本上任何其他軟體包也可以做到這一點。我試圖這樣做:
sudo rm /var/lib/dpkg/available sudo touch /var/lib/dpkg/available sudo sh -c 'for i in /var/lib/apt/lists/*_Packages; do dpkg --merge-avail "$i"; done' sudo dpkg --configure -a sudo apt-get -f install sudo apt-get clean sudo apt-get update && sudo apt-get upgrade
並且沒有取得任何進展,仍然是同樣的錯誤。輸入後在終端中
sudo apt-get install vlc
我明白了:
dpkg: unrecoverable fatal error, aborting: files list file for package 'libstdc++-6-dev:amd64' contains empty filename E: Sub-process /usr/bin/dpkg returned an error code (2)
那麼我該如何解決呢?
轉到您的根文件系統並轉到
/var/lib/dpkg/info/
剪切那裡的所有文件並創建一個名為的新
info.bak
文件/var/lib/dpkg
粘貼您之前剪切的所有文件
info.bak
,這解決了我的問題
清除該包的記憶體副本有幫助嗎?
apt-get clean並不總是能正常工作,尤其是安裝了一半的軟體包或標有安裝的軟體包。我的懷疑是 libstdc++ 的 deb 文件在 /var/cache/apt 中以某種方式損壞……刪除它或將其移出那裡到 apt 沒有任何害處,將重新下載一個新副本。您也可以自己手動下載它,檢查其雜湊以確保下載正常,然後使用dpkg -i xxx.deb以老式方式安裝它。
要嘗試的另一件事是這種記憶體清理方法: