Почалося бета-тестування Red Hat Enterprise Linux 9

Red Hat представила першу бета-версію дистрибутива Red Hat Enterprise Linux 9. Готові настановні образи підготовлені для зареєстрованих користувачів Red Hat Customer Portal (для оцінки функціональності також можна використовувати iso-образи CentOS Stream 9). Репозиторії з пакетами доступні без обмежень для архітектур x86_64, s390x (IBM System z), ppc64le та Aarch64 (ARM64). Вихідні тексти rpm-пакетів Red Hat Enterprise Linux 9 розміщені в Git-репозиторії CentOS. Реліз очікується у першій половині наступного року. Відповідно до 10-річного циклу підтримки дистрибутива RHEL 9 супроводжуватиметься до 2032 року. Оновлення для RHEL 7 продовжать випускатися до 30 червня 2024 року, RHEL 8 - до 31 травня 2029 року.

Дистрибутив Red Hat Enterprise Linux 9 примітний переходом більш відкритий процес розробки. На відміну від минулих гілок, як основа для побудови дистрибутива використана пакетна база CentOS Stream 9. CentOS Stream позиціонується як upstream-проект для RHEL, що дає можливість стороннім учасникам контролювати підготовку пакетів для RHEL, пропонувати свої зміни та впливати на прийняті рішення. Раніше як основа для нової гілки RHEL використовувався снапшот одного з випусків Fedora, який доопрацьовувався і стабілізувався за зачиненими дверима, без можливості контролювати хід розробки та прийняті рішення. Тепер на основі снапшота Fedora за участю спільноти формується гілка CentOS Stream, в якій проводиться підготовча робота та формується базис для нової значної гілки RHEL.

Ключові зміни:

  • Оновлено системне оточення та складальний інструментарій. Для збирання пакетів задіяно 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 — переклади, додаткові шрифти та словники для перевірки правопису.
  • Для одночасної установки різних версій програм і більш частого формування оновлення застосовуються компоненти Application Streams, які тепер можуть формуватися з використанням всіх варіантів розповсюдження пакетів, що підтримуються в RHEL, включаючи RPM-пакети, модулі (згруповані в модулі набори rpm-пакетів), SCL (Software Collection ) та Flatpak.
  • Оновлено компоненти для забезпечення безпеки. У дистрибутиві задіяна нова гілка криптографічної бібліотеки OpenSSL 3.0. За мовчанням включені більш сучасні та надійні криптографічні алгоритми (наприклад, заборонено застосування SHA-1 у TLS, DTLS, SSH, IKEv2 та Kerberos, відключені TLS 1.0, TLS 1.1, DTLS 1.0, RC4, Camellia, DSA, 3DES та FFDHE) . Пакет 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, 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).
  • Розширено можливості web-консолі: додано додаткові метрики продуктивності для виявлення вузьких місць (CPU, пам'ять, диск, мережеві ресурси), спрощено експорт метрик для візуалізації за допомогою Grafana, додано можливість керування live-патчами до ядра, надано підтримку аутентифікації через смарт-картки (у тому числі для sudo та SSH).
  • У 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.
  • Додані нові системні ролі Ansible для автоматизації установки, налаштування та запуску Postfix, Microsoft SQL Server, VPN-тунелів та сервісу timesync. Додано нову роль Ansible для підтримки розділів LVM (Logical Volume Manager) VDO (Virtual Data Optimizer).
  • Забезпечена експериментальна (Technology Preview) підтримка KTLS (реалізація TLS на рівні ядра), Intel SGX (Software Guard Extensions), DAX (Direct Access) для ext4 та XFS, підтримка AMD SEV та SEV-ES у гіпервізорі KVM.
  • Включені зміни, пов'язані з роботою з перекладу коду, що розробляється в Red Hat, документації та web-ресурсів на використання більш інклюзивної термінології, що передбачає відмову від вживання слів master, slave, blacklist і whitelist.

Джерело: opennet.ru

Додати коментар або відгук