我专门在系统上安装了 libreoffice-writer,然后用 清除了它sudo apt-get purge '*libreoffice-writer*' --autoremove
。之后,我一个接一个地运行这些终端命令,以确定我是否真的删除了与 libreoffice 或 libreoffice-writer 相关的所有文件 -
apt-cache search libreoffice-writer
sudo find / -name libreoffice
然后我运行它apt-cache search libreoffice
,它显示了几十个名为“libreoffice”的文件
正如您在终端图像中看到的,为什么还有这么多相关文件?如何删除所有这些文件,以便下次我从 libreoffice 安装任何东西时,它应该像第一次在我的系统上安装一样自行安装?
答案1
Apt 维护一个本地数据库,其中包含来自所有当前已知来源的所有可用 deb 包。“可用”意味着它包含你目前尚未安装的软件包以及您当前已安装的软件包。
apt-cache
搜索数据库apt update
从这些来源刷新数据库apt list libreoffice-writer
或apt list libreoffice*
将指定安装输出中的哪些包。
现在让我们看看--purge之后剩余的文件和目录。
如果 apt 删除完文件后目录不为空,则目录可能会保留。其他一些软件包(或管理员)也可能使用该目录。
Apt 永远不会删除位于 /home 目录下的任何文件。(手册页对此非常清楚)
关于在 apt 中使用通配符的说明:许多用户在看到通配符导致额外的包被标记为需要操作,而他们期望被标记的包却没有被标记时都会感到惊讶。
您得到的操作与预期不同的可能原因有很多:依赖关系、意外名称、拼写错误、错误的通配符等。
关于如何安全、有效地使用 apt 通配符,有两种观点:
首先使用 apt
--simulate
测试操作。在实际操作之前,检查输出并发现意外情况。完全避免使用通配符。使用 apt 的工具来了解您想要执行的正确软件包。然后列出这些软件包。
答案2
apt-cache search
搜索在您的软件列表中找到的软件包(即来自数据apt update
并且不限于已安装的软件包 - 允许您找到可以安装的软件包等)。
我没有使用 Kubuntu 并且没有kubuntu-desktop
安装;但我可以apt-cache search kubuntu-desktop
确认包中包含我认为的内容;它适用于我的系统,我记得名字正确等等,然后可以决定安装它。即它正在搜索我的软件列表缓存...不是我安装的软件包。
软件包列表通过执行apt update
命令进行更新。您不需要使用该命令安装软件包,但当您随后使用apt install
...时,apt-cache
它会从缓存通过上述apt update
命令下载并包含您已启用/添加的源可供系统使用的所有软件包(是否安装)。
答案3
您必须使用dpkg --list | grep -i libreoffice
来确定 LibreOffice 相关已安装的包。
如果使用 APT 安装了 LibreOffice 相关文件,则应通过这种方式删除它们。要自动执行此过程,请使用以下命令:
sudo apt-get autopurge $(dpkg --list | grep -i libreoffice | awk '{print $2}')
并且不要手动删除 APT 控制的文件。
阅读材料: