如何判断软件包是由 dpkg 还是 apt 安装的?

sta*_*rYC 15 apt dpkg

我想删除该软件包,但我忘记了如何安装它dpkgapt-get

我尝试检查dpkg-query -list | grep myPackageapt list --installed | grep myPackage,但 myPackage 显示在两者上。

那么如何判断该软件包是由 dpkg 还是 apt 安装的呢?

为了执行正确的卸载命令,例如:apt-get removedpkg -r

tai*_*828 29

  1. 比较日志/var/log/apt/term.log,这是生成的日志文件apt/var/log/dpkg.log,这是生成的日志文件dpkg。如果您注意到可以在 中找到/var/log/dpkg.log但在 中找不到的软件包名称/var/log/apt/term.log,那么您很可能在那时安装了该软件包dpkg

  2. 请记住aptdpkg. 因此,建议通过apt而不是删除任何包dpkg,因为apt它将处理依赖项以删除那些不会被任何其他包使用的包(或将它们标记为“不再使用”以让您稍后删除它们。它取决于apt您实际使用的确切选项)。但是,dpkg如果您愿意,删除您的包裹对您没有害处。您可能会留下许多不再使用的软件包。


Zan*_*nna 21

任何随 APT 安装的软件包也随dpkg. APT 计算依赖关系并获取包,然后由dpkg.

如果你可以通过 APT 找到你的包,那么你应该使用apt命令卸载它们,因为 APT 会计算包的依赖关系,并且:

  • 删除依赖于选择删除的包的包
  • 将作为选择删除的软件包的依赖项的软件包标记为不再需要,以便可以使用 sudo apt autoremove