![dpkg:如何删除一个软件包以及所有依赖于它的其他软件包?](https://linux22.com/image/811542/dpkg%EF%BC%9A%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E4%B8%80%E4%B8%AA%E8%BD%AF%E4%BB%B6%E5%8C%85%E4%BB%A5%E5%8F%8A%E6%89%80%E6%9C%89%E4%BE%9D%E8%B5%96%E4%BA%8E%E5%AE%83%E7%9A%84%E5%85%B6%E4%BB%96%E8%BD%AF%E4%BB%B6%E5%8C%85%EF%BC%9F.png)
我尝试从系统中删除 KDE。当我运行 时dpkg -r kdebase-bin
,系统提示“kdebase-data
依赖于它”。那么如何删除所有与 KDE 相关的软件包?
答案1
dpkg -r --force-depends $pkg
apt-get install -f
答案2
通常人们使用更高级别的实用程序来代替软件包。 您可以使用apt-get删除包及其所有依赖项。
apt-get remove <package>
答案3
与 不同apt-get
,aptitude
可以递归删除作为依赖项安装的软件包,但在请求删除时不再依赖这些软件包。aptitude
不过,您必须使用 安装了这些软件包才能使此功能正常工作。
还有一些工具deborphan
可以识别系统中不再需要的软件包,即使您以前没有aptitude
安装它们。但是,您必须向它提供系统上确实需要的软件包列表,但这通常是一项快速的工作(它需要询问的软件包比您想象的要少)。
答案4
要删除包及其依赖项,请使用purge
使用以下命令检查所有依赖项
# sudo dpkg --list | grep <package-name>
删除软件包及其依赖项
# sudo apt purge <package>