更新到 20.10 無提示地失敗,現在由於軟體包版本與 libc-bin 和 libc6:i386 / libc6:amd64 不匹配而無法更新

更新到 20.10 無提示地失敗,現在由於軟體包版本與 libc-bin 和 libc6:i386 / libc6:amd64 不匹配而無法更新

我使用的是 Pop OS,它與 Ubuntu 非常接近。幾天前,我嘗試按照以下說明將我的工作站從 Pop OS 20.04 更新到 201076號系統的網站透過跑步

sudo apt update
sudo apt full-upgrade

然後前往作業系統升級,下載 20.10,然後重新啟動。版本自 20.04 以來沒有變化。我很忙,所以我暫時擱置了它。

我嘗試透過 Pop Shop 更新我的軟體並收到此錯誤:

The following packages have unmet dependencies:
  locales: Depends: libc-bin (> 2.32)

重新運行時我遇到了類似的錯誤full-upgrade,這也提示我運行,sudo apt --fix-broken install這給了我另一個錯誤:

dpkg: error processing package libc6:amd64 (--configure):
 package libc6:amd64 cannot be configured because libc6:i386 is not ready (current status 'half-installed')
Errors were encountered while processing:
 libc6:amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)

一些谷歌搜尋導致我嘗試重新安裝半安裝的軟體包,sudo apt install --reinstall libc6-i386這給了我類似的錯誤:

 locales : Depends: libc-bin (> 2.32)

當嘗試安裝該特定版本時,libc-bin我遇到了另一個錯誤E: Version '2.32' for 'libc-bin' was not found

我檢查了目前安裝的 libc6 版本,似乎有 2.31-ubuntu9.2,不確定這到底意味著什麼。

❯ dpkg -l | grep libc6  
rF  libc6:amd64                                      2.31-0ubuntu9.2                                           amd64        GNU C Library: Shared libraries
iHR libc6:i386                                       2.31-0ubuntu9.2                                           i386         GNU C Library: Shared libraries
ii  libc6-dev:amd64                                  2.31-0ubuntu9.2                                           amd64        GNU C Library: Development Libraries and Header Files
ii  libc6-i386                                       2.31-0ubuntu9.2                                           amd64        GNU C Library: 32-bit shared libraries for AMD64

我真的不想從頭開始使用這台機器,任何幫助將不勝感激!

答案1

您應該能夠手動強制 dpkg 完成 libc6:i386 的安裝,此時 apt 應該能夠再次「思考」dist 升級過程。這應該只是調用的問題:

sudo dpkg -i --force-all /var/cache/apt/archives/libc6_2.31-0ubuntu9.2_i386.deb`

不過,檔案名稱可能與我在此處顯示的不完全一樣,因此您應該先使用以下命令進行驗證:

ls /var/cache/apt/archives/libc6*

相關內容