当前位置:首页>Linux>我的实验随笔:Linux篇(32):几种软件包管理方式的异同

我的实验随笔:Linux篇(32):几种软件包管理方式的异同

  • 2026-10-11 07:08:39
我的实验随笔:Linux篇(32):几种软件包管理方式的异同

在Ubuntu 26.04中,除了apt,还有snap、aptitude和dpkg等软件包管理工具,它们共同构成了系统的软件生态。它们最核心的区别在于定位层级和设计哲学的不同:

  • dpkg是最底层的工具,直接操作.deb软件包,但不会处理依赖关系。

  • apt和aptitude是基于dpkg的上层工具,会自动处理依赖关系,是日常管理.deb包的主力。其中aptitude在解决复杂依赖冲突时更强大。

  • snap是一种全新的、容器化的软件分发方式,与传统的.deb包体系相对独立。由于每个应用都自带依赖,会占用更多的磁盘空间。

我们可以通过which或者type查看可执行文件路径实际位置,这是最直观的方法。

  • snap安装路径通常包含/snap/bin/

  • apt安装路径通常在/usr/bin/或/bin/

如果知道软件包的大致名称,也可以直接在各自的列表里搜索。

查询是否属于snap:

snap list | grep 软件名

查询是否属于apt:

apt list --installed | grep 软件名

查询是否属于dpkg:

dpkg -l | grep 软件名

在Ubuntu 26.04中,系统默认可能同时安装了两个版本。可以使用snap list和apt list同时查到同一个软件。

此时,终端输入命令时调用的优先级取决于PATH环境变量的顺序。通常/snap/bin的优先级高于/usr/bin,因此默认会运行snap版。如果想强制运行apt版,可以使用完整路径,例如/usr/bin/firefox。

最新文章

随机文章