dnf包管理工具指北

包管理工具是一种用于安装、升级、配置和删除软件包的工具。它可以自动处理软件包之间的依赖关系,使得软件包的安装和升级变得更加容易。

最近公司的电脑被我换成了Fedora系统,所以我想了解一下dnf包管理工具的使用方法。

搜索

1
dnf search <package_name>

该命令用于搜索软件包。它会列出所有与指定软件包名称相关的软件包。

建议在安装软件包之前先搜索一下,以确保软件包存在。

示例:

1
sudo dnf search tmux

output:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
Last metadata expiration check: 0:56:47 ago on Fri 17 Jan 2025 04:11:02 PM CST.
====================================================== Name Exactly Matched: tmux ======================================================
tmux.x86_64 : A terminal multiplexer
===================================================== Name & Summary Matched: tmux =====================================================
golang-github-tomastomecek-tmux-top-devel.noarch : Monitoring information for your tmux status line.
python3-libtmux.noarch : Scripting library for tmux
python3-tmuxp.noarch : Tmux session manager
tmux-powerline.noarch : Powerline for tmux
tmux-top.x86_64 : Monitoring information for your tmux status line.
======================================================== Summary Matched: tmux =========================================================
xpanes.noarch : Awesome tmux-based terminal divider

安装

1
dnf install <package_name>

该命令用于安装软件包。它会自动处理软件包之间的依赖关系。

1
sudo dnf resinstall <package_name>

该命令用于重新安装软件包。

包信息

1
dnf info <package_name>

该命令用于获取软件包的详细信息,包括软件包的描述、版本、大小、依赖关系等。

示例:

1
sudo dnf info tmux

output:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
Last metadata expiration check: 1:10:19 ago on Fri 17 Jan 2025 04:11:02 PM CST.
Installed Packages
Name         : tmux
Version      : 3.5a
Release      : 2.fc40
Architecture : x86_64
Size         : 1.2 M
Source       : tmux-3.5a-2.fc40.src.rpm
Repository   : @System
From repo    : updates
Summary      : A terminal multiplexer
URL          : https://tmux.github.io/
License      : ISC AND BSD-2-Clause AND BSD-3-Clause AND SSH-short AND LicenseRef-Fedora-Public-Domain
Description  : tmux is a "terminal multiplexer."  It enables a number of terminals (or
             : windows) to be accessed and controlled from a single terminal.  tmux is
             : intended to be a simple, modern, BSD-licensed alternative to programs such
             : as GNU Screen.

列表

1
dnf list <OPTIONS>

该命令用于列出系统中安装的软件包。

示例:

1
sudo dnf list --installed

output:

1
tmux.x86_64                                          3.5a-2.fc40                          @updates

有关该命令的其他用法,自行查阅dnf list --help

更新

检查是否有可用的更新

1
sudo dnf check-update

示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
$ sudo dnf check-update                                                                                                         14:14:24
Updating and loading repositories:
 google-chrome                                                                                  100% |  10.3 KiB/s |   3.2 KiB |  00m00s
 Fedora 41 - x86_64 - Updates                                                                   100% | 267.6 KiB/s |   8.7 MiB |  00m33s
 Fedora 41 openh264 (From Cisco) - x86_64                                                       100% | 286.0   B/s |   4.8 KiB |  00m17s
 Fedora 41 - x86_64                                                                             100% |  18.7 MiB/s |  35.4 MiB |  00m02s
 RPM Fusion for Fedora 41 - Nonfree - Updates                                                   100% |  27.6 KiB/s |  38.5 KiB |  00m01s
 RPM Fusion for Fedora 41 - Nonfree                                                             100% |  74.2 KiB/s | 107.1 KiB |  00m01s
 RPM Fusion for Fedora 41 - Free                                                                100% | 168.2 KiB/s | 202.0 KiB |  00m01s
 RPM Fusion for Fedora 41 - Free - Updates                                                      100% |  42.1 KiB/s |  62.5 KiB |  00m01s
Repositories loaded.

更新所有软件包

1
sudo dnf upgrade

该命令用于更新系统中所有的软件包。

更新指定软件包

1
sudo dnf upgrade <package_name>

该命令用于更新指定的软件包。

系统更新

和包管理也挂得上钩,所以也列在这里,直接引用官方文档:

使用命令行更新系统

删除

1
dnf remove <package_name>

仓库列表(源列表)

1
sudo dnf repo list

该命令用于列出系统中所有的仓库列表。

1
sudo dnf repo info

该命令用于获取仓库的详细信息。


至于其他关于组(group)或者dnf5的新特性,可以自行查阅官方文档。

updatedupdated2025-01-242025-01-24