Fedora系统 DNF 与 Flatpak 使用指南
概述
在 Fedora 中,常见的软件安装方式有两种:
- DNF:系统包管理器,安装的是 RPM 软件包,和系统集成度高。
- Flatpak:跨发行版的应用分发方式,适合安装桌面应用,依赖隔离更强。
一般建议:
- 命令行工具、开发依赖优先用 DNF。
- 桌面应用(如 GUI 软件)可优先考虑 Flatpak。
DNF 常用操作
1. 刷新软件源元数据
bash
sudo dnf makecache2. 查询软件包
bash
# 按名称搜索
sudo dnf search 关键字
# 查看包详细信息
sudo dnf info 包名3. 安装软件
bash
# 安装单个软件
sudo dnf install 包名
# 一次安装多个
sudo dnf install 包1 包2 包34. 更新软件
bash
# 更新所有已安装包
sudo dnf upgrade --refresh
# 仅更新某个包
sudo dnf upgrade 包名5. 卸载软件
bash
# 卸载软件
sudo dnf remove 包名
# 自动清理不再需要的依赖
sudo dnf autoremove6. 查看已安装包
bash
sudo dnf list installed7. 查看历史操作
bash
sudo dnf history8. 清理缓存
bash
# 清理所有缓存
sudo dnf clean all
# 清理过期缓存并重新拉取元数据
sudo dnf makecache --refreshDNF 进阶
1. 启用 RPM Fusion(常用第三方仓库)
适合安装一些 Fedora 官方源中没有的软件(如部分多媒体编解码器)。
bash
sudo dnf install \
https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm2. 仅下载不安装(用于离线场景)
bash
sudo dnf download 包名Flatpak 常用操作
1. 安装 Flatpak(若系统未预装)
bash
sudo dnf install flatpak2. 添加 Flathub 仓库
bash
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo3. 搜索应用
bash
flatpak search 关键字4. 安装应用
bash
# 按应用 ID 安装
flatpak install flathub 应用ID
# 示例:安装 VLC
flatpak install flathub org.videolan.VLC5. 运行应用
bash
flatpak run 应用ID6. 查看已安装应用
bash
flatpak list7. 更新应用
bash
flatpak update8. 卸载应用
bash
flatpak uninstall 应用ID9. 清理未使用运行时
bash
flatpak uninstall --unusedDNF 与 Flatpak 对比
- 集成度:DNF 更高(系统级);Flatpak 为沙箱隔离。
- 适合场景:DNF 适合系统工具、开发包、服务端组件;Flatpak 更适合桌面应用。
- 依赖处理:DNF 依赖系统库;Flatpak 使用运行时,隔离性更强。
- 更新方式:DNF 使用
dnf upgrade;Flatpak 使用flatpak update。
推荐实践
- 先 DNF,后 Flatpak:能在官方仓库安装的工具优先使用 DNF。
- 桌面应用优先 Flathub:比如浏览器、编辑器、播放器等 GUI 应用。
- 定期维护:
sudo dnf upgrade --refreshflatpak updatesudo dnf autoremove && flatpak uninstall --unused