Реліз дистрибутива Red Hat Enterprise Linux 8

Компанія Red Hat опублікувала реліз дистрибутива Red Hat Enterprise Linux 8. Настановні зборки підготовлені для архітектур x86_64, s390x (IBM System z), ppc64le та Aarch64, але доступні для завантаження лише зареєстрованим користувачам Red Hat Customer Portal. Вихідні тексти rpm-пакетів Red Hat Enterprise Linux 8 поширюються через Git-репозиторій CentOS. Дистрибутив підтримуватиметься як мінімум до 2029 року.

Як основу для побудови нової гілки використані технології, що входять до складу Fedora 28. Нова гілка примітна переходом за умовчанням на Wayland, заміною iptables на nftables, оновленням базових компонентів (ядро 4.18, GCC 8), застосуванням пакетного менеджера DNF замість YUM, використанням модульного репозиторію, припиненням підтримки KDE та Btrfs.

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

  • Перехід на пакетний менеджер DNF з наданням прошарку для сумісності з Yum на рівні опцій командного рядка. У порівнянні з Yum, DNF має помітно більш високу швидкість роботи і низьке споживання пам'яті, більш якісно керує залежностями і підтримує групування пакетів у модулі;
  • Поділ на базовий репозиторій BaseOS та модульний репозиторій AppStream. У BaseOS поширюється мінімальний необхідний роботи системи набір пакетів, все інше переплановано у репозиторій AppStream. AppStream можна використовувати у двох варіантах: як класичний RPM-репозиторій та як репозиторій у модульному форматі.

    Модульний репозиторій пропонує згруповані модулі набори rpm-пакетів, підтримка яких здійснюється незалежно від релізів дистрибутива. Модулі можна використовувати для встановлення альтернативних версій певної програми (наприклад, можна встановити PostgreSQL 9.6 або PostgreSQL 10). Модульна організація дозволяє користувачеві переходити на нові значні випуски програми, не чекаючи нового релізу дистрибутива і залишатися на старих, але ще підтримуваних версіях після оновлення дистрибутива. Модулі включають базовий додаток і необхідні для його роботи бібліотеки (залежно можуть використовуватися інші модулі);

  • Як робочий стіл за замовчуванням запропоновано GNOME 3.28 із застосуванням за промовчанням дисплейного сервера на базі Wayland. Оточення на базі X.Org Server доступне як опція. Зі складу виключені пакети з робочим столом KDE, залишена лише підтримка GNOME;
  • Пакет із ядром Linux побудований на базі випуску 4.18. Як компілятор за замовчуванням задіяний GCC 8.2. Системну бібліотеку Glibc оновлено до випуску 2.28.
  • Як реалізацію мови програмування Python за замовчуванням задіяний Python 3.6. Надано обмежену підтримку Python 2.7. До базової поставки Python не входить, його потрібно встановлювати додатково. Оновлено версії Ruby 2.5, PHP 7.2, Perl 5.26, Node.js 10, Java 8 і 11, Clang/LLVM Toolset 6.0, .NET Core 2.1, Git 2.17, Mercurial 4.8, Subversion 1.10. До складу включено систему складання CMake (3.11);
  • В інсталятор Anaconda додано підтримку установки системи на накопичувачі NVDIMM;
  • В інсталятор і систему додано можливість шифрування дисків з використанням формату LUKS2, який замінив собою раніше застосовуваний формат LUKS1 (в dm-crypt і cryptsetup LUKS2 тепер пропонується за замовчуванням). LUKS2 примітний спрощеною системою управління ключами, можливістю використання секторів великого розміру (4096 замість 512, знижує навантаження при розшифровці), символьними ідентифікаторами розділів (label) та засобами резервування метаданих з можливістю їх автоматичного відновлення з копії у разі виявлення пошкодження.
  • Додано нову утиліту Composer, що надає інструменти для створення кастомізованих завантажувальних системних образів, придатних для розгортання в оточеннях різних хмарних платформ;
  • Видалено підтримку файлової системи Btrfs. До складу більше не входять модуль ядра btrfs.ko, утиліти btrfs-progs та пакет snapper;
  • До складу включено інструментарій Stratis, що надає засоби для уніфікації та спрощення налаштування та керування пулом з одного або декількох локальних накопичувачів. Stratis реалізований у вигляді шару (демон stratisd), побудованого поверх підсистеми devicemapper та XFS, і дозволяє використовувати такі можливості як динамічне виділення місця у сховищі, снапшоти, забезпечення цілісності та створення шарів для кешування, без наявності кваліфікації експерта з адміністрування систем зберігання;
  • Реалізовано загальносистемні політики налаштування криптографічних підсистем, що охоплюють протоколи TLS, IPSec, SSH, DNSSec та Kerberos. За допомогою команди update-crypto-policies тепер можна вибрати один із
    режимів вибору криптоалгоритмів: default, legacy, future та fips. За замовчуванням задіяно випуск Відкрийте SSL 1.1.1 за допомогою TLS 1.3;

  • Забезпечено загальносистемну підтримку смарткарт і HSM (Hardware Security Modules) з криптографічними токенами PKCS#11;
  • На зміну iptables, ip6tables, arptables і ebtables прийшов пакетний nftables фільтр, який тепер застосовується за умовчанням і примітний уніфікацією інтерфейсів фільтрації пакетів для IPv4, IPv6, ARP і мережевих мостів. Nftables надає лише на рівні ядра загальний інтерфейс, який залежить від конкретного протоколу і надає базові функції вилучення даних з пакетів, виконання операцій із даними і управління потоком. Безпосередньо логіка фільтрації та специфічні для протоколів обробники компілюються в байткод у просторі користувача, після чого даний байткод завантажується в ядро ​​за допомогою інтерфейсу Netlink та виконується у спеціальній віртуальній машині, що нагадує BPF (Berkeley Packet Filters). Демон firewalld переведений на використання nftables як бекенд за замовчуванням. Для перетворення старих правил додані утиліти iptables-translate та ip6tables-translate;
  • Для забезпечення мережного зв'язку між кількома контейнерами додано підтримку драйверів для побудови віртуальної мережі IPVLAN;
  • У базове постачання включено http-сервер nginx (1.14). Apache httpd оновлено до версії 2.4.35, а OpenSSH до 7.8p1.

    З СУБД у репозиторіях доступні MySQL 8.0, MariaDB 10.3, PostgreSQL 9.6/10 та Redis 4.0. СУБД MongoDB не увійшла до складу через переходу на нову ліцензію SSPL, яка поки що не визнана відкритою;

  • Модернізовано компоненти для віртуалізації. За умовчанням під час створення віртуальних машин використовується тип Q35 (Емуляція чіпсету ICH9) з підтримкою PCI Express. Для створення та керування віртуальними машинами тепер можна використовувати web-інтерфейс Cockpit. Інтерфейс virt-manager оголошений застарілим. QEMU оновлено до версії 2.12. QEMU реалізовано режим sandbox-ізоляції, що обмежує системні виклики, які можуть використовувати компоненти QEMU;
  • Додано підтримку механізмів трасування на базі eBPF, у тому числі за допомогою інструментарію SystemTap (4.0). До складу включені утиліти для збирання та завантаження BPF-програм;
  • Додана експериментальна підтримка підсистеми XDP (eXpress Data Path), що дозволяє в Linux запускати BPF-програми на рівні мережного драйвера з можливістю прямого доступу до DMA-буфера пакетів і на стадії до виділення skbuff буфера мережевим стеком;
  • До складу додано утиліту boom для керування налаштуваннями завантажувача. Boom спрощує виконання таких операцій як створення нових завантажувальних записів, наприклад, за потреби завантаження з LVM-снапшота. Boom обмежений лише додаванням нових завантажувальних записів і не може застосовуватись для зміни вже існуючих;
  • Інтегрований легковажний інструментарій для керування ізольованими контейнерами, який використовує для збирання контейнерів Buildah, для запуску - Подман і для пошуку готових образів Skopeo;
  • Розширено можливості, пов'язані із кластеризацією. Менеджер кластерних ресурсів Pacemaker оновлено до версії 2.0. В утиліті штук забезпечена повна підтримка Corosync 3, knet та звернення за іменами вузлів;
  • Оголошені застарілими і тепер не поставляються за промовчанням класичні скрипти для мережі (network-scripts). Для забезпечення зворотної сумісності замість скриптів ifup та ifdown додані обв'язки над NetworkManager, що працюють через утиліту nmcli;
  • вилучені пакети: crypto-utils, cvs, dmraid, empathy, finger, gnote, gstreamer, ImageMagick, mgetty, phonon, pm-utils, rdist, ntp (замінений на chrony), qemu (замінений на qemu-kvm), qt (замінений qt5-qt), rsh, rt, rubygems (тепер входить в основний пакет ruby), system-config-firewall, tcp_wrappers, wxGTK.
  • Підготовлено універсальний базовий образ (UBI, Universal Base Image) для створення ізольованих контейнерів, у тому числі що дозволяє створювати контейнери однієї програми. UBI включає мінімальне урізане оточення, runtime-надбудови для підтримки мов програмування (nodejs, ruby, python, php, perl) та набір додаткових пакетів у репозиторії.
  • Джерело: opennet.ru

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