儘管已經安裝了依賴項,但“apt-get purge”由於“未滿足依賴項”錯誤而失敗

儘管已經安裝了依賴項,但“apt-get purge”由於“未滿足依賴項”錯誤而失敗

我在 Debian Stretch 上。當我嘗試執行 apt-get purge 時,它失敗並出現未滿足的依賴項錯誤:

$ sudo apt-get purge -f openssl
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 vim-gtk : Depends: libruby2.3 (>= 2.3.0~preview2) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

最後一行似乎顯示libruby2.3無法安裝,但它和vim-gtk都已經安裝了:

$ sudo apt-cache policy vim-gtk
vim-gtk:
  Installed: 2:8.0.0197-4+deb9u3
  Candidate: 2:8.0.0197-4+deb9u3
  Version table:
 *** 2:8.0.0197-4+deb9u3 500
        500 http://debian.mirror.iweb.ca/debian stretch/main amd64 Packages
        500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
        500 http://deb.debian.org/debian oldstable/main amd64 Packages
        100 /var/lib/dpkg/status

$ sudo apt-cache policy libruby2.3
libruby2.3:
  Installed: 2.3.3-1+deb9u9
  Candidate: 2.3.3-1+deb9u9
  Version table:
 *** 2.3.3-1+deb9u9 500
        500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
        100 /var/lib/dpkg/status
     2.3.3-1+deb9u8 500
        500 http://debian.mirror.iweb.ca/debian stretch/main amd64 Packages
        500 http://deb.debian.org/debian oldstable/main amd64 Packages

我嘗試清除並重新安裝 vim-gtk 和 libruby2.3,這似乎有效:

$ sudo apt-get purge vim-gtk libruby2.3
$ sudo apt-get install vim-gtk libruby2.3

然而,在此之後,我在運行時仍然遇到同樣的錯誤sudo apt-get purge -f openssl。是什麼導致了這個錯誤?為什麼 apt 已經安裝了卻告訴我不會安裝?

我已經嘗試了其他類似問題的一些建議(sudo apt-get install -f,,sudo apt-get update/clean/autoremove但錯誤仍然存在)

答案1

這是什麼的開始可能最終得到一個答案:

我不知道刪除 openssl 是否是明智之舉;我傾向於「不明智」。

這是我目前的 Ubuntu 20.04 LTS 中的內容:

$ dpkg --列表 | head -n 4 && dpkg --列表| grep openssl
所需=未知/安裝/刪除/清除/保留
|狀態=未/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(無)/需要重新安裝(狀態,Err:大寫=壞)
||/ 名稱 版本 架構描述
ii libevent-openssl-2.1-7:amd64 2.1.11-stable-1 amd64 非同步事件通知庫 (openssl)
ii openssl 1.1.1f-1ubuntu2.1 amd64 安全通訊端層工具包 - 加密實用程式
ii perl-openssl-defaults:amd64 4 Perl OpenSSL 套件的 amd64 版本相容性基線

相關內容