你怎么能完全删除一个包?

use*_*451 238 package-management uninstall octave

我正在尝试对octave3.2软件包进行全新安装。

为此,我将其删除,然后尝试重新安装。

当我重新安装时,出现错误。这可能是包中的一个错误,但我想确保我已经删除了所有内容,以便我可以进行全新安装。

这样做就足够了吗?

sudo apt-get --purge remove octave3.2
Run Code Online (Sandbox Code Playgroud)

Eli*_*gan 218

这是对有关清除包的影响的问题的非常笼统的回答。对于特定于您的情况的建议,您必须编辑您的问题以包含其他信息 - 特别是您收到的错误消息的完整和准确文本。

删除带有或 的包将删除它们及其所有全局(即系统范围)配置文件。这通常是人们谈论完全删除包裹时的意思。sudo apt purge ...sudo apt --purge remove ...

但这并不意味着您的系统与安装软件包之前的系统相同。特别是:

  • 这不会删除作为依赖项安装的软件包,当您安装现在要删除的软件包时。假设这些包不是任何其他包的依赖项,并且您没有将它们标记为手动安装,您可以使用sudo apt autoremoveor删除依赖项(如果您也想删除它们的系统范围配置文件)sudo apt --purge autoremove

  • 这不会删除非系统范围的配置文件。具体来说,它不会删除特定于用户的配置:

    • 它不会删除.config由软件包提供的软件创建的位于用户主目录(或其主目录的子目录)中的配置文件和目录。

      • 如果这些文件/文件夹未存储在 中.config,则它们通常以.它们自己开头。无论哪种方式,您都可以ls使用-a-A标志查看它们,并且您可以通过按Ctrl+H或转到View > Show Hidden Files在 Nautilus 和大多数其他文件浏览器/管理器中查看它们。
    • 它不会撤销对现有用户特定配置文件所做的更改。

    • 它不会删除新的gconfdconf密钥,或撤销任何gconfdconf配置更改。

  • 使用purge--purge remove代替remove不会逆转对其他包提供的或由用户手动创建的现有系统范围配置文件的更改。但是,有时通过卸载包(无论它是 apurge而不是 a remove)来撤消此类更改。


pl_*_*ock 91

使用命令:

sudo apt-get purge --auto-remove packagename
Run Code Online (Sandbox Code Playgroud)

它将清除所需的包以及随这些包安装的依赖项。该--auto-remove选项的工作原理类似于sudo apt-get autoremove.


小智 17

您首先检查要删除的包的名称:

dpkg --list

然后删除给定的包

sudo apt-get remove package_name

清除任何相关代码

sudo apt-get purge package_name

然后自动删除

sudo apt-get autoremove

最后,进行一次清洁,以便检查所有内容都已正确删除

sudo apt-get clean

您想查看软件包列表中是否不再列出您要删除的软件包,但它是可选的。

祝你今天过得愉快,

  • 这个答案更加明确和逐步。 (2认同)

小智 12

删除 deb 包

获取包的完整名称:

dpkg --list | grep partial_package_name*
Run Code Online (Sandbox Code Playgroud)

删除包:

sudo apt-get remove package_name
Run Code Online (Sandbox Code Playgroud)

删除所有依赖项:

sudo apt-get purge package_name
Run Code Online (Sandbox Code Playgroud)

删除曾经作为依赖项安装的不需要的包:

sudo apt-get autoremove
Run Code Online (Sandbox Code Playgroud)

从本地缓存中删除检索到的包:

sudo apt-get autoclean
Run Code Online (Sandbox Code Playgroud)

检查它是否已完全删除:

dpkg --list | grep partial_package_name*
Run Code Online (Sandbox Code Playgroud)

删除 Snap 包

使用删除命令:

sudo snap remove package_name

sudo snap remove package_name
Run Code Online (Sandbox Code Playgroud)