Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 3. New features
This part describes new features and major enhancements introduced in Red Hat Enterprise Linux 9.6.
3.1. Installer and image creation Copier lienLien copié sur presse-papiers!
Added Kickstart support for CA certificates to enable encrypted DNS configuration during installation
Support for the %certificate section in the Kickstart file is added to enable the installation of CA certificates into the installation program environment and the installed system. This simplifies the setup process and ensures that the encrypted DNS is operational after installation, reducing manual configuration and security gaps. The certificates are inlined in the Base64 ASCII format and imported through the --dir and --filename options. This enhancement facilitates encrypted DNS configuration as part of Zero Trust Architecture requirements. The encrypted DNS set up during installation ensures secure DNS resolution from the start, improving security and compliance in automated deployments.
Jira:RHEL-61430[1]
RHEL image builder supports creating disk images with advanced partitioning
With this enhancement, RHEL image builderl gained more options for customizing partitioning and creating disk images with advanced partitioning layout. You can create disk images with custom mountpoints, including custom mount options, LVM-based partitions and LVM-based SWAP to, for example, change the size of the / and the /boot directories by using a blueprint file.
Jira:RHELDOCS-19584[1]
bootc-image-builder now supports creating image mode disk images with advanced partitioning
With this enhancement, the bootc-image-builder tool gained more options for customizing partitioning and creating disk images with advanced partitioning layout. You can use the bootc-image-builder tool to create disk images of image-mode RHEL with custom mountpoints, including custom mount options, LVM-based partitions and LVM-based SWAP to, for example, change the size of the / and the /boot directories by using the config.toml.
Jira:RHELDOCS-19291[1]
The bootc image builder tool is generally available in RHEL
The bootc image builder tool, now is generally available in RHEL, works as a container to easily create and deploy compatible disk images from the bootc container inputs. After running your container image with bootc image builder, you can generate images for the architecture that you need. Then, you can deploy the resulting image on VMs, clouds, or servers. You can easily update the images with the bootc, instead of having to regenerate the content with bootc image builder every time a new update is required.
Jira:RHELDOCS-17468[1]
3.2. Security Copier lienLien copié sur presse-papiers!
pcsd now provides the --disable-polkit option
With this update, you can turn off loading the PolicyKit authorization framework by starting the pcsd service with the --disable-polkit option. Running pcsd without polkit enables accessing PKCS #11 devices in limited environments such as the initial RAM disk. As a result, the Clevis decryption client can use a PKCS #11 device for automated unlocking LUKS-encrypted volumes at boot time.
ssh now provides a link with additional details about SSH login error messages
In case of an early error, the ssh command-line tool provides a link to the Red Hat Customer Portal page that contains additional details about common error messages and steps for resolving them. This helps troubleshoot SSH login problems when you use interactive mode.
Jira:RHEL-33809[1]
pkcs-tool now shows object URI
With this update, the pkcs11-tool -L and pkcs11-tool -O commands contain the uri: field in their outputs. You can use the URI information when configuring the pkcs11 Clevis pin for automated unlocking LUKS-encrypted drives with PKCS #11 devices.
CBC ciphers can now be blocked in crypto-policies
With this update, crypto-policies uses the openssl -CBC CipherString directive. As a result, CBC cipher suites are disabled in OpenSSL if none of them are enabled in crypto-policies.
Jira:RHEL-76524[1]
nettle rebased to 3.10.1
The nettle library package has been rebased to upstream version 3.10.1. This version provides various bug fixes, optimizations and enhancements, most notably:
- Performance has been improved on 64-bit PowerPC architectures (SHA-256, AES decryption, and AES-GCM).
- DRBG-CTR-AES256, a new deterministic random bit generator, has been added.
- RSA-OAEP, an RSA encryption/decryption that uses a new OAEP padding scheme, has been added.
- SHAKE-128, an arbitrary length hash function of the SHA-3 family, has been added.
- Streaming API for SHAKE-128 and SHAKE-256 has been added.
- The MD5 assembly has been removed. This might incur a slight performance impact.
Jira:RHEL-52740[1]
Rsyslog rebased to 8.2412.0
The rsyslog packages have been rebased to upstream version 8.2412.0 in RHEL 9.6. Among other fixes and enhancements, you can bind a ruleset to the imjournal module. With this optimization, log messages can be filtered and processed at the input stage, which reduces the load on the main message queue. This minimizes resource utilization and ensures smoother handling of high-volume logs.
OpenSCAP rebased to 1.3.12
The OpenSCAP packages have been rebased to upstream version 1.3.12. This version provides bug fixes and various enhancements. For additional information, see the OpenSCAP release notes.
Clevis rebased to version 21 with support for PKCS #11
The clevis packages have been upgraded to version 21. This version contains many enhancements and bug fixes, notably:
-
Added the
clevis-pin-pkcs11subpackage which provides thepkcs11pin for unlocking LUKS-encrypted volumes using a PKCS #11 device (smart card). -
Added two checks to the
clevis-udisks2subpackage. - Added a fix that prevents "Address in use" errors.
New Keylime policy management tool
The new keylime-policy tool integrates all management tasks of Keylime runtime policies and measured boot policies and improves the performance of generating policies.
SELinux assigns a particular type to /dev/hfi1_0
With this update, the hfi1_device_t type is assigned to the /dev/hfi1_0 device in the SELinux policy. As a result, SELinux can properly control access to the device.
Jira:RHEL-54996[1]
Additional services confined in the SELinux policy
This update adds additional rules to the SELinux policy that confine the following systemd services:
-
iio-sensor-proxy -
power-profiles-daemon -
switcheroo-control -
samba-bgqd
As a result, these services no longer run with the unconfined_service_t SELinux label, which violated the CIS Server Level 2 benchmark "Ensure No Daemons are Unconfined by SELinux" rule, and run successfully in SELinux enforcing mode.
Jira:RHEL-17346, Jira:RHEL-53124, Jira:RHEL-61117, Jira:RHEL-24268
SCAP Security Guide rebased to 0.1.76
For additional information, see the SCAP Security Guide release notes.
Keylime requires HTTPS for revocation notifications
The Keylime components require the use of the more secure HTTPS protocol for revocation notification webhooks instead of HTTP. As a consequence, the Keylime verifier now requires the revocation notification webhook server CA certificate. You can add it to the trusted_server_ca configuration option or add it to the system truststore.
3.3. RHEL for Edge Copier lienLien copié sur presse-papiers!
Support for deploying image mode for RHEL systems by using FDO
With this enhancement, now you can deploy an image mode for RHEL systems by using the FIDO Device Onboarding (FDO) process, available as a Technology Preview, to deliver the configuration to this system. Include a Kickstart file in an ISO build to configure any part of the installation process except the base image deployment. If you use an ISO with a bootc container base image, bootc-image-builder automatically installs ostreecontainer, the command to install the container image. You can still configure anything, except the ostreecontainer command.
Jira:RHELDOCS-19610[1]
RHEL provides the greenboot package in version 0.15.8
The greenboot packages have been updated to version 0.15.8, which provides bug fixes and enhancements. Notable changes include:
-
Fixed the
bootccompatibility withrpm-ostreewhenbootcis available alongsiderpm-ostree. -
General bug fix: If
bootcis not available, rollback usingrpm-ostree.
3.4. Software management Copier lienLien copié sur presse-papiers!
Image mode for RHEL users can now use dnf --transient to perform package transactions that reset on reboot
Previously, Image mode for RHEL users could transiently install, remove, and upgrade packages by running the bootc usr-overlay command to unlock the system and then make changes by running DNF commands. If you use bootc usr-overlay, when the system reboots, the /usr directory overlay disappears and all changes made to it will reset. Changes to other directories, including configuration in /etc and program state in /var, persist across reboots.
With this update, a new --transient flag and a new persistence configuration option have been added to DNF to improve the user experience on bootc systems. You can now skip the bootc usr-overlay step by using either of the following options:
-
Use the
dnf --transientcommand. -
Set the
persistenceoption totransientin thednf.conffile.
Unlike when using bootc usr-overlay, --transient and persistence=transient ensure that the /usr directory remains read-only to other processes before, during, and after the transaction.
For example, to transiently install the make package, enter:
dnf install --transient make
# dnf install --transient make
Improved error message when using DNF on a locked OSTree or bootc system
OSTree and bootc systems cannot be managed by DNF by default. Previously, a DNF error message did not say that this was an expected behavior and how you could change it. With this update, DNF detects whether it runs on a read-only OSTree or bootc system and informs you where to find more details about how to manage such systems with DNF.
DNF Automatic can now notify users about a failed update
With this update, a new send_error_messages boolean option has been added to the [emitters] section of the /etc/dnf/automatic.conf configuration file. As a result, if you set send_error_messages to yes, the DNF Automatic tool notifies you about failed automatic updates by using an emitter configured in the emit_via option.
This feature is disabled by default.
3.5. Shells and command-line tools Copier lienLien copié sur presse-papiers!
ignoreduplicates option is now available
With this enhancement, the ignoreduplicates option is added in the logrotate configuration. The option ignores any duplicate file paths in the logrotate configuration, and is not enabled by default.
Jira:RHEL-5711[1]
maven-openjdk21 package is now available
RHEL supports running Maven with multiple Java versions, allowing users to select their preferred JDK. With this enhancement, a new maven-openjdk21 package has been added to enable seamless execution of Maven with OpenJDK 21. The notable changes include the following:
- Expanded set of supported Java runtimes for Maven workflows.
- Improved flexibility for development and build environments.
openCryptoki rebased to version 3.24.0
The openCryptoki packages are rebased to version 3.24.0. Support has been added for the following:
- CCA token on non-IBM Z platforms (x86_64, ppc64)
- IBM Dilithium
- RSA-OAEP with SHA224, SHA384, and SHA512 on encrypt or decrypt.
- PKCS#11 v3.0 SHA3 mechanisms
- SHA-2 mechanisms
- SHA based key derivation mechanisms
- Protecting tokens with a token specific user group
- New libica AES-GCM API using the KMA instruction on z14 and later
Jira:RHEL-50064[1]
libva rebased to 2.22.0
The libva package is rebased to 2.22.0. Notable enhancement includes the following:
- Added VVC decode LibVA interface
-
Support added for
linux-dmabuf
Jira:RHEL-59629[1]
A new module stream maven 3.9 is available
A new update to the maven 3.9 package is now available. In version 3.9, maven is not compatible with maven 2. The notable enhancement include the following:
-
The
maven-openjdk21package is now available. It enables seamless execution of Maven with theOpenJDK 21package. TheOpenJDK 21package provides an expanded set of supported Java run times for Maven workflows, improving flexibility for development and build environments.
Multipath partner device is now supported
The drmgr is a utility for managing logical and physical hot plug capable resources. With this enhancement, drmgr supports hot plug addition and removal of a multipath drive.
Jira:RHEL-30880[1]
3.6. Infrastructure services Copier lienLien copié sur presse-papiers!
Weak ciphers can be now disabled in CUPS configuration
Previously, when you disabled the weak cipher in the CUPS configurations, the configuration changes did not take effect. With this enhancement, if a user wants to disable a certain cryptographic algorithm via system policy, CUPS honors the system settings, if SSLOptions NoSystem is not in CUPS configuration files, and CUPS does not offer the system-wide disabled algorithm anymore.
As a result, to prevent possible breakage of existing configurations, the directive SSLOptions NoSystem is set in the /etc/cups/cupsd.conf and /etc/cups/client.conf files. If a user wants cupsd daemon or applications using libcups to follow system crypto policy, they can remove the mentioned SSLOptions directive from the respective configuration files:
-
/etc/cups/cupsd.conf: if thecupsddaemon is expected to follow system crypto policy. -
/etc/cups/client.conf: if applications usinglibcupsare expected to follow system crypto policy.
Jira:RHEL-68414[1]
3.7. Networking Copier lienLien copié sur presse-papiers!
Added support for E825C interface
Added support for Ethernet functionality of the E825C network interface for Intel Granite Rapids-D platform to the ice driver.
Jira:RHEL-57827[1]
The i40e driver supports automatic reset behavior on MDD events
The Intel® Network Adapter Driver for PCIe* 40 Gigabit Ethernet can now reset problematic Single Root I/O Virtualization (SR-IOV) virtual functions (VFs) when it detects a malicious driver detection (MDD) event. You can activate this automatic reset behavior through the new mdd-auto-reset-vf option as in the following example command:
ethtool --set-priv-flags _ethX_ *mdd-auto-reset-vf* on
ethtool --set-priv-flags _ethX_ *mdd-auto-reset-vf* on
When the VF sends malformed packets classified as malicious, it can cause the Tx queue to freeze, which makes it unusable for several minutes. However, with mdd-auto-reset-vf enabled, a graceful VF reset automatically restores operational state when an MDD event occurs.
Jira:RHEL-54223[1]
NetworkManager now supports configuration of FEC encoding on NIC
With this enhancement, NetworkManager supports forward error correction (FEC) encoding support on the network interface controller (NIC). By disabling FEC encoding on NIC, you will have reduced overhead of redundant data transmission and lower latency of network traffic. Configure FEC settings on NIC by using the following steps:
Configure the FEC settings by using the
nmcliutility:nmcli con mod __<example_connection_name>__ ethtool.fec off
# nmcli con mod __<example_connection_name>__ ethtool.fec offCopy to Clipboard Copied! Toggle word wrap Toggle overflow Bring the interface down to apply the ethtool FEC encoding setting:
nmcli con down __<example_connection_name>__
# nmcli con down __<example_connection_name>__Copy to Clipboard Copied! Toggle word wrap Toggle overflow Bring the interface up to apply the ethtool FEC encoding setting:
nmcli con up __<example_connection_name>__
# nmcli con up __<example_connection_name>__Copy to Clipboard Copied! Toggle word wrap Toggle overflow Use the
ethtoolutility to:ethtool --show-fec __<example_device_name>__
# ethtool --show-fec __<example_device_name>__Copy to Clipboard Copied! Toggle word wrap Toggle overflow
NetworkManager can automatically add routes to DNS servers
With the ipv4.routed-dns parameter, you can configure NetworkManager so that name servers are reachable only through the correct network interface. Apart from systemd-resolved and dnsmasq backend DNS services in NetworkManager, other backend services do not support binding name servers to the correct network interface. As a result, you can use NetworkManager to add an explicit route to the name server through the related network interface.
NetworkManager can set ipv4.dhcp-send-hostname`to `false by default
With this feature, you can set the ipv4.dhcp-send-hostname option in NetworkManager to false for all IPv4 connections. To disable this option by default, add the configuration snippet to the /etc/NetworkManager/conf.d/99-no-hostname.conf file as follows:
[connection] match-device=type:ethernet ipv4.dhcp-send-hostname=0
[connection]
match-device=type:ethernet
ipv4.dhcp-send-hostname=0
You can also set this option for IPv6.
Jira:RHEL-32685[1]
NetworkManager supports ip-ping-addresses and ip-ping-timeout properties for the connection setting
With this enhancement, you can add an IP address to the ip-ping-addresses and set a timeout with ip-ping-timeout settings. As a result, you can ensure that remote services, such as network file system (NFS), are mounted only after the target network is reachable.
nmstate supports the require-id-on-certificate setting on Libreswan configuration
With this enhancement, libreswan, an implementation of Internet Protocol Security (IPsec) specification, now supports the require-id-on-certificate setting for VPN configurations by using NetworkManager. With this feature, you can configure Subject Alternative Name (SAN) validation by using the require-id-on-certificate option. As a result, this implementation correctly enforces SAN validation based on the specified setting:
-
No SAN validation is performed when set to
no -
SAN are validated when set to
yes
Jira:RHEL-58040[1]
NetworkManager DHCP Client supports IPv6-only preferred option for DHCPv4
With this enhancement, the IPv6-only preferred option for DHCPv4 is available for NetworkManager clients for the supported DHCP server. You can use this option in two ways: globally and locally. If enabled globally, this option allows and prioritizes only IPv6 addresses in dual networks that support both IPv4 and IPv6. If enabled locally by setting the ipv6.method disabled option, IPv4 addresses assigned manually are prioritized over DHCP addresses.
xdp-tools rebased to version 1.5.1
The xdp-tools package has been upgraded to version 1.5.1, which provides multiple enhancements and bug fixes. Notable changes include:
-
Added the
xdp-forwardutility that enables XDP-accelerated packet forwarding between supported network devices. -
Updated the
xdp-trafficgenutility to support specifying User Datagram Protocol (UDP) packet sizes. - Added a new option-based API for creating XDP sockets (XSK) and user memory (UMEM) objects.
wpa_supplicant was rebased to version 2.11
The wpa_supplicant utility has been upgraded to version 2.11, which provides multiple bug fixes and enhancements. Notable changes include:
- Removed incorrect Extensible Authentication Protocol (EAP) Session-Id length constraint.
- Added support for OpenSSL 3.0 API changes.
- The CONFIG_IEEE80211BE configuration option enabled for Extremely High Throughput (EHT) operation.
-
Support for explicit Service Set Identifier (SSID) protection in 4-way handshake is disabled by default. You can enable it using the
ssid_protection=1configuration option.
For more details, see the upstream changelog.
iproute2 rebased to version 6.11.0
The iproute2 package has been upgraded to version 6.11.0, which provides multiple bug fixes and enhancements. Notable changes include:
-
Added support for the
mst_enabledparameter - Added support for setting a Multiple Spanning Tree Instance (MSTI) for VLANs
- Added support for Multiple Spanning Tree (MST) states
-
Fixed
libbpfversion check for ENABLE_BPF_SKSTORAGE_SUPPORT configuration option - Added support for Berkeley Packet Filter (BPF) socket-local storage
-
Removed support for unused and obsolete queueing disciplines (
qdiscs) and classifiers - Several NULL derefence fixes and code optimizations
For full extent, see the upstream article.
Bonding device supports IPsec HW offload with ESN
Previously, a bonding device did not support the IPSec Hardware HW offload feature with Extended Sequence Numbers (ESN). Consequently, setting up IPsec with HW offload and ESN failed on the bonding device. With this fix, you can setup IPsec HW offload with ESN on the bonding device, considering the bond ports already support this feature. As a result, the bonding device offloads IPsec traffic correctly.
Jira:RHEL-50630[1]
New "drop reasons" in the VXLAN implementation
In this update of the RHEL kernel, visibility patches were introduced which add new "drop reasons" in the Virtual eXtensible Local Area Networking (VXLAN) implementation. Visibility patches are important for troubleshooting problems, and thanks to these additions most of the dropped packets in VXLAN now have a reason attached to provide extra context.
Jira:RHEL-68063[1]
Network drivers for modems in RHEL are now fully supported
In the US, device manufacturers support Federal Communications Commission (FCC) locking as the default setting. FCC provides a lock to bind WWAN drivers to a specific system where WWAN drivers provide a channel to communicate with modems.
Based on the modem PCI ID, manufacturers may offer tools to unlock ModemManager, but they are not integrated in RHEL because they contain closed-source and private binaries.
A modem remains unusable if not unlocked previously, even if the WWAN driver is compatible and functional.
Red Hat Enterprise Linux provides the drivers for the following modems with full support:
- Intel IPC over Shared Memory (IOSM) - Intel XMM 7360 LTE Advanced
- Mediatek t7xx (WWAN) - Fibocom FM350GL
- Intel IPC over Shared Memory (IOSM) - Fibocom L860GL modem
- Qualcomm devices supported in upstream
Jira:RHELDOCS-16760[1]
nmstate now supports configuring IPvLAN
The nmstate API now supports configuring IPvLAN, a virtual network interface, that enhances network management and container networking.
IPvLAN supports the following modes:
-
l2: IPvLAN receives and responds to ARP requests, which improves performance but has less control on the network traffic. -
l3: IPvLAN processes only layer 3 traffic and above. IPvLAN does not respond to ARP requests and you must manually configure the ARP table entries for the IPvLAN IP addresses on the relevant devices. -
l3s: IPvLAN processes the same way as in l3 mode, except that both egress and ingress traffic of a relevant device passes through thenetfilterchain in the default namespace. -
Private: Theprivatesetting controls the isolation between the IPvLAN interface and other devices on the network. -
Vepa: When enabled, IPvLAN forwards traffic through a central switch, which improves the network management by reducing broadcast traffic.
In the following example, you can setup IPvLAN for l3 mode:
3.8. Kernel Copier lienLien copié sur presse-papiers!
Kernel version in RHEL 9.6
Red Hat Enterprise Linux 9.6 is distributed with the kernel version 5.14.0-570.12.1.
The eBPF facility has been rebased to Linux kernel version 6.12
Notable changes and enhancements include the following:
- BPF token, which supports delegating a subset of BPF functionality from privileged system-wide daemons to a trusted and unprivileged application.
- BPF arena, a sparse shared memory region between the BPF program and user space that makes pointers within the arena work seamlessly.
-
may_gotoinstruction, which is a contract between the verifier and the program. The verifier allows the program to execute loops (provided that they run well) in most situations, but reserves the right to stop it. - BPF verifier support for static sub-program calls in spin lock critical sections.
-
Support for attaching
kprobeBPF programs in a session mode where the program is attached to both the function entry and return. The entry program can decide if the return program gets executed, and the programs can share au64cookie value. - The ability to specify and retrieve the BPF cookie for raw tracepoint programs to ease migration from classic to raw tracepoints.
-
A new
bpf_wqAPI has been introduced to provide a mechanism for deferring events. -
Several new
kfuncs(kernel functions callable from BPF programs) are added for calling crypto APIs, enabling/disabling preemption, generic bits iterators, and various VFS operations. -
Support declaring arrays of
kptr,bpf_rb_root, andbpf_list_headfrom BPF programs. -
Support for detection of
kfuncsfor the running kernel and dumping compilablekfuncprototypes. - Support for 64-bit BPF v4 CPU instructions for PowerPC.
- Support for resilient split BTF, which cuts down on duplication and makes BTF as compact as possible WRT BTF from modules.
Jira:RHEL-63880[1]
View the number of instances of each cgroup from cgroup.stat
For cgroup v2, the cgroup.stat control file is enhanced to show the number of instances of each cgroup subsystem in the unified hierarchy, including any dying ones.
The /proc/cgroups file used to show the number of cgroups for each cgroup subsystem is designed for cgroup v1. With cgroup v2, the information provided in /proc/cgroups is no longer applicable. This file is deprecated for cgroup v2.
Use the cgroup.stat file of the root cgroup to get the correct number of cgroup subsystems. This is the replacement of /proc/cgroups for cgroup v2.
Jira:RHEL-36267[1]
New option to disable idle states locally on CPUs during rtla-timerlat testing: deepest-idle-state
-
The arguments for the
deepest-idle-stateare the number of the deepest allowed idle state. If -1 is the value in the argument, and disables idle states on all CPUs. -
In the
rtla-timerlatinstead of using/dev/cpu_dma_latencyto disable the CPUs in the idle state globally, thedeepest-idle-stateoption is added to set the deepest allowed idle state for CPUs where measurements are running.
As a result, you can save power and reflect the real-time workload during rtls-timerlat testing and use the deepest-idle-state instead of using the /dev/cpu_dma_latency to disable them globally.
Jira:RHEL-69522[1]
kpatch-dnf plugin is updated with improved kernel management
With the updated kpatch-dnf plugin, kernel upgrades are closely aligned with kpatch support. Administrators gain the flexibility to focus kernel updates on those supported by kpatch, leading to more reliable system upgrades and overall stability.
Jira:RHEL-77113[1]
Containerization of the rteval utility
With this update, you can run the rteval utility with all its runtime dependencies from a container image publicly available through the Quay.io container registry. This feature also enables you to, for example:
-
Use the deployment flexibility, where older RHEL versions can get newer versions of
rteval. -
Run multiple
rtevalinstances on the same or multiple hosts. -
Allocate specific system resources to
rteval, which ensures fine-grained control over resource usage.
Alternatively, you can use the dockerfile template to build your own container image with rteval. You can find this dockerfile and the README file with more information in the upstream repository.
Jira:RHEL-9909[1]
TPM_TIS rebased to upstream 6.7 for Lenovo hardware
This release introduces an updated version of the Trusted Platform Module (TPM) Integration Services (TPM_TIS) firmware to upstream version 6.7. This update addresses stability and security enhancements for RHEL 9.6.
Jira:RHEL-52747[1]
kdump is rebased to 6.10
This update incorporates the latest improvements, bug fixes, and features from the 6.10 kernel related to crash dumping.
Landlock, a new Linux Security Module (LSM) is released
RHEL 9.6 introduces Landlock, a new security feature that makes your containers safer. Landlock sets strict rules for processes such as Podman to limit access to the file system through the kernel API, defining rules for themselves regardless of privilege level and allowing users to create hard limits over the accessible scope of the processes.
With Landlock, you can build programs that mitigate potential risks associated with misconfigured or maliciously targeted processes. This makes containers and the whole system more secure.
New integration testing to validate kdump procedures to prevent system failure
With this enhancement, you can check the log file for kdump procedures after any software or hardware updates to prevent system failure. After the analysis of the output log files, the configuration entries, such as memory issues or blacklist of some drivers, are corrected to validate the kdump procedures and generate the vmcore. This ensures that the kdump procedures are validated and corrected before a system crash after any software or hardware update.
Jira:RHEL-32060[1]
New timerlat-interval INTV_US and cyclictest-interval INTV_US options
With this enhancement, you can use the following new options of the rteval command to modify the base or periodic interval option in running timerlat or cyclictest threads:
-
timerlat-interval INTV_US -
cyclictest-interval INTV_US
Note that if you do not use either of these options with rteval, the default value of 100 microseconds is applied.
Jira:RHEL-67423[1]
New option to disable idle states locally on latency testing with cyclictest
-
The
cyclictesttool sets/dev/cpu_dma_latencyto 0 by default to avoid increased latency when waking up from idle, which disables idle states on all CPUs. -
The new
deepest-idle-stateoption only disables idle states on CPUs which are selected for the testing. The argument specifies the deepest allowed idle state, setting it to-1disables all idle states on the measured CPUs. -
Tuning with the
cyclictestis supposed to reflect the real-time workload testing, and thus using thedeepest-idle-stateinstead of using the/dev/cpu_dma_latencyto disable the CPU idle states reflects a use case where the real-time workload only disables idle states on the CPU where it is running. -
As a result, the
cyclictestcoverage of addressing all use cases is increased, and power consumption decreases.
Jira:RHEL-65487[1]
NVMf-FC kdump is now supported on the IBM Power
NVMf-FC kdump now supports the IBM Power system for running kexec-tools. This allows the capture of system memory dumps over a fiber channel network by using the NVMe storage devices for high-speed and low-latency access to storage for crash dump data.
Jira:RHEL-11471[1]
3.9. Boot loader Copier lienLien copié sur presse-papiers!
GRUB Boot loader has been hardened in RHEL 9.6
This enhancement includes fixes for various security flaws discovered as part of a pro-active hardening effort in the GRUB2 code. This ongoing proactive fuzzing effort of the GRUB boot loader yielded several flaws and vulnerabilities, some of which were severe enough to be CVEs, such as the following:
-
CVE-2024-45774
grub2: reader/jpeg: Heap out-of-bounds (OOB) Write during JPEG parsing -
CVE-2024-45775
grub2: commands/extcmd: Missing check for failed allocation -
CVE-2024-45776
grub2: grub-core/gettext: Integer overflow leads to Heap OOB Write and Read. -
CVE-2024-45781
grub2: fs/ufs: OOB write in the heap -
CVE-2024-45783
grub2: fs/hfs+:refcountcan be decremented twice -
CVE-2025-0622
grub2: command/gpg: Use-after-free due to hooks not being removed on module unload -
CVE-2025-0624:
net: OOB write ingrub_net_search_config_file() -
CVE-2025-0677
grub2: UFS: Integer overflow might lead to heap based out-of-bounds write when handling symlinks -
CVE-2025-0690
grub2: read: Integer overflow might lead to out-of-bounds write
Many of these flaws are buffer or integer overflows where GRUB did not check the integrity or length of variables resulting in the possibility for heap out-of-bounds writes. These were found for several filesystems in different contexts. The most severe one, CVE-2025-0624 with a CVSS v3 score of 7.6, is also a potential buffer overflow involving a user-controlled environment variable during network boot. These flaws could lead to overwriting sensitive data up to malicious code execution, and thus bypassing Secure Boot.
All of these flaws and vulnerabilities have been fixed in RHEL 9.6.
Jira:RHELDOCS-20163[1]
3.10. File systems and storage Copier lienLien copié sur presse-papiers!
EROFS file system is now supported
EROFS is a lightweight generic read-only file system suitable for various read-only use cases, such as embedded devices or containers. It provides deduplication and transparent compression as options for scenarios that require them.
For more information, see the erofs documentation.
Jira:RHELDOCS-18451[1]
snapm is now available in RHEL
Snapshot Manager (snapm) is a new component designed to assist in managing system state snapshots. You can use it to roll back updates or changes, and boot into previous system snapshots. Managing snapshots across multiple volumes and configuring boot entries for snapshot boot and snapshot rollback can often be complex and prone to errors. Snapshot Manager automates these common tasks and integrates seamlessly with Boom Boot Manager, simplifying the process. With this update, you can easily take snapshots of the system state, apply updates, and revert to the previous system state if necessary.
Jira:RHEL-59005[1]
NFS with TLS is fully supported
Network File System (NFS) with Transport Layer Security (TLS), introduced in RHEL 9.4 as a Technology Preview, is now fully supported. This feature enhances NFS security by enabling TLS for Remote Procedure Call (RPC) traffic, ensuring encrypted communication between clients and servers. For details, see Configuring an NFS server with TLS support.
Note that NFS with TLS relies on support from kernel TLS (kTLS). The kTLS feature for general use is provided as a Technology Preview. For details see the release notes in the Technology previews chapter.
Jira:RHEL-59704[1]
VFS mnt_idmap compile-time checking changes backported
This enhancement minimizes conflicts that might occur during the backporting of subsequent fixes or features. As a result, the risk of regressions with subsequent backports is reduced.
Jira:RHEL-33888[1]
CIFS client provides the ability to create special files under SMB shares
Common Internet File System (CIFS) client has the ability to create native Server Message Block (SMB), Network File System (NFS) or Windows Subsystem for Linux (WSL) symlinks. Use the new symlink=default|none|native|unix|mfsymlinks|sfu|nfs|wsl mount option to either completely disallow creating symlinks or to select what kind of symlinks will be created by the client. You can also create special files, such as character devices, block devices, pipes, and sockets, through NFS or WSL reparse points by using the reparse=default|none|nfs|wsl mount option. To create native Windows sockets that are supported by Windows applications on NT File System (NTFS) volumes, use the nativesocket mount option.
Jira:RHEL-76046[1]
3.11. High availability and clusters Copier lienLien copié sur presse-papiers!
Deleting multiple resources with a single pcs command
Before this update, the pcs resource delete, the pcs resource remove, the pcs stonith delete and the pcs stonith remove commands supported the removal of only one resource at a time. With this update, you can now delete multiple resources at once with a single command.
New pcs tag command option for displaying cluster resource tags in text, JSON, and command formats
The pcs tag [config] command now supports the --output-format option for the following use cases:
-
Displaying the configured text in plain text format by specifying
--output-format=text. This is the default value for this option. -
Displaying the commands created from the current cluster tags configuration by specifying
--output-format=cmd. You can use these commands to re-create configured tags on a different system. -
Displaying the configured tags in JSON format by specifying
--output-format=json, which is suitable for machine parsing.
Jira:RHEL-46284[1]
Support for exporting fencing level configuration in JSON format and as pcs commands
The pcs stonith config and the pcs stonith level config commands now support the --output-format= option to display the fencing level configuration in JSON format and as pcs commands.
-
Specifying
--output-format=cmddisplays thepcscommands created from the current cluster configuration that configure fencing levels. You can use these commands to re-create configured fencing levels on a different system. -
Specifying
--output-format=jsondisplays the fencing level configuration in JSON format, which is suitable for machine parsing.
Removing Booth cluster tickets from the CIB after removal from the Booth configuration
After you remove a Booth cluster ticket by using the pcs booth ticket remove command, the state of the Booth ticket remains loaded in the Cluster Information Base (CIB). This is also the case after you remove a ticket from the Booth configuration on one site and pull the Booth configuration to another site by using the pcs booth pull command. This might cause problems when you configure a ticket constraint, because a ticket constraint can be granted even after a ticket has been removed. As a consequence, the cluster might freeze or fence a node. As of RHEL 9.6, you can prevent this by removing a Booth ticket from the CIB with the pcs booth ticket cleanup command.
For information about removing a Booth ticket from the CIB, see Removing a Booth ticket.
3.12. Dynamic programming languages, web and database servers Copier lienLien copié sur presse-papiers!
A new module stream: mysql:8.4
MySQL 8.4 is now available as a new module stream, mysql:8.4. Notable enhancements over the previously available version 8.0 include:
- Enhancements to password management: Administrators can now enforce password expiration, lengths, strength, reuse policy, and other password-related settings.
-
Authentication: The
caching_sha2_passwordplugin is now the default and replaces themysql_native_passwordplugin to increase the security. -
Backup Compatibility: The
mysqldumputility now provides an--output-as-versionoption which enables logical backups to be compatible with older MySQL versions. -
EXPLAIN: This statement can now display results in JSON format. Deprecation and removal: The following features, which were previously deprecated have been removed:
-
The
mysqlpumputility -
The
mysql_native_passwordauthentication plugin -
The
mysql_upgradeutility
-
The
For more information about changes in MySQL 8.4, see Notable differences between MySQL 8.0 and MySQL 8.4.
For more information about MariaDB, see Using MariaDB.
To install the mysql:8.4 stream, enter:
dnf module install mysql:8.4
# dnf module install mysql:8.4
If you want to upgrade from MySQL 8.0, see Upgrading from MySQL 8.0 to MySQL 8.4.
For information about the length of support for the mysql module streams, see Red Hat Enterprise Linux Application Streams Life Cycle.
Jira:RHEL-68305[1]
ARGON2 password hashing is supported in PHP 8.3
PHP 8.3 is now available as the php:8.3 module stream. With this enhancement, support for the ARGON2I and ARGON2ID password hashing algorithms, provided by the openssl extension, is now available.
nginx 1.26 module stream is now available
The nginx 1.26 module stream includes various bug fixes and enhancements. Notable changes include:
- HTTP/2 support is now available on a per-server basis.
- Virtual servers can now be used with the stream module.
- Stream connections are now passed to listen sockets.
- Startup performance improvements are made for some complex configurations
An instantiated service support is now available. The
nginx@.serviceunit is an instantiated template service. An instance of this unit uses the/etc/nginx/<INSTANCE>.confconfiguration file, where INSTANCE is replaced with the instance name. To allow multiple instances of thenginxserver to run simultaneously, you must change the following configuration:- pid
- access_log
- error_log to pick non-conflicting paths, and listen to choose different ports.
You can check the example configuration file /usr/share/doc/nginx/instance.conf to understand how to make such changes.
Jira:RHEL-73508[1]
New php:8.3 module stream is now available
The RHEL 9.6 adds PHP 8.3 as a new php:8.3 module stream. Notable enhancements include:
- Typed class constants
- Dynamic class constant fetch
-
New
#[\Override]attribute - Deep-cloning of readonly properties
To install the php:8.3 module stream, use the following command:
dnf module install php:8.3
# dnf module install php:8.3
For more information, see the following resources:
If you want to upgrade from the php:8.2 stream, see Switching to a later stream.
Jira:RHEL-21448[1]
3.13. Compilers and development tools Copier lienLien copié sur presse-papiers!
LLVM Toolset updated to 19.1.7
LLVM Toolset has been updated to version 19.1.7.
Notable changes of the LLVM compiler:
- LLVM now uses debug records, a more efficient representation for debug information.
Notable updates of the Clang:
- C++14 sized deallocation is now enabled by default.
- C++17 support has been completed.
- Improvements to C++20 support, especially around modules, concepts, and Class Template Argument Deduction (CTAD) have been added.
- Improvements to C++23, C++2c, C23, and C2y support have been added.
For more information, see the LLVM release notes and Clang release notes.
LLVM Toolset is a rolling Application Stream, and only the latest version is supported. For more information, see the Red Hat Enterprise Linux Application Streams Life Cycle document.
The llvm-doc package now contains only a reference to the upstream documentation.
In previous versions, the llvm-doc package contained the LLVM documentation in HTML format. With this update, the package provides only the /usr/share/doc/llvm/html/index.html file which contains a reference to the upstream documentation.
Clang and LLVM now support zstd for debug section compression
By default, Clang and LLVM tools use Zlib as the algorithm for debug section compression. With this enhancement, users can alternatively use the Zstandard (zstd) algorithm which can reach a higher compression rate than Zlib.
For example, if you want to use zstd compression when you compile a program with Clang, use the following command:
clang -Wa,-compress-debug-sections=zstd -Wl,--compress-debug-sections=zstd ...
$ clang -Wa,-compress-debug-sections=zstd -Wl,--compress-debug-sections=zstd ...
Rust Toolset rebased to version 1.84.1
Rust Toolset has been updated to version 1.84.1. Notable enhancements since the previously available version 1.79.0 include:
-
The new
LazyCellandLazyLocktypes delay the initialization until the first use. These extend the earlierOnceCellandOnceLocktypes with the initialization function included in each instance. - The new sort implementations in the standard library improve the runtime performance and compile times. They also try to detect cases where a comparator is not producing a total order, making that panic instead of returning unsorted data.
-
Precise capturing for opaque return types have been added. The new
use<..>syntax specifies the generic parameters and lifetimes used in animpl Traitreturn type. Many new features for
constcode have been added, for example:- Floating point support
-
constimmediates for inline assembly - References to statics
- Mutable reference and pointers
Many new features for
unsafecode have been added, for example:- Strict provenance APIs
-
&rawpointer syntax - Safely addressing statics
-
Declaring safe items in unsafe
externblocks
-
The Cargo dependency resolver is now version aware. If a dependency crate specifies its minimum supported Rust version, Cargo uses this information when it resolves the dependency graph instead of using the latest
semver-compatible crate version.
Compatibility notes:
-
The WebAssembly System Interface (WASI) target is changed from
rust-std-static-wasm32-wasitorust-std-static-wasm32-wasip1. You can select the WASI target also by using the--target wasm32-wasip1parameter on the command line. For more information, see the Changes to Rust’s WASI targets upstream blog post. -
The split panic hook and panic handler arguments
core::panic::PanicInfoandstd::panic::PanicInfoare now different types. -
extern "C"functions abort the process on uncaught panics. Useextern "C-unwind"instead to allow unwinding across ABI boundaries.
Rust Toolset is a rolling Application Stream, and Red Hat only supports the latest version. For more information, see the Red Hat Enterprise Linux Application Streams Life Cycle document.
PCP rebased to version 6.3.2
Performance Co-Pilot (PCP) has been updated to version 6.3.2. Notable changes over the previously available version 6.2.2 include:
-
pmdaopenmetrics: Virtual Large Language Model (vLLM) metrics are now added by default. -
pmdalinux: Support for Hyper-V balloon metrics was added. -
pmdalinux: The networking andhugepageskernel metrics were updated. -
pmdaamdgpu: This new agent collects metrics fromlibdrmandlibdrm-amdgpulibraries. -
pmdabpftrace: The start of this agent with many or slowbpftracescripts was fixed. -
pmdaproc: This agent now collects new metrics from AMD GPUs from the Linuxfdinfointerface. -
pmdahacluster: Metrics were updated to support new Pacemaker versions. -
pmdastatsd: A bug was fixed to avoid crashes under load. -
pcp-htop: AMD GPU metrics support was added. -
pcp-htop: Platform settings were fixed to enable screen tabs. -
pcp-xsos: This utility was added. For details seepcp-xsosprovides a rapid summary of a system. -
pmrep: Numerous configuration file metric sets were updated. -
pmlogconf: Numerous configuration file auto records were updated. -
libpcpandpmcd: Several security-hardening improvements were added. -
libpcpandpmlogger: Support for the optionalzstdcompression of archives was added.
The glibc library contains improved IBM POWER10 optimizations
With this enhancement, hardware support for the IBM POWER10 platform has been improved in the glibc library. As a result, the performance of the strcmp() and memchr() APIs has been significantly improved on this platform.
Jira:RHEL-24740[1]
valgrind rebased to version 3.24.0
The valgrind suite has been updated to version 3.24.0. Notable enhancements include:
-
The
--track-fds=yesoption now shows suppressible errors when using bad file descriptors, and the errors are written to the XML output. The warnings shown, if you do not use the option, are deprecated and will be removed in a future version. - Error messages now support Ada name demangling.
-
The
deflate-conversionfacility (z15/arch13) now supports the deflate compression call (DFLTCC) instruction on the IBM Z platform. -
On the IBM Z platform,
valgrindnow supports the instructions provided by the message security assist (MSA) facility and its 1-9 extensions. Valgrindnow supports the following new Linux system calls:-
open_tree -
move_mount -
fsopen -
fsconfig -
fsmount -
fspick -
landlock_create_ruleset -
landlock_add_rule -
landlock_restrict_self
-
libabigail rebased to version 2.6
The libabigail library has been updated to version 2.6. Notable changes include:
- Better support for Linux kernel module analysis by using the BPF Type Format (BTF) and Common Trace Format (CTF).
- Improved internal type comparison algorithms in the middle end.
-
Improved logging in
abipkgdiff,abidw, andabilintutilities - Numerous bug fixes.
For further changes, see the upstream release notes.
SystemTap rebased to version 5.2
The SystemTap tracing and probing tool has been updated to version 5.2.
A notable enhancement is the full activation of debuginfod-metadata based probes, based on elfutils 0.192. With this feature, you can write a systemtap script to target a full range of versions of a given binary or library by searching a debuginfod server for all matching names.
elfutils rebased to version 0.192
The elfutils package has been updated to version 0.192. Notable improvements include:
-
The
debuginfodservice can now perform a per-file signature verification to check the integrity by using the RPM Integrity Measurement Architecture (IMA) scheme from RHEL. -
A new
debuginfodAPI was added to query server metadata, such as querying the build ID from a file name. -
Debuginfodserver-side extraction of files from kerneldebuginfopackages is now significantly faster -
The
dwfl_set_sysroot,dwfl_frame_unwound_source, anddwfl_unwound_source_strfunctions were added to thelibdwlibrary. -
The
eu-stacktraceutility is available as a Technology Preview. For details, seeeu-stacktraceavailable as a Technology Preview.
The ld linker now detects if an application uses read, write, and execute permissions for a memory region
A memory region with read, write, and execute permissions at the same time is a potential point of attack because a buffer overflow can allow executable code to be injected into the memory and then executed.
With this enhancement, the ld linker detects whether an application uses a memory region with these 3 permissions and reports the following error for applications:
ld: error: <file_name> has a LOAD segment with RWX permissions
ld: error: <file_name> has a LOAD segment with RWX permissions
You can suppress the error by using ld with the -no-error-rwx-segments option. However, to prevent a potential risk in your application if the linker does report this error, modify your source code and change how you build your application so that the problem is eliminated.
Jira:RHEL-59802[1]
The ld linker now detects if an application uses an executable stack
A stack that is held in an executable region of memory is a potential point of attacks if, due to a buffer overrun, executable code is placed there.
With this enhancement, the ld linker detects whether an application is created with an executable stack and reports errors, such as the following:
error: creating an executable stack because of -z execstack command line option error: <file>: is triggering the generation of an executable stack (because it has an executable .note.GNU-stack section) error: <file>: is triggering the generation of an executable stack because it does not have a .note.GNU-stack section
error: creating an executable stack because of -z execstack command line option
error: <file>: is triggering the generation of an executable stack (because it has an executable .note.GNU-stack section)
error: <file>: is triggering the generation of an executable stack because it does not have a .note.GNU-stack section
You can suppress the error by using ld with the -no-error-execstack option. However, to prevent a potential risk in your application if ld reports the error, it is better to modify your source code and change the build machinery so that it does not use an executable stack.
Jira:RHEL-59801[1]
binutils now supports the arch15 extension of the IBM Z instruction set
With this enhancement, binutils supports the arch15 extensions of CPUs on the IBM Z platform. Developers can now use the new features provided by the arch15 extension in assembler source files or, when an updated compiler is available, also in compiled programs. This can result in smaller and faster programs.
Jira:RHEL-50068[1]
The boost-devel package provides BoostConfig.cmake and other official CMake scripts
This enhancement adds BoostConfig.cmake and other official CMake scripts to the boost-devel package. CMake uses these scripts in some cases to test if boost features exists. As a result, CMake projects that test for boost features work now more robustly.
Go Toolset rebased to version 1.23
Go Toolset has been updated to version 1.23. Notable enhancements include:
The
for-rangeloop accepts iterator functions of the following types:-
func(func() bool) -
func(func(K) bool) func(func(K, V) bool)Calls of the iterator argument function create the iteration values for the
for-rangeloop. For reference links, see the upstream release notes.
-
- The Go Toolchain can collect usage and breakage statistics to help the Go team to understand how the Go Toolchain is used and working. By default, Go Telemetry does not upload telemetry data and stores it only locally. For further information, see the upstream Go Telemetry documentation.
-
The
go vetsubcommand includes thestdversionanalyzer which flags references to symbols that are too new for the version of Go you use in the referring file. -
The
cmdandcgofeatures support the-ldflagsoption to pass flags to the C linker. Thegocommand uses this flag automatically to avoidargument list too longerrors when you use a very largeCGO_LDFLAGSenvironment variable. -
The
traceutility tolerates partially broken traces and attempts to recover the trace data. This is especially useful in case of crashes, because you can get the trace leading up to the crash. -
The traceback printed by the runtime after an unhandled panic or other fatal error carries indentation to distinguish the stack trace of the
goroutinefrom the firstgoroutine. - The compiler build time overhead of using profile-guided optimization was reduced to single-digit percentage.
-
The new
-bindnowlinker flag enables immediate function binding when building a dynamically-linked ELF binary. -
The
//go:linknamelinker directive no longer refer to internal symbols in the standard library and the runtime that are not marked with//go:linknameon their definition. -
If a program no longer refers to a
TimerorTicker, garbage collection cleans them up immediately even if theirStopmethod has not been called. The timer channel associated with aTimerorTickeris now unbuffered with capacity 0. This ensures that, every time aResetorStopmethod is called, no stale values are not sent or received after the call. -
The new
uniquepackage provides facilities for canonicalizing values, such asinterningorhash-consing. -
The new
iterpackage provides the basic definitions to work with user-defined iterators. -
The
slicesandmapspackages introduce several new functions that work with iterators. -
The new
structspackage provides types for struct fields that modify properties of the containing struct type, such as memory layout. Minor changes are made in the following packages:
-
archive/tar -
crypto/tls -
crypto/x509 -
database/sql -
debug/elf -
encoding/binary -
go/ast -
go/types -
math/rand/v2 -
net -
net/http -
net/http/httptest -
net/netips -
path/filepath -
reflect -
runtime/debug -
runtime/pprof -
runtime/trace -
slices -
sync -
sync/atomic -
syscall -
testing/fstest -
text/template -
time -
unicode/utf16
-
For more information, see the upstream release notes.
Go Toolset is a rolling Application Stream, and Red Hat supports only the latest version. For more information, see the Red Hat Enterprise Linux Application Streams Life Cycle document.
Jira:RHEL-62392[1]
glibc now supports the GB18030-2022 encoding standard
This enhancement updates the support of the GB18030 encoding standard in glibc from version 2005 to 2022. With version 2022, you can use 31 new transcoding relationships and the additional characters and code points introduced by this standard.
Jira:RHEL-56032[1]
Go Toolset rebased to version 1.24.4
Go Toolset has been updated to version 1.24.4 with the release of the RHSA-2025:10676 advisory.
Notable enhancements and changes include:
Language:
- Generic type aliases are now fully supported, allowing type aliases to be parameterized for increased flexibility with generics.
Tools:
-
The Go module system supports
tooldirectives ingo.modfiles, enabling direct management of executable dependencies. -
The
go build,go install, andgo testcommands now support the-jsonflag for structured output. -
The new
GOAUTHenvironment variable provides enhanced authentication for private modules.
-
The Go module system supports
Runtime and Performance:
- Runtime improvements reduce CPU overhead by 2–3% on average.
- Notable changes include a new map implementation based on Swiss Tables and more efficient memory allocation.
Standard Library:
-
The new
os.Roottype enables directory-limited filesystem access. -
The
testing.B.Loopmethod improves benchmarking. -
The
runtime.AddCleanupfunction provides a more flexible finalization mechanism. -
The new
weakpackage introduces weak pointers.
-
The new
Cryptography:
-
New packages for ML-KEM post-quantum key exchange (
crypto/mlkem), HKDF, PBKDF2, and SHA-3 are now available. - The Go Cryptographic Module is now under review for FIPS 140-3 certification.
-
New packages for ML-KEM post-quantum key exchange (
Additional updates:
-
The
vettool includes a new analyzer for detecting common mistakes in tests and examples. - The objdump tool now supports more architectures.
-
Cgointroduces annotations for improved performance and correctness.
-
The
For more information, see the upstream release notes.
Go Toolset is a rolling Application Stream, and Red Hat supports only the latest version. For more information, see the Red Hat Enterprise Linux Application Streams Life Cycle document.
Jira:RHEL-101074[1]
3.14. Identity Management Copier lienLien copié sur presse-papiers!
New tool to manage IdM ID range inconsistencies
With this update, Identity Management (IdM) provides the ipa-idrange-fix tool. You can use ipa-idrange-fix tool to analyze existing IdM ID ranges, identify users and groups outside these ranges, and propose to create new ipa-local ranges to include them.
The ipa-idrange-fix tool performs the following:
- Read and analyze existing ranges from LDAP.
-
Search for users and groups outside of
ipa-localranges. -
Propose new
ipa-localranges to cover the identified users and groups. - Prompt the user to apply the proposed changes.
By default, the tool excludes IDs below 1000 to prevent conflicts with system accounts. Red Hat strongly recommends creating a full system backup before applying any suggested changes.
For more information, see the ipa-idrange-fix(1) man page.
Kerberos now supports the Elliptic Curve Diffie-Hellman key agreement algorithm
The Elliptic Curve Diffie-Hellman (ECDH) key agreement algorithm for PKINIT, as defined by RFC5349, is now supported. With this update, the pkinit_dh_min_bits setting in krb5.conf`file can now be configured with `P-256, P-384, or P-521 to use ECDH by default.
ansible-freeipa rebased to 1.14.5
The ansible-freeipa package has been rebased from version 1.13.2 to version 1.14.5. Notable enhancements and bug fixes include:
You can use
module_defaultsto define variables for multipleansible-freeipatasksThe
freeipa.ansible_freeipacollection now provides themodule_defaultsaction group that simplifies the use ofansible-freeipamodules. By usingmodule_defaults, you can set default values to be applied to all modules of the collection used in a playbook. To do so, use theaction_groupnamedfreeipa.ansible_freeipa.modules. For example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow As a result, the playbook is more concise.
Multiple IdM
sudorules can now be managed in a single Ansible taskThis enhancement adds the
sudorulesoption toansible-freeipa. By usingsudorules, you can add, modify, and delete multiple Identity Management (IdM)sudorules by using a single Ansible task. To do this, use thesudorulesoption of theipasudorulemodule. As a result, you can define yoursudorules more easily, and execute them more efficiently.Using the
sudorulesoption, you can specify multiplesudorule parameters that apply to a particularsudorule. Thissudorule is defined by thenamevariable, which is the only mandatory variable for thesudorulesoption.Removing external members by using the
ipagroupmodule now works correctlyPreviously, attempting to ensure the absence of an external member from an IdM group by using the
ansible-freeipaipagroupmodule with theexternalmemberparameter did not remove the members from the group, even though Ansible presented the result of the task aschanged. With this fix, using theipagroupmodule withexternalmembercorrectly ensures the absence of an external member from an IdM group. The fix also allows the use of either DOM\name or name@domain to identify AD users.
389-ds-base has been rebased to version 2.6.1
The 389-ds-base package has been rebased to version 2.6.1. Notable bug fixes and enhancements over version 2.5.2 include:
- Log buffering for the error log
- An option to write the audit log in JSON format
- An option to defer updating group members when the group is updated
- An option to configure the number of PBKDF2 iterations
-
The
logconv.pylog analyzer tool
openldap has been rebased to version 2.6.8
The openldap package has been updated to version 2.6.8. The update includes various enhancements and bug fixes, including:
- Handling of TLS connections has been improved.
-
Kerberos
SASLworks withSTARTTLSeven when the Active Directory certificate is an Elliptic Curve Cryptography (ECC) certificate andSASL_CBINDINGis set totls-endpoint.
The new memberOfDeferredUpdate: on/off configuration attribute is now available in Directory Server
With this update, Directory Server introduces the new memberOfDeferredUpdate configuration attribute for the MemberOf plug-in. When set to on, the MemberOf plug-in defers the update of group members resulting in improved server responsiveness, especially if the group changes impact a large number of its members.
For details, see memberOfDeferredUpdate in the Red Hat Directory Server 12 Configuration and schema reference documentation.
Directory Server now provides buffering of the error, audit, and audit fail logs
Before this update, only the access and security logs had log buffering. With this update, Directory Server provides buffering of the error, audit, and audit fail logs. Use the following settings to configure log buffering:
-
nsslapd-errorlog-logbufferingfor the error log. Disabled by default. -
nsslapd-auditlog-logbufferingfor the audit and audit fail log. Enabled by default.
For details, see nsslapd-errorlog-logbuffering and nsslapd-auditlog-logbuffering in the Red Hat Directory Server Configuration and schema reference documentation.
Directory Server now can update passwords with the CRYPT or CLEAR hashing algorithm after a successful bind
Before this update, Directory Server had a hard-coded list of hashing algorithms that were excluded from the password update during successful binds. Directory Server did not update user passwords that had the CRYPT or CLEAR hashing algorithm configured in the passwordStorageScheme attribute.
With this update, you can set the list of hashing algorithms that must be excluded from password updates by using the nsslapd-scheme-list-no-upgrade-hash configuration attribute. By default, nsslapd-scheme-list-no-upgrade-hash contains CRYPT and CLEAR for backward compatibility.
HSM is now fully supported in IdM
Hardware Security Modules (HSM) are now fully supported in Identity Management (IdM). You can store your key pairs and certificates for your IdM Cerificate Authority (CA) and Key Recovery Authority (KRA) on an HSM. This adds physical security to the private key material.
IdM relies on the networking features of the HSM to share the keys between machines to create replicas. The HSM provides additional security without visibly affecting most IdM operations. When using low-level tools the certificates and keys are handled differently but this is seamless for most users.
Migration of an existing CA or KRA to an HSM-based setup is not supported. You need to reinstall the CA or KRA with keys on the HSM.
You need the following:
- A supported HSM.
- The HSM Public-Key Cryptography Standard (PKCS) #11 library.
- An available slot, token, and the token password.
To install a CA or KRA with keys stored on an HSM, you must specify the token name and the path to the PKCS #11 library. For example:
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
Jira:RHELDOCS-17465[1]
3.15. SSSD Copier lienLien copié sur presse-papiers!
New SSSD option: exop_force
You can use the exop_force option to force a password change even if no grace logins are left. Previously, SSSD did not attempt password changes if the LDAP server indicated that there were no grace logins remaining. Now, if you set ldap_pwmodify_mode = exop_force in the [domain/…] section of the sssd.conf file, SSSD tries to change the password even if no grace logins are left.
Jira:RHELDOCS-19863[1]
Support for group merging added in authselect
If you are using the authselect utility, you no longer need to manually edit the nssswitch.conf file to enable group merging. With this update, It is now integrated into authselect profiles, eliminating the need for manual changes.
Jira:RHELDOCS-19936[1]
Support for dynamic DoT updates in SSSD
SSSD now supports performing all dynamic DNS (dyndns) queries using DNS-over-TLS (DoT). You can securely update DNS records when IP addresses change, such as Identity Management (IdM) and Active Directory servers. To enable this functionality, you must install the nsupdate tool from the bind9.18-utils package.
You can use the following new options in the sssd.conf file to enable DoT and configure custom certificates for secure DNS updates:
- dyndns_dns_over_tls
- dyndns_tls_ca_cert
- dyndns_tls_cert
- dyndns_tls_key
For more details about these options, see the sssd-ad(5) and sssd-ad(5) man pages on your system.
Jira:RHELDOCS-20057[1]
3.16. Red Hat Enterprise Linux System Roles Copier lienLien copié sur presse-papiers!
New variable in the postfix RHEL system role: postfix_default_database_type
The postfix system role can determine the default database type used by postfix and export it as a variable postfix_default_database_type. As a result, you can set configuration parameters based on the default database type.
Using postfix_default_database_type in a configuration parameter value is not supported on Ansible 2.9.
New variables in the microsoft.sql.server system role: mssql_tools_versions and mssql_tls_self_sign
The new mssql-tools18 package brings functionality that is not backwards-compatible with the previous versions of the mssql-tools package. Therefore the following variables have been added to the microsoft.sql.server system role to adapt to the changes:
-
mssql_tools_versions(list, defaults to version 18): Enables you to install different versions ofmssql-tools. -
mssql_tls_self_sign(boolean): Specifies whether the certificates that you use are self-signed or not. Applicable when you also set themssql_tls_enable: truevariable.
When you use mssql-tools18 with self-signed TLS certificates, you have to set mssql_tls_self_sign: true so that the role sets the -C flag in the sqlcmd command-line utility so that your certificates can be trusted.
As a result, you can use these configurations to install mssql_tools version 17; 18; or both in parallel.
For more details, see the resources in the /usr/share/ansible/roles/microsoft.sql-server/ directory.
New RHEL system role: aide
You can use the new aide RHEL system role for detecting unauthorized changes to files, directories, and system binaries. With this role, you can accomplish, for example, the following tasks:
-
Install the
aidepackage on the managed node -
Generate the
/etc/aide.conffile and template it out to the managed node - Initialize the (Advanced Intrusion Detection Environment) AIDE database
- Run AIDE integrity checks on the managed node
The role does not explain how to create a suitable AIDE configuration.
As a result, you can manage AIDE at scale in an automated fashion to address your security, compliance or auditing needs.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/aide/ directory.
New variable in the sudo RHEL system role: sudo_check_if_configured
The sudo RHEL system role has the following variable:
-
sudo_check_if_configured(boolean): Provides a semantic check of an already configuredsudoersfile in case the Ansible setup is not needed and is skipped.
As a result, you can use this setting to ensure the sudo role idempotence if Ansible intervention is not required.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/sudo/ directory.
The microsoft.sql.server system role enables AES 128-bit and AES 256-bit encryption for AD users
Since version 1.1.83, the adutil utility supports the Kerberos protocol with AES 128-bit and AES 256-bit encryption when creating and modifying an Active Directory (AD) user. With this update, the microsoft.sql.server system role automates enabling AES 128-bit and AES 256-bit encryption provided by the Kerberos protocol when creating or modifying AD users. As a result, manual post-configuration tasks are not necessary.
The systemd RHEL system role can manage user units in addition to system units
With this update, the systemd RHEL system role can also manage user units. For each unit file or unit specified in systemd_unit_files, or systemd_unit_file_templates, or systemd_started_units and so on, you can add a user: name if you want that file or unit to be managed for the given user. The default is root which is used for system units.
To get the units on the system managed by the role, including both system and user units, a new return variable has been added:
-
systemd_units_user(dictionary): Each key is a name of a user given in one of the lists passed to the role, androot(even ifrootis not given). Each value is a dictionary ofsystemdunits for that user, or system units forroot.
The role does not create new users and it will return an error if you specify a non-existent user.
As a result, you can manage user units with the systemd RHEL system role.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/systemd/ directory.
Support for exporting corosync configuration of an existing cluster
The ha_cluster RHEL system role supports exporting the corosync configuration of an existing cluster in a format that can be fed back to the role to recreate the same cluster. If you did not use the ha_cluster RHEL system role to create your cluster, or if you have lost the original playbook for the cluster, you can use this feature to build a new playbook for the cluster.
The podman RHEL system role can manage the quadlet units of type Pod
The podman utility of version 5 added support for Pod quadlet types. Consequently, the podman RHEL system role enables you to also manage the quadlet units of type Pod.
For more details, see the upstream article.
New property added to the network RHEL system role network_connections variable: autoconnect_retries
There is no fine-grained control over the number of automatic retries to reconnect a network connection in the network RHEL system role. This limitation could be problematic for certain use cases where extending the retry process is critical, particularly in environments with unstable networks. The autoconnect_retries property added to the to the network_connections role variable configures how many times NetworkManager attempts to reconnect a network connection after an autoconnect failure. As a result, the network RHEL system role allows configuring the number of automatic reconnection attempts after an autoconnect failure by using the autoconnect_retries property in the network_connections variable. This enhancement provides greater control over network stability and performance, especially in environments with unstable networks.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/network/ directory.
New property added to the network RHEL system role network_connections variable: wait_ip
This update provides added support for the wait_ip property of the ip option in the network_connections role variable. The property specifies if the system should consider the network connection as activated only when a specific IP stack is configured. You can configure wait_ip with the following values:
-
any: The system considers the connection activated once any IP stack is configured. -
ipv4: The system waits until IPv4 is configured. -
ipv6: The system waits until IPv6 is configured. -
ipv4+ipv6: The system waits until both IPv4 and IPv6 are configured.
As a result, the network RHEL system role allows you to configure network connections based on specific IP stack configurations. This enables the connection to remain activated even if an IP address is not assigned, depending on the selected wait_ip setting.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/network/ directory.
The metrics RHEL system role supports Valkey as an alternative to Redis
This update provides added support for the Valkey in-memory data structure store for the metrics RHEL system role. It is an alternative to Redis, which is no longer open source and is being removed from Linux distributions. Valkey is typically used as a high-performance caching layer. It stores data in memory, which accelerates applications by caching frequently accessed data. Additionally, you can use Valkey for other performance-critical operations, for example:
- Storing and retrieving user session data.
- Real-time communication between different application parts.
- Providing fast data access for analytics and monitoring.
New variable in the logging RHEL system role: logging_custom_templates
The following variable has been added to the logging RHEL system role:
-
logging_custom_templates: A list of custom template definitions. You can use it with thelogging_outputsvariable when its option istype: filesortype: forwards. You can specify this custom template for each output by setting thetemplateoption in a particularlogging_outputsspecification. Alternatively, you can set this custom template to be used by default for all files and forwards outputs by using thelogging_files_template_formatandlogging_forwards_template_formatglobal options.
As a result, you can format log entries differently than what the built-in defaults provide.
For more details, see the resources in the /usr/share/doc/rhel-system-roles/logging/ directory.
sshd RHEL system role validates commands and configurations
The sshd role uses the quote command when using the command or shell plugins to ensure you can use these commands safely. The role also validates certain user-supplied role variables passed to these plugins. This improves the security and robustness of using the role because, without validation, user-supplied variables that contain white space could split and not function correctly.
3.17. Virtualization Copier lienLien copié sur presse-papiers!
KVM on IBM Z now supports more than one boot device
Guest operating systems running on KVM on IBM Z hosts can attempt booting from additional devices when the primary boot device is not bootable. This feature is supported for the following device types:
-
virtio-net -
virtio-blk -
virtio-scsi/cdrom
To configure the order of the boot devices for the VM, use the order parameter on the <boot> line of their XML configuration. The VM will now attempt up to 8 devices for booting.
In addition, these devices now support the loadparm parameter for the <boot> line of their XML configuration. By using loadparm, it is possible to configure which boot entry the device uses when the guest operating system boots from the device.
Virtual machines supported in RHEL for Real Time
This update introduces full support for real-time virtualization in RHEL for Real Time. You can configure the host and guest operating systems to achieve low-latency and deterministic behavior for virtual machines (VMs). This makes real-time VMs suitable for applications that require real-time performance, such as industrial automation, telecommunications, and automotive systems.
Jira:RHELDOCS-20116[1]
Newly supported features for virtual machines on 64-bit ARM hosts
The following features are now supported for virtual machines on RHEL hosts that use the 64-bit ARM architecture, also known as aarch64:
- Migrating VMs between 64-bit ARM hosts. Note, however, that the migration currently only works when both hosts use the same CPU type and memory page size.
- The Trusted Platform Module (TPM) Interface Specification (TIS) hardware interface
- Non-volatile dual inline memory module (NVDIMM) memory device
- The virtio-iommu device
Jira:RHELDOCS-19832[1]
virt-install now supports creating VMs with SEV-SNP
You can now use the virt-install utility to create a virtual machine (VM) that uses the AMD Secure Encrypted Virtualization with Secure Nested Paging (SEV-SNP) feature. To do so, use the launchSecurity sev-snp,policy=0x30000 option.
Note that SEV-SNP is currently provided as a Technology Preview.
Support for VM live migration with shared virtiofs directory that provides write access to other parties
With this update, you can live migrate a virtual machine (VM) with a virtiofs shared directory, even if multiple other parties, such as the host and other VMs, have write access to that directory.
Virtualization support for IBM z17 processors
With this update, virtualization on RHEL adds support for the IBM z17 CPUs. As a result, virtual machines hosted on an IBM Z system with RHEL can now use new features that the z17 processors provide.
Jira:RHEL-33137[1]
Retrievable secrets are supported for Secure Execution on IBM Z
With this update, you can use generalized host-based secrets for cryptographic devices in Secure Execution virtual machines (VMs) on IBM Z. As a result, it is no longer needed to store secrets in an initramfs image when configuring Secure Execution, which simplifies creating a secure VM image. Note that this feature is currently only supported on IBM z17 processors.
Jira:RHEL-50754[1]
Virtualization support for Intel Xeon v6 processors
With this update, virtualization on RHEL 9 adds support for the Intel Xeon v6 processors, formerly known as Sierra Forest. As a result, virtual machines hosted on RHEL 9 can now use the SierraForest CPU model and use new features that the processors provide.
Jira:RHEL-15731[1], Jira:RHEL-15719
RHEL supports live migrating a VM with a Mellanox virtual function
With this update, you can perform live migration of a virtual machine (VM) with an attached virtual function (VF) of a Mellanox networking device.
However, this feature is currently only supported with a Mellanox CX-7 networking device with a specific firmware version. The VF on the Mellanox CX-7 networking device uses a new mlx5_vfio_pci driver, which adds functionality that is necessary for the live migration, and libvirt binds the new driver to the VF automatically.
For more details and limitations, see: Live migrating a virtual machine with an attached Mellanox virtual function
Jira:RHELDOCS-19210[1]
3.18. RHEL in cloud environments Copier lienLien copié sur presse-papiers!
Intel TDX in RHEL guests
The Intel Trust Domain Extension (TDX) feature is now fully supported in RHEL 9.5 and later when used as a guest operating system. If the host system supports TDX, you can deploy hardware-isolated RHEL 9 guests, called trust domains (TDs). This increases the isolation of the RHEL guest from the host, and makes it significantly more difficult for the host to access the data on the RHEL guest.
Jira:RHEL-70465[1]
Unified Kernel Image for RHEL is fully supported
Unified Kernel Image (UKI) for RHEL, which was introduced in RHEL 9.2 as a Technology Preview, is now fully supported. To use RHEL UKI, you must first install the kernel-uki-virt package. RHEL UKI can enhance SecureBoot protection in virtualized and cloud environments.
Jira:RHELDOCS-19839[1]
WSL images of RHEL 8 - 10 are available on the Customer Portal
RHEL 8, RHEL 9, and RHEL 10 images for the Windows Subsystem for Linux (WSL) can now be downloaded from the Red Hat Customer Portal. These images are available for all RHEL subscriptions, including no-cost developer subscriptions. By using the WSL images, you can create RHEL instances on your Windows system.
Note that the WSL images are provided as self-supported. As such, they are not supported by Red Hat, and are intended for application development purposes only.
In addition, the following issues are currently present in the RHEL guest operating system if you use a WSL image with a Windows WSL host:
- WSL instances of RHEL might work incorrectly in a graphical interface. Using a text user interface is recommended instead.
To use podman, you must add the following lines to the
/etc/containers/containers.conffile, in addition to the standard configuration steps:[network] firewall_driver="iptables"
[network] firewall_driver="iptables"Copy to Clipboard Copied! Toggle word wrap Toggle overflow To use cloud-init, you must create the
/etc/cloud/cloud.cfg.d/99_wsl.cfgfile and add the following content to it, in addition to the standard configuration steps:datasource_list: [WSL] network: {config: disabled}datasource_list: [WSL] network: {config: disabled}Copy to Clipboard Copied! Toggle word wrap Toggle overflow - It is not possible to set SELinux to enforcing mode.
- FIPS mode is not available in WSL instances of RHEL.
RHEL on HPE can run up to 4096 vCPUs
With this feature, a RHEL virtual machine (VM) instance running with the RHEL KVM hypervisor on Hewlett Packard Enterprise Compute Scale-Up Server now supports up to 4096 virtual CPUs, 32 sockets, and 64 TB of memory to handle in-memory databases and other large compute intensive workloads.
Jira:RHEL-11043[1]
Enhanced automatic registration for eligible RHEL images
When purchasing certain eligible cloud marketplace subscriptions for RHEL 9.6 or later and for RHEL 10.0 or later, an improved version of the auto-registration function is available.
With the enhanced auto-registration, any RHEL instances on the eligible marketplaces will be automatically registered to Red Hat and automatically receive content updates from Red Hat Update Infrastructure (RHUI) after you establish a trusted connection between your Red Hat account and your account for the specific cloud platform, even if you did not have the trusted connection when you set launched the instance.
For additional details, see Understanding auto-registration.
Jira:RHELDOCS-19664[1]
3.19. Supportability Copier lienLien copié sur presse-papiers!
The plugin option names now use only hyphens instead of underscores
To ensure consistency across sos global options, the plugin option names now use only hyphens instead of underscores For example, the networking plugin namespace_pattern option is now namespace-pattern and must be specified by using the --plugin-option networking.namespace-pattern=<pattern> syntax.
Jira:RHELDOCS-18655[1]
The --api-url option is now available
With the --api-url option you can call another API as required. For example, the API for an OpenShift Container Platform cluster. Example: sos collect --cluster-type=ocp --cluster-option ocp.api-url=_<API_URL> --alloptions.
The new --skip-cleaning-files option is now available
The --skip-cleaning-files option for the sos report command allows you to skip cleaning selected files. The option supports globs and wildcards. Example: sos report -o host --batch --clean --skip-cleaning-files 'hostname'.
Jira:RHEL-30893[1]
3.20. Containers Copier lienLien copié sur presse-papiers!
Podman supports pushing and pulling images compressed with zstd:chunked
You can push images compressed with the zstd:chunked format to reduce the image size and use partial pulls.
The Container Tools packages have been updated
The updated Container Tools RPM meta-package, which contains the Podman, Buildah, Skopeo, crun, and runc tools, is now available. The Buildah has been updated to version 1.39.0, Skopeo has been updated to version 1.18.0. Podman v5.4 contains the following notable bug fixes and enhancements over the previous version:
-
The
podman updatecommand now supports a wide variety of options related to health checks: the--health-cmdto define a new health check and--no-healthcheckto disable an existing health check. These options make it easier to add, modify, or disable health checks on running containers. For more information, see thepodman-update(5)man page. -
The
--mount type=volumeoption for thepodman run,podman create, andpodman volume createcommands now supports a new option,subpath=, to make only a subset of the volume visible in the container. -
The
--userns=keep-idoption for thepodman run,podman create, andpodman pod createcommands now supports a new option,--userns=keep-id:size=, to configure the size of the user namespace. -
The
podman kube playcommand now supports Container Device Interface (CDI) devices. -
The
podman run,podman create, andpodman pod createcommands now support a new option,--hosts-file, to define the base file used for/etc/hostsin the container. -
The
podman run,podman create, andpodman pod createcommands now support a new option,--no-hostname, which disables the creation of/etc/hostnamein the container. -
The
podman network createcommand now supports a new option for bridge networks,--opt mode=unmanaged, which allows Podman to use an existing network bridge on the system without changes. -
The
--networkoption forpodman run,podman create, andpodman pod createnow accepts a new option for bridge networks,host_interface_name, which specifies a name for the network interface created outside the container. -
The
podman manifest rmcommand now supports a new option,--ignore, to proceed successfully when removing manifests that do not exist. -
The
podman system prunecommand now supports a new option,--build, to remove build containers leftover from prematurely terminated builds. - Podman now passes container hostnames to Netavark, which uses them for any DHCP requests for the container.
-
Packagers can now set the
BUILD_ORIGINenvironment variable when building podman from the Makefile. This provides information on who built the Podman binary, and this information is displayed in thepodman versionandpodman infocommands. Including this information can assist with bug reports by helping maintainers to identify the source and method of the build and installation. -
The
podman kube generateandpodman kube playcommands can now create and run Kubernetes Job YAML. -
The
podman kube generatecommand now includes information on the user namespaces for pods and containers in the generated YAML. Thepodman kube playcommand uses this information to duplicate the user namespace configuration when creating new pods based on the YAML. -
The
podman kube playcommand now supports Kubernetes volumes of type image. -
The service name of
systemdunits generated by Quadlet can now be set with theServiceNamekey in all supported Quadlet files. -
Quadlets can now disable their implicit dependency on
network-online.targetby using a new key,DefaultDependencies, supported by all Quadlet files. -
Quadlet
.containerand.podfiles now support a new key,AddHost, to add hosts to the container or pod. -
The
PublishPortkey in Quadlet.containerand.podfiles can now accept variables in its value. -
Quadlet
.containerfiles now support two new keys,CgroupsModeandStartWithPod, to configure control groups for the container and whether the container will be started with the pod that it is part of. -
Quadlet
.containerfiles can now use the network of another container by specifying the.containerfile of the container to share within the Network key. -
Quadlet
.containerfiles can now mount images managed by.imagefiles into the container by using theMount=type=imagekey with an.imagetarget. -
Quadlet
.podfiles now support six new keys,DNS,DNSOption,DNSSearch,IP,IP6, andUserNS, to configureDNS, static IPs, and user namespace settings for the pod. -
Quadlet
.imagefiles can now give an image multiple times by specifying theImageTagkey multiple times. -
Quadlets can now be placed in the
/run/containers/systemddirectory and existing directories, such as$HOME/containers/systemdand/etc/containers/systemd/users. - Quadlet now properly handles subdirectories of a unit directory that is a symlink.
-
The
podman manifest inspectcommand now includes the manifest’s annotations in its output. -
The
--add-hostoption forpodman create,podman run, andpodman pod createnow supports specifying multiple hostnames, semicolon-separated (for examplepodman run --add-host test1;test2:192.168.1.1). -
The
podman runandpodman createcommands now support three new options for configuring health check logging:--health-log-destination(specifies where logs are stored),--health-max-log-count(specifies how many health checks worth of logs are stored), and--health-max-log-size(specifies the maximum size of the health check log).
For more information about notable changes, see upstream release notes.
Enhanced health check output configuration is now available in Podman
Podman now offers enhanced configurability for health check outputs on a per-container basis. Before this update, health check outputs were limited to the five most recent executions, each capped at 500 characters, accessible only by using the podman inspect command. You can now adjust the amount of health check output stored for each container, allowing for more comprehensive debugging information when needed. This feature is particularly beneficial for diagnosing intermittent health check failures without disrupting the running service. Additionally, to address concerns about sensitive data and storage efficiency, you can opt to limit or disable health check output storage for specific containers.
For more details, see the podman-update man page.
Jira:RHEL-60561[1]
Deploying a container image by using a single command is now available
You can deploy a container image into a RHEL cloud instance by using a signal command. The system-reinstall-bootc command installs performs the following actions:
- Pull the supplied image to set up SSH keys or access the system.
-
Run the
bootc install to-existing-rootcommand with all the bind mounts and SSH keys configured.
Jira:RHELDOCS-19516[1]
Creating custom bootc images from scratch is now supported
You can create bootc images from scratch and fully control the contents of the image and tailor the system environment to meet specific requirements. With the bootc-base-imgectl command, you can create custom bootc images based on an existing bootc base image. Bootc Image from Scratch are derived from container images and do not automatically receive updates from the default base image. To include such updates, you must incorporate them manually as part of your container pipeline. Additionally, you can use the rechunk subcommand in bootc-base-imgectl on any bootc container image to optimize or restructure the image as needed.
Jira:RHELDOCS-19825[1]
A new image build progressing bar available for bootc-image-builder
Previously, you could not check if an image build was progressing by looking into the logs. With this enhancement, you can check the progress of the image build that you created by using bootc-image-builder. You can revert to the previous behavior by using the --progress=verbose argument when building images.
Jira:RHELDOCS-20170[1]
3.21. Lightspeed Copier lienLien copié sur presse-papiers!
The command-line assistant powered by RHEL Lightspeed is generally available in RHEL
The command-line assistant powered by RHEL Lightspeed is available within the RHEL command line. The generative AI that powers the assistant is trained on information from the RHEL product documentation and Red Hat Knowledgebase, and can help you to understand, configure, and troubleshoot your RHEL systems in a more accessible way, whether you are new to RHEL or already an experienced user.
Jira:RHELDOCS-20019[1]
The command line assistant supports using the systemd-creds as a password store manager
The command-line assistant powered by RHEL Lightspeed integrates command line assistant daemon (clad) by using the systemd-creds, a password store manager shipped with RHEL. This means that you can securely store your passwords by using databases such as PostgreSQL or MySQL as your history backend. As a result, you can use the tool for listing, showing, encrypting and decrypting unit credentials in a secure manner.
Jira:RHELDOCS-20024[1]