无法卸载通过 apt 列表显示的软件包

Lea*_*oda 3 package-management uninstall apt virtualbox dkms

我运行的是 Ubuntu 20.04LTS。当我在包中搜索 virtualbox 时,它显示了许多包。

~$ apt list | grep virtualbox

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

boinc-virtualbox/focal 7.16.6+dfsg-1 amd64
unity-scope-virtualbox/focal,focal 0.1+13.10.20130723-0ubuntu2 all
virtualbox-dkms/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox-ext-pack/focal-updates,focal-updates 6.1.10-1~ubuntu1.20.04.1 all
virtualbox-guest-additions-iso/focal-updates,focal-updates 6.1.10-1~ubuntu1.20.04.1 all
virtualbox-guest-dkms-hwe/focal-updates,focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 all
virtualbox-guest-dkms/focal-updates,focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 all
virtualbox-guest-source-hwe/focal-updates,focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 all
virtualbox-guest-source/focal-updates,focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 all
virtualbox-guest-utils-hwe/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox-guest-utils/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox-guest-x11-hwe/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox-guest-x11/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox-qt/focal-updates,now 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64 [residual-config]
virtualbox-source/focal-updates 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64
virtualbox/focal-updates,now 6.1.10-dfsg-1~ubuntu1.20.04.1 amd64 [residual-config]
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试删除其中任何一个时,它表示该软件包未安装,因此未删除。

$ sudo apt-get remove virtualbox-dkms

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'virtualbox-dkms' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

--- 
~$ sudo apt-get remove virtualbox-source

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'virtualbox-source' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

---
~$ sudo apt-get remove virtualbox-guest*

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'virtualbox-guest-utils' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-modules' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-additions-iso' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-dkms' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-dkms-hwe' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-modules-hwe' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-x11-hwe' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-source' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-source-hwe' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-utils-hwe' for glob 'virtualbox-guest*'
Note, selecting 'virtualbox-guest-x11' for glob 'virtualbox-guest*'
Package 'virtualbox-guest-modules-hwe' is not installed, so not removed
Package 'virtualbox-guest-additions-iso' is not installed, so not removed
Package 'virtualbox-guest-dkms' is not installed, so not removed
Package 'virtualbox-guest-dkms-hwe' is not installed, so not removed
Package 'virtualbox-guest-source' is not installed, so not removed
Package 'virtualbox-guest-source-hwe' is not installed, so not removed
Package 'virtualbox-guest-utils' is not installed, so not removed
Package 'virtualbox-guest-utils-hwe' is not installed, so not removed
Package 'virtualbox-guest-x11' is not installed, so not removed
Package 'virtualbox-guest-x11-hwe' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我了解这里发生了什么吗?我对 Linux 还很陌生。喜欢它,但仍然对这些事情感到困惑。谢谢!

更新:我在使用时得到不同的结果dpkg,如下apt list所示:

~$ dpkg --list | grep -i virtualbox
rc  virtualbox                                 6.1.10-dfsg-1~ubuntu1.20.04.1         amd64        x86 virtualization solution - base binaries
rc  virtualbox-qt                              6.1.10-dfsg-1~ubuntu1.20.04.1         amd64        x86 virtualization solution - Qt based user interface

~$ apt list --installed | grep virtualbox
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Run Code Online (Sandbox Code Playgroud)

kar*_*rel 6

apt list | grep virtualbox列出了软件源中可以使用 apt 安装的可用软件包。您需要运行以下命令来列出当前使用 apt 安装的软件包:

apt list --installed | grep virtualbox
Run Code Online (Sandbox Code Playgroud)

请注意,如果您尝试使用 apt-get 而不是 apt 运行该命令,它将返回错误消息。

此命令将返回较短的包列表,因为结果sudo apt remove virtualbox-dkms virtualbox-source virtualbox-guest*结果中列出的许多软件包当前尚未安装。

结果dpkg --list | grep -i virtualbox显示这两个包是手动安装的:virtualboxvirtualbox-qt。您可以使用以下命令卸载这两个包:

sudo dpkg --purge virtualbox virtualbox-qt
Run Code Online (Sandbox Code Playgroud)

选择要清除的包(即我们要删除系统目录中的所有内容,甚至是配置文件)。如果您计划安装更新版本的 VirtualBox,这将是一个很好的运行命令。

  • 也许`apt list --installed | grep virtualbox`会更简单吗?并添加链接到[手册页](http://manpages.ubuntu.com/manpages/focal/en/man8/apt.8.html)以了解学习曲线。 (2认同)