Папярэдні выпуск AlmaLinux 9, заснаваны на галінцы RHEL 9

Прадстаўлены бэта-выпуск дыстрыбутыва AlmaLinux 9, пабудаваны з выкарыстаннем пакетаў з галінкі Red Hat Enterprise Linux 9 і ўтрымоўвальны ўсе прапанаваныя ў дадзеным выпуску змены. Зборкі падрыхтаваны для архітэктур x86_64, ARM64, s390x і ppc64le у форме загрузнага (780 МБ), мінімальнага (1.7 ГБ) і поўнага выявы (8 ГБ). Рэлізы RHEL 9 і AlmaLinux 9 чакаюцца ў пачатку траўня.

Дыстрыбутыў ідэнтычны з RHEL па функцыянальнасці, за выключэннем змен, злучаных рэбрэндынгам і выдаленнем спецыфічных для RHEL пакетаў, такіх як redhat-*, insights-client і subscription-manager-migration*. AlmaLinux бясплатны для ўсіх катэгорый карыстачоў, развіваецца з прыцягненнем супольнасці і выкарыстаннем мадэлі кіравання, падобнай на арганізацыю працы праекту Fedora. Стваральнікі AlmaLinux паспрабавалі дасягнуць аптымальнага балансу паміж карпаратыўнай падтрымкай і інтарэсамі супольнасці – з аднаго боку да распрацоўкі прыцягнуты рэсурсы і распрацоўшчыкі кампаніі CloudLinux, якая мае вялікі вопыт у суправаджэнні форкаў RHEL, а з другога боку праект празрысты і падкантрольны супольнасці.

Дыстрыбутыў AlmaLinux заснаваны кампаніяй CloudLinux, якая нягледзячы на ​​ўцягванне сваіх рэсурсаў і распрацоўшчыкаў, перадала праект асобнай некамерцыйнай арганізацыі AlmaLinux OS Foundation для распрацоўкі на нейтральнай пляцоўцы з удзелам супольнасці. На развіццё праекта выдаткаваны мільён долараў за год. Усе напрацоўкі AlmaLinux публікуюцца пад вольнымі ліцэнзіямі.

Асноўныя змены ў AlmaLinux 9 і RHEL 9 у параўнанні з галінкай RHEL 8:

  • Абноўлена сістэмнае асяроддзе і зборачны інструментарый. Для зборкі пакетаў задзейнічаны GCC 11. Стандартная Сі-бібліятэка абноўлена да glibc 2.34. Пакет з ядром Linux пабудаваны на базе выпуску 5.14. Пакетны мэнэджар RPM абноўлены да версіі 4.16 з падтрымкай кантролю цэласнасці праз fapolicyd.
  • Завершана міграцыя дыстрыбутыва на Python 3. Па змаўчанні прапанавана галіна Python 3.9. Пастаўка Python 2 спынена.
  • Працоўны стол заснаваны на GNOME 40 (у RHEL 8 пастаўляўся GNOME 3.28) і бібліятэцы GTK 4. У GNOME 40 віртуальныя працоўныя сталы ў аглядным рэжыме (Activities Overview) перакладзены на гарызантальную арыентацыю і адлюстроўваюцца ў выглядзе бесперапынна якая пракручваецца злева. На кожным працоўным стале, паказваным у аглядным рэжыме, навочна прадстаўлены наяўныя вокны, для якіх ужываецца дынамічнае панарамаванне і маштабаванне пры ўзаемадзеянні карыстача. Забяспечаны бясшвоўны пераход паміж спісам праграм і віртуальнымі працоўнымі сталамі.
  • У GNOME задзейнічаны апрацоўшчык power-profiles-daemon, які прадстаўляе магчымасць пераключэння на лета паміж рэжымам эканоміі энергіі, рэжымам збалансаванага энергаспажывання і рэжымам максімальнай прадукцыйнасці.
  • Усе гукавыя патокі перакладзены на мультымедыйны сервер PipeWire, які зараз выкарыстоўваецца па змаўчанні замест PulseAudio і JACK. Выкарыстанне PipeWire дазваляе ў звычайнай настольнай рэдакцыі падаць магчымасці прафесійнай апрацоўкі гуку, пазбавіцца ад фрагментацыі і ўніфікаваць гукавую інфраструктуру для розных ужыванняў.
  • Па змаўчанні ўтоена загрузнае меню GRUB, калі RHEL з'яўляецца адзіным усталяваным у сістэме дыстрыбутывам і калі мінулая загрузка мінула без збояў. Для паказу меню падчас загрузкі дастаткова ўтрымліваць клавішу Shift або некалькі разоў націснуць клавішу Esc або F8. З змен у загрузніку таксама адзначаецца размяшчэнне файлаў канфігурацыі GRUB для ўсіх архітэктур у адным каталогу /boot/grub2/ (файл /boot/efi/EFI/redhat/grub.cfg зараз з'яўляецца сімвалічнай спасылкай на /boot/grub2/grub.cfg), г.зн. адну і тую ж усталяваную сістэму можна загружаць як з выкарыстаннем EFI, так і BIOS.
  • Кампаненты для падтрымкі розных моў вынесены ў пакеты langpacks, якія дазваляюць вар'іраваць узровень усталёўванай моўнай падтрымкі. Напрыклад, у пакеце langpacks-core-font прапануюцца толькі шрыфты, у langpacks-core - лакаль для glibc, базавы шрыфт і метад уводу, а ў langpacks - пераклады, дадатковыя шрыфты і слоўнікі для праверкі правапісу.
  • Абноўлены кампаненты для забеспячэння бяспекі. У дыстрыбутыве задзейнічана новае адгалінаванне крыптаграфічнай бібліятэкі OpenSSL 3.0. Па маўчанні ўключаны больш сучасныя і надзейныя крыптаграфічныя алгарытмы (напрыклад, забаронена ўжыванне SHA-1 у TLS, DTLS, SSH, IKEv2 і Kerberos, адключаныя TLS 1.0, TLS 1.1, DTLS 1.0, RC4, Camellia, DSA, 3DES і FFD) . Пакет OpenSSH абноўлены да версіі 1024p8.6. Cyrus SASL пераведзены на бэкэнд GDBM замест Berkeley DB. У бібліятэках NSS (Network Security Services) спынена падтрымка фармату DBM (Berkeley DB). GnuTLS абноўлены да версіі 1.
  • Значна падвышана прадукцыйнасць SELinux і зніжана спажыванне памяці. У /etc/selinux/config прыбраная падтрымка налады "SELINUX=disabled" для адключэння SELinux (названая настройка зараз толькі адключае загрузку палітык, а для фактычнага адключэння функцыянальнасці SELinux зараз патрабуецца перадача ядру параметру "selinux=0").
  • Дададзена эксперыментальная падтрымка VPN WireGuard.
  • Па змаўчанні забаронены ўваход па SSH пад карыстачом root.
  • Абвешчаныя састарэлымі прылады кіравання пакетным фільтрам iptables-nft (утыліты iptables, ip6tables, ebtables і arptables) і ipset. Для кіравання міжсеткавым экранам зараз рэкамендуецца выкарыстоўваць nftables.
  • У склад уключаны новы дэман mptcpd для наладкі MPTCP (MultiPath TCP), пашырэнні пратаколу TCP для арганізацыі працы TCP-злучэнні з дастаўкай пакетаў адначасова па некалькіх маршрутах праз розныя сеткавыя інтэрфейсы, прывязаныя да розных IP-адрасоў. Выкарыстанне mptcpd дае магчымасць наладзіць MPTCP без выкарыстання ўтыліты iproute2.
  • Выдалены пакет network-scripts, для настройкі сеткавых злучэнняў варта выкарыстоўваць NetworkManager. Падтрымка фармату налад ifcfg захавана, але NetworkManager па змаўчанні выкарыстоўвае фармат на аснове файла keyfile.
  • У склад уключаны новыя версіі кампілятараў і інструментаў для распрацоўшчыкаў: 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. 3.0, Subversion 2.31, binutils 1.14, CMake 2.35, Maven 3.20.2, Ant 3.6.
  • Абноўлены серверныя пакеты Apache HTTP Server 2.4.48, nginx 1.20, Varnish Cache 6.5, Squid 5.1.
  • Абноўлены СКБД MariaDB 10.5, MySQL 8.0, PostgreSQL 13, Redis 6.2.
  • Для зборкі эмулятара QEMU па змаўчанні задзейнічаны Clang, што дазволіла ўжыць у гіпервізоры KVM некаторыя дадатковыя механізмы абароны, такія як SafeStack для абароны ад метадаў эксплуатацыі на аснове зваротна-арыентаванага праграмавання (ROP – Return-Oriented Programming).
  • У SSSD (System Security Services Daemon) падвышаная дэталізацыя логаў, напрыклад, да падзей зараз прымацоўваецца час завяршэння задачы і адлюстроўваецца струмень аўтэнтыфікацыі. Дададзеныя функцыі пошуку для аналізу праблем з наладамі і прадукцыйнасцю.
  • Пашыраная падтрымка IMA (Integrity Measurement Architecture) для праверкі цэласнасці кампанентаў аперацыйнай сістэмы па лічбавых подпісах і хэшам.
  • Па змаўчанні задзейнічана адзіная ўніфікаваная іерархія cgroup (cgroup v2). Сgroups v2 можна выкарыстоўваць, напрыклад, для абмежавання спажывання памяці, рэсурсаў CPU і ўводу/высновы. Ключавым адрозненнем cgroups v2 ад v1 з'яўляецца ўжыванне агульнай іерархіі cgroups для ўсіх выглядаў рэсурсаў, замест паасобных іерархій для размеркавання рэсурсаў CPU, для рэгулявання спажывання памяці і для ўводу/высновы. Паасобныя іерархіі прыводзілі да цяжкасцяў арганізацыі ўзаемадзеяння паміж апрацоўшчыкамі і да дадатковых выдаткаў рэсурсаў ядра пры ўжыванні правіл для працэсу, згадванага ў розных іерархіях.
  • Дададзена падтрымка сінхранізацыі дакладнага часу на базе пратакола NTS (Network Time Security), які выкарыстоўвае элементы інфраструктуры адкрытых ключоў (PKI) і дазваляе выкарыстоўваць TLS і аўтэнтыфікаванае шыфраванне AEAD (Authenticated Encryption with Associated Data) для крыптаграфічнай абароны ўзаемадзеяння кліента і сервера па пратаколе Network Time Protocol). NTP-сервер chrony абноўлены да версіі 4.1.
  • Забяспечана эксперыментальная падтрымка KTLS (рэалізацыя TLS на ўзроўні ядра), Intel SGX (Software Guard Extensions), DAX (Direct Access) для ext4 і XFS, падтрымка AMD SEV і SEV-ES у гіпервізоры KVM.
  • Крыніца: opennet.ru

Дадаць каментар