DNF's name tool comes from Dandified YUM.
As you know the YUM is in use on older systems and comes from Yellowdog Updater, Modified.
All of these tools need to have sudo that gives you administrative access to your system.
When you run the DNF tool this will checks for metadata automatically whenever you begin a system update or otherwise install software from
repositories.
For this reason, the update and upgrade commands perform the same function.
Let's see the basic usage of the DNF tool:
Search a fedora package named FedoraPackage in the repositories.
sudo dnf search FedoraPackage
Install the FedoraPackage package if exist in the repository.
sudo dnf install FedoraPackage
If you want to uninstall the package FedoraPackage use this:
sudo dnf remove FedoraPackage
I can reinstall the package FedoraPackage
sudo dnf reinstall FedoraPackage -y
To automatically remove unneeded dependencies, use:
sudo dnf autoremove
The DNF can find out which package provides a particular file.
sudo dnf provides /etc/httpd/conf/httpd.conf
The detailed information of a package can be viewed with:
sudo dnf info httpd
The DNF history contains all actions that have been performed by the DNF command.
sudo dnf history
I can view further information about a transaction by specifying its ID:
sudo dnf history info 13
I can undo this transaction if we want:
sudo dnf history undo 13 -y
I can redo with:
sudo dnf history redo 13 -y
The DNF will cache data to the /var/cache/dnf directory and I clean it with:
dnf clean all
I have the option to manually make the cache so that future actions will be quicker.
sudo time dnf makecache
The DNF tool gives me the ability to list all packages that are currently installed on our Linux system:
sudo dnf list installed
Packages that are related to each other may be grouped together into a package group.
sudo dnf grouplist
I can install it with this command:
sudo dnf groupinstall "Web Server" -y
I can check if an update is available
sudo dnf check-update
I can ignore an update for the FedoraPackage package with this command:
sudo dnf update -x FedoraPackage
I can use it for automatic tasks such as updating regularly via cron jobs.
sudo dnf install dnf-automatic -y
I can install security only
sudo dnf updateinfo list sec
I can see displays information for enabled repositories only:
sudo dnf repolist
I can see all of the repositories
sudo dnf repolist all
Set update testing with:
sudo dnf config-manager --set-enable updates-testing
Disable update testing:
sudo dnf config-manager --set-disable updates-testing
You can list packages from a specified repository, for instance, FedoraPackage:
sudo dnf repository-packages FedoraPackage list
To display only a list of those packages available from the specified repository, add the available option.
sudo dnf repository-packages fedora list available
To display only a list of those packages installed from the specified repository, add the installed option
sudo dnf repository-packages fedora list installed
To add and enable a new repository like
Grafana, run the following command.
Open a new file named grafana.repo:
sudo nano /etc/yum.repos.d/grafana.repo
Add this in the grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
sudo dnf config-manager --add-repo /etc/yum.repos.d/grafana.repo
To enable the DNF repository
sudo dnf --enablerepo=grafana install grafana
To disable a DNF repository
sudo dnf --disablerepo=fedora-extras install grafana
To permanently disable a particular repository
sudo dnf config-manager --set-disabled grafana
These are just a few basic ways to use the DNF utility.