CentOS Stream 8 软件包管理方法
CentOS Stream 8 的核心软件包管理工具为 DNF(Dandified Yum),它是 YUM 的升级版本,具备更高效的依赖解析和性能优化,是系统推荐的默认工具。此外,也可使用 RPM 命令进行底层手动管理,或通过第三方包管理器(如 Snap、Flatpak)扩展软件来源。
DNF 是 CentOS Stream 8 的首选工具,支持软件安装、更新、卸载、搜索等全生命周期管理,且能自动处理依赖关系。
使用 dnf install 命令安装指定软件包,系统会自动解析并安装依赖项。例如安装 wget:
sudo dnf install wget 安装过程中需确认依赖项是否合理,确认无误后输入 y 并回车完成安装。
sudo dnf update httpd):sudo dnf update httpd 更新前建议先运行 sudo dnf check-update 查看可更新列表,避免不必要的升级。
vim)并保留配置文件:sudo dnf remove vim sudo dnf remove vim --nodeps # 谨慎使用 --nodeps,可能破坏依赖 sudo dnf autoremove 卸载前可通过 dnf list installed 确认软件包名称,避免误操作。
通过关键词搜索软件仓库中的可用包,例如查找与“web server”相关的包:
sudo dnf search "web server" 搜索结果会显示包名、版本及简要描述,便于定位所需软件。
sudo dnf list installed sudo dnf info wget sudo dnf list available 这些命令有助于了解系统中的软件状态。
DNF 会缓存下载的软件包和元数据,定期清理可释放磁盘空间:
sudo dnf clean all 清理后不会影响已安装的软件,仅删除临时文件。
epel):sudo dnf config-manager --set-enabled epel sudo dnf config-manager --set-disabled epel .repo 文件(如 /etc/yum.repos.d/custom.repo),内容参考官方文档。RPM 用于直接操作 .rpm 格式的软件包,适用于手动安装或管理本地文件,但不处理依赖关系,需手动解决依赖问题。
sudo rpm -ivh package_name.rpm -i:安装;-v:显示详细过程;-h:显示进度条。sudo rpm -Uvh package_name.rpm -U:升级(若未安装则安装)。sudo rpm -e package_name -e:卸载;若存在依赖冲突,需用 --nodeps 强制卸载(不推荐)。rpm -qi package_name rpm -qf /path/to/file rpm -ql package_name 这些命令有助于排查软件来源或文件归属问题。
若需要跨平台或更便捷的软件安装,可添加 Snap、Flatpak 等工具:
Snap 是 Canonical 推出的跨发行版包管理器,支持自动更新和沙盒隔离。
sudo dnf install snapd sudo systemctl enable --now snapd.socket sudo ln -s /var/lib/snapd/snap /snap hello-world):sudo snap install hello-world Flatpak 是 GNOME 推出的跨平台工具,支持沙盒环境和应用分发。
sudo dnf install flatpak sudo systemctl enable --now flatpak-daemon.service flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo gnome-terminal):flatpak install flathub org.gnome.Terminal dnf repoquery depends package_name 查看软件依赖,避免强制卸载导致系统故障。