22장. Software management
The following chapter contains the most notable changes to software management between RHEL 9 and RHEL 10.
22.1. Notable changes to DNF 링크 복사링크가 클립보드에 복사되었습니다!
Modularity is deprecated
In RHEL 10, the modularity functionality is deprecated and will be removed in a future major release. Therefore, the DNF module command displays a deprecation warning.
In previous RHEL major versions, some Application Streams were available as modules as an extension to the RPM format. In RHEL 10, Red Hat does not intend to provide any Application Streams that use modularity as the packaging technology. Therefore, no modular content is being distributed with RHEL 10.
The repository metadata is not downloaded by default
Previously, when you downloaded a repository’s metadata, the filelists metadata was downloaded by default. The filelists metadata is large and is typically not needed. With this update, this metadata is not downloaded by default, which improves responsiveness and saves disk space. The filelists metadata is also no longer downloaded or updated from repositories and is not loaded into the DNF transaction when you run a dnf command. If the dnf command requires the filelists metadata or includes a file-related argument, the metadata is loaded automatically.
When a package has a filepath dependency that requires filelists metadata to be resolved, the transaction fails with a dependency resolution error and the following hint:
(try to add '--skip-broken' to skip uninstallable packages or '--setopt=optional_metadata_types=filelists' to load additional filelists metadata)
If you want to re-enable the default filelist metadata downloading, you can add the filelists value to the optional_metadata_types option in the /etc/dnf/dnf.conf configuration file.
The DNF debug plugin is removed
The DNF debug plugin, which included the dnf debug-dump and dnf debug-restore commands, is removed from the dnf-plugins-core package. Depending on your scenario, you can use the following commands instead:
-
dnf list --installedordnf repoquery --installedto list packages installed on your system. -
dnf repolist -vto list repositories enabled on your system. dnf install $(</tmp/list)to replicate packages installed on a source system to the target system. For example:Save a list of packages installed on a source system into the
/tmp/listfile:$ dnf repoquery --installed >/tmp/list-
Copy the
/tmp/listfile to the target system. Replicate packages on the target system:
$ dnf install $(</tmp/list)"
The support for the libreport library is removed
The support for the libreport library is removed from DNF. If you want to attach DNF logs to your bug reports, you need to do it manually or by using a different mechanism.
dnf-plugins-core rebased to version 4.7.0
The dnf-plugins-core package has been rebased to version 4.7.0 that provides a new python3-dnf-plugin-pre-transaction-actions package. This package includes a new pre-transaction-actions DNF plugin that allows you to execute a command upon starting an RPM transaction. For more information, see the dnf-pre-transaction-actions(8) manual page on your system.