在 Ubuntu 系统中更新 软件时,经常会遇到更新完版本没变、出现两个图标、命令执行无效等问题,大部分原因是不知道当前 软件包是通过哪种方式安装的。
其实只需要一条 which <软件名> 命令,就能快速判断是 APT、Snap 还是 Flatpak 版本,从而使用正确的更新命令。
一、执行判断命令
打开终端,直接运行,以下以libreoffice为例:
which libreoffice
根据终端输出的路径,即可对应判断安装方式。
二、路径对应安装类型详解
1. 路径为 /usr/bin/libreoffice
/usr/bin/libreoffice
- 安装方式:APT 安装(系统原生 deb 包)
- 说明:Ubuntu 默认预装,或通过
apt install安装,与系统深度集成。 - 更新命令:
sudo apt update
sudo apt upgrade libreoffice -y
2. 路径为 /snap/bin/libreoffice
/snap/bin/libreoffice
- 安装方式:Snap 安装
- 说明:沙盒模式运行,权限独立,部分 Ubuntu 桌面环境默认预装此版本。
- 更新命令:
sudo snap refresh libreoffice
3. 路径包含 flatpak
/var/lib/flatpak/exports/bin/org.libreoffice.LibreOffice
- 安装方式:Flatpak 安装
- 说明:来自 Flathub 应用商店,跨发行版通用,版本较新。
- 更新命令:
flatpak update org.libreoffice.LibreOffice
三、常见特殊情况
- 如果输出为空,说明未安装 LibreOffice。
- 如果提示别名,以实际可执行文件路径为准。
- 同时出现多个路径,说明系统中存在多个版本,会导致图标重复、更新不生效。
四、快速记忆口诀
/usr/bin/→ APT 版/snap/bin/→ Snap 版/flatpak/→ Flatpak 版
只有先准确判断安装方式,再执行对应的更新命令,才能确保 LibreOffice 正常升级到最新版本,避免版本冲突和无效操作。