Red Hat har præsenteret udgivelsen af distributionen Red Hat Enterprise Linux 9. De færdige installationsbilleder vil snart være tilgængelige for registrerede brugere af Red Hat Customer Portal (der kan også bruges iso-billeder af CentOS Stream 9 til at vurdere funktionaliteten). Udgivelsen er blevet oprettet til arkitekturerne x86_64, s390x (IBM System z), ppc64le og Aarch64 (ARM64). Kildekoden til rpm-pakkerne af Red Hat Enterprise Linux 9 er tilgængelig i Git-repositoriet CentOS. I henhold til den 10-årige supportcyklus vil RHEL 9 blive understøttet indtil 2032. Opdateringer til RHEL 7 vil fortsætte med at blive udgivet indtil 30. juni 2024, RHEL 8 - indtil 31. maj 2029.
Distributionssystemet Red Hat Enterprise Linux 9 er bemærkelsesværdigt ved overgangen til en mere åben udviklingsproces. I modsætning til tidligere versioner er CentOS Stream 9 brugt som grundlag for opbygningen af distributionssystemet. CentOS Stream positioneres som et upstream-projekt for RHEL, som giver tredjeparter mulighed for at kontrollere forberedelsen af pakker til RHEL, foreslå ændringer og påvirke beslutningsprocesserne. Førhen blev et snapshot af en af Fedora-udgivelserne brugt som grundlag for en ny RHEL-version, som blev udviklet og stabiliseret bag lukkede døre, uden mulighed for at kontrollere udviklingsforløbet og beslutningerne. Nu bliver der dannet en gren af CentOS Stream baseret på et snapshot af Fedora med deltagelse af fællesskabet, hvor forberedelsesarbejdet udføres, og der dannes grundlaget for en ny betydelig RHEL-version.
Nøgleændringer:
- Systemmiljøet og build-værktøjene er blevet opdateret. GCC 11 anvendes til pakkeopbygning. Den standard C-bibliotek er opdateret til glibc 2.34. Linux-kernpakken er bygget på baggrund af udgivelse 5.14. Pakkehåndteringssystemet RPM er opdateret til version 4.16 med understøttelse af integritetskontrol via fapolicyd.
- Migrationen af distributionssystemet til Python 3 er blevet afsluttet. Som standard tilbydes Python 3.9. Leveringen af Python 2 er blevet stoppet.
- Skrivebordet er baseret på GNOME 40 (i RHEL 8 blev GNOME 3.28 leveret) og GTK 4-biblioteket. I GNOME 40 er virtuelle arbejdsstationer i aktivitetsoversigten (Activities Overview) blevet omdannet til en horisontal orientering og vises som en kontinuerligt rullende kæde fra venstre mod højre. På hver arbejdsstation, der vises i aktivitetsoversigten, præsenteres de eksisterende vinduer tydeligt, hvor der anvendes dynamisk panorering og zoom under brugerinteraktion. Der er sikret en glidende overgang mellem programlisten og de virtuelle arbejdsstationer.
- I GNOME er power-profiles-daemon aktiveret, som muliggør skiftende energiprofil på farten mellem energibesparende tilstand, balanceret energiforbrug og maksimal ydeevne.
- Alle lydstrømme er overført til medieserveren PipeWire, som nu bruges som standard i stedet for PulseAudio og JACK. Brug af PipeWire muliggør i den almindelige desktopversion professionelle lydbehandlingsmuligheder, fjerner fragmentering og standardiserer lydinfrastrukturen for forskellige anvendelser.
- Som standard er boot-menuen GRUB skjult, hvis RHEL er den eneste distribution, der er installeret på systemet, og hvis den sidste opstart gik uden problemer. For at vise menuen under opstart er det tilstrækkeligt at holde Shift-tasten nede eller trykke gentagne gange på Esc- eller F8-tasten. Ændringerne i bootloaderen inkluderer også placeringen af GRUB-konfigurationsfilerne for alle arkitekturer i én mappe /boot/grub2/ (filen /boot/efi/EFI/redhat/grub.cfg er nu et symbolsk link til /boot/grub2/grub.cfg), dvs. den samme installerede system kan starte såvel ved hjælp af EFI som BIOS.
- Komponenter til understøttelse af forskellige sprog er blevet udskilt i pakker langpacks, som gør det muligt at variere niveauet for sprogunderstøttelse, der installeres. For eksempel indeholder pakken langpacks-core-font kun skrifttyper, i langpacks-core — lokalitet for glibc, grundlæggende skrifttype og inputmetode, mens langpacks — oversættelser, ekstra skrifttyper og stavekontrolordbøger.
- Security components have been updated. A new branch of the OpenSSL 3.0 cryptographic library has been implemented in the distribution. More modern and reliable cryptographic algorithms are enabled by default (for instance, the use of SHA-1 in TLS, DTLS, SSH, IKEv2, and Kerberos is prohibited, TLS 1.0, TLS 1.1, DTLS 1.0, RC4, Camellia, DSA, 3DES, and FFDHE-1024 have been disabled). The OpenSSH package has been updated to version 8.6p1. Cyrus SASL has been switched to the GDBM backend instead of Berkeley DB. Support for the DBM format (Berkeley DB) has been discontinued in the NSS (Network Security Services) libraries. GnuTLS has been updated to version 3.7.2.
- The performance of SELinux has been significantly improved and memory consumption reduced. Support for the 'SELINUX=disabled' setting has been removed from /etc/selinux/config to disable SELinux (the specified setting now only disables policy loading, and to actually disable SELinux functionality, the kernel parameter 'selinux=0' must be passed).
- Experimental support has been added. VPN WireGuard.
- SSH login as the root user is disabled by default.
- The iptables-nft filtering tools (iptables, ip6tables, ebtables, and arptables utilities) and ipset have been deprecated. It is now recommended to use nftables for firewall management.
- A new mptcpd daemon has been included to configure MPTCP (MultiPath TCP), an extension of the TCP protocol for facilitating TCP connections by delivering packets simultaneously through multiple routes across different network interfaces bound to different IP addresses. Using mptcpd allows configuring MPTCP without the iproute2 utility.
- The network-scripts package has been removed; for configuring network connections, NetworkManager should be used. Support for the ifcfg configuration format has been retained, but NetworkManager uses a keyfile-based format by default.
- New versions of compilers and development tools have been included: GCC 11.2, LLVM/Clang 12.0.1, Rust 1.54, Go 1.16.6, Node.js 16, OpenJDK 17, Perl 5.32, PHP 8.0, Python 3.9, Ruby 3.0, Git 2.31, Subversion 1.14, binutils 2.35, CMake 3.20.2, Maven 3.6, Ant 1.10.
- Serverpakkerne Apache HTTP Server 2.4.48, nginx 1.20, Varnish Cache 6.5, Squid 5.1 er blevet opdateret.
- Databaserne MariaDB 10.5, MySQL 8.0, PostgreSQL 13, Redis 6.2 er blevet opdateret.
- Clang anvendes som standard til at bygge QEMU-emulatoren, hvilket gør det muligt at implementere nogle yderligere beskyttelsesmekanismer i hypervisoren KVM, såsom SafeStack for at beskytte mod angreb baseret på Return-Oriented Programming (ROP).
- I SSSD (System Security Services Daemon) er loggolfinformationen blevet mere detaljeret; nu knyttes afslutningstidspunktet for opgaver til begivenhederne og autentifikationsstrømmen afspejles. Der er tilføjet søgefunktioner til problemanalyse med konfigurationer og ydeevne.
- Støtten til IMA (Integrity Measurement Architecture) er blevet udvidet for at tjekke integriteten af komponenter i operativsystemet gennem digitale signaturer og hashes.
- Som standard anvendes en enhedlig hierarki af cgroup (cgroup v2). Cgroups v2 kan bruges til at begrænse hukommelsesforbrug, CPU-ressourcer og input/output. Den væsentligste forskel mellem cgroups v2 og v1 er anvendelsen af et fælles hierarki af cgroups for alle typer ressourcer, i stedet for separate hierarkier til fordeling af CPU-ressourcer, styring af hukommelsesforbrug og input/output. Separate hierarkier førte til udfordringer med samarbejde mellem håndteringsprogrammerne og resulterede i ekstra omkostninger til kernens ressourcer, når der anvendtes regler for processer nævnt i forskellige hierarkier.
- Støtten til præcisions tidsindstilling baseret på NTS (Network Time Security) protokollen er blevet tilføjet, som bruger elementer af en offentlig nøgleinfrastruktur (PKI) og muliggør brug af TLS og autentificeret kryptering med AEAD (Authenticated Encryption with Associated Data) for at beskytte interaktionen mellem klient og server NTP (Network Time Protocol). NTP-serveren chrony er opdateret til version 4.1.
- Eksperimentel (Technology Preview) support for KTLS (implementering af TLS på kernesniveau), Intel SGX (Software Guard Extensions), DAX (Direct Access) til ext4 og XFS, samt support for AMD SEV og SEV-ES i KVM-hypervisoren er blevet sikret.
Kilde: opennet.ru
