如何完全删除包裹?

boa*_*der 1 package-management python apt

我无法python3-pip在 Ubuntu 16.04 中删除软件包:

$ apt list |& grep 'python3-pip/'
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
$ sudo apt-get remove python3-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'python3-pip' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
openstack@prclnx04:~/python/pybind11$ apt list |& grep 'python3-pip/'
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
$ sudo dpkg --remove --force-remove-reinstreq python3-pip
dpkg: warning: ignoring request to remove python3-pip which isn't installed
$ sudo dpkg --remove --force-remove-reinstreq python3-pip
dpkg: warning: ignoring request to remove python3-pip which isn't installed
$ sudo apt-get update
Ign:1 http://archive.ubuntu.com/ubuntu trusty InRelease
Hit:2 http://ppa.launchpad.net/diesch/testing/ubuntu xenial InRelease
Hit:3 http://archive.ubuntu.com/ubuntu trusty Release
Hit:4 http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial InRelease
Hit:6 http://archive.linux.duke.edu/ubuntu xenial InRelease
Hit:7 http://archive.linux.duke.edu/ubuntu xenial-updates InRelease
Hit:8 http://archive.linux.duke.edu/ubuntu xenial-backports InRelease
Hit:9 http://archive.linux.duke.edu/ubuntu xenial-security InRelease
Reading package lists... Done
$ apt list |& grep 'python3-pip/'           
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
$ sudo apt-get clean && sudo apt-get autoclean && sudo apt-get autoremove --purge python3-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'python3-pip' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
$ apt list |& grep 'python3-pip/'           
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
Run Code Online (Sandbox Code Playgroud)

有没有办法强制apt完全删除包裹?

编辑1:

$ apt policy python3-pip
python3-pip:
  Installed: (none)
  Candidate: 8.1.1-2ubuntu0.4
  Version table:
     8.1.1-2ubuntu0.4 500
        500 http://archive.linux.duke.edu/ubuntu xenial-updates/universe amd64 Packages
        500 http://archive.linux.duke.edu/ubuntu xenial-updates/universe i386 Packages
     8.1.1-2 500
        500 http://archive.linux.duke.edu/ubuntu xenial/universe amd64 Packages
        500 http://archive.linux.duke.edu/ubuntu xenial/universe i386 Packages
     1.5.4-1 500
        500 http://archive.ubuntu.com/ubuntu trusty/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu trusty/universe i386 Packages
$ apt list |& grep 'python3-pip/'
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
$

$ apt list --installed | grep python3-pip

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

$ dpkg --get-selections | grep python3-pip
$ apt list |& grep 'python3-pip/'
python3-pip/xenial-updates,xenial-updates 8.1.1-2ubuntu0.4 all
$
Run Code Online (Sandbox Code Playgroud)

cl-*_*box 5

首先检查是否安装了包:

$ apt policy python3-pip
python3-pip:
  Installed: (none)
  Candidate: 8.1.2-2ubuntu0.1
  Version table:
     8.1.2-2ubuntu0.1 500
        500 http://archive.ubuntu.com/ubuntu yakkety-updates/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu yakkety-updates/universe i386 Packages
     8.1.2-2 500
        500 http://archive.ubuntu.com/ubuntu yakkety/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu yakkety/universe i386 Packages  
Run Code Online (Sandbox Code Playgroud)

如果是(在本例中不是),请执行:

sudo apt purge python3-pip  
Run Code Online (Sandbox Code Playgroud)

如果您错误地选择了错误的:

dpkg --get-selections | grep python3  
Run Code Online (Sandbox Code Playgroud)

您将获得已安装python3软件包的列表。

说明和一般信息:您的 Edit 1 输出显示该软件包未安装,因此无法删除。该apt list命令显示可用的软件包,它不显示已安装的软件包,除非您按照@Terrance 的评论中所述添加--installedapt list命令中。并且,要非常小心,正如@ByteCommander 所指出的那样,你删除了哪些包......sudo apt purge完全删除了包和配置文件!

  • @boardrider apt list 命令显示 **available** 包......未安装的包。:) (2认同)
  • 只是一个旁注,**如果你想让你的系统保持可用,**确保你不会意外删除完整的`python3`**。仅删除您自己手动安装的 Python 3 模块包。 (2认同)