====== RH124 Package Management ====== ===== TO DO ===== * add epel-release repo * dnf config-manager and editing config files * dnf plugins ===== Helpful links ===== * [[https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html-single/managing_software_with_the_dnf_tool/index|Managing software with the DNF tool]] * [[https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html/managing_software_with_the_dnf_tool/dnf-commands-list|DNF commands list]] * [[https://docs.stg.fedoraproject.org/en-US/quick-docs/dnf/|Using the DNF software package manager]] * [[https://dnf.readthedocs.io/en/latest/command_ref.html|DNF Command Reference]] ===== The commands ===== * ''rpm'' * ''yum'' (deprecated in favour of ...) * ''dnf'' ===== The currently enabled (or all) repositories ===== Jump ahead to ''dnf'' command briefly: $ dnf repolist [--all] repo id repo name appstream AlmaLinux 10 - AppStream baseos AlmaLinux 10 - BaseOS crb AlmaLinux 10 - CRB extras AlmaLinux 10 - Extras $ ===== The /etc config files and directories ===== ==== /etc/yum* ==== Deprecated in favour of ''dnf'': $ tree -F /etc/yum* /etc/yum/ ├── pluginconf.d -> ../dnf/plugins/ ├── protected.d -> ../dnf/protected.d/ └── vars -> ../dnf/vars/ /etc/yum.conf@ [error opening dir] /etc/yum.repos.d/ ├── almalinux-appstream.repo ├── almalinux-baseos.repo ├── almalinux-crb.repo ├── almalinux-extras.repo ├── almalinux-highavailability.repo ├── almalinux-nfv.repo ├── almalinux-rt.repo ├── almalinux-saphana.repo └── almalinux-sap.repo $ Note that the repo files are still under yum, for backward compatibility: ==== /etc/dnf ==== $ tree -F /etc/dnf /etc/dnf/ ├── aliases.d/ ├── dnf.conf ├── modules.d/ ├── modules.defaults.d/ ├── plugins/ │   ├── copr.conf │   ├── copr.d/ │   └── debuginfo-install.conf ├── protected.d/ │   ├── almalinux-release.conf │   ├── grub2-pc.conf │   ├── grub2-tools-minimal.conf │   ├── selinux-policy-targeted.conf │   ├── setup.conf │   ├── sudo.conf │   ├── systemd.conf │   └── yum.conf ├── usr-drift-protected-paths.d/ └── vars/ └── stream $ ===== Possible EX200 tasks ===== * **Configure RPM repositories**: Set up, enable, or modify software repository definitions and access remote or local repository sources. * **Install and Remove RPM Packages**: Use DNF or RPM utilities to search for, install, query, verify, and uninstall RPM software packages. * **Install from Local or Remote Sources**: Install software packages directly from the local file system, remote repositories, or the Red Hat Content Delivery Network. * **Persistence After Reboot**: Ensure all package management configurations, enabled repositories, and service adjustments persist across system reboots without manual intervention. ===== Detailed package management pages ===== * [[RH124 rpm]] * [[RH124 dnf]]