Fedora 43 будет использовать сжатие Zstd для более быстрой загрузки и уменьшения размера Initrd

09.07.2025
Fedora 43 будет использовать сжатие Zstd для более быстрой загрузки и уменьшения размера Initrd

Проект Fedora работает над изменением, которое может ускорить загрузку вашей системы и сэкономить место на диске. Начиная с Fedora Linux 43, проект планирует по умолчанию сжимать начальный RAM-диск (initrd) с помощью формата zstd.

Это касается всех выпусков Fedora, в которых initrd создается с помощью dracut, инструмента, отвечающего за создание образа, используемого на ранних этапах запуска.

Если это изменение будет одобрено, оно обеспечит более плавный и быстрый запуск на настольных компьютерах, серверах и виртуальных машинах.

 

Введение

Проект Fedora предлагает внести существенные изменения в процесс сжатия специального файла, используемого при запуске, который называется начальный виртуальный диск (initrd). Это изменение направлено на то, чтобы ваша система загружалась быстрее и занимала меньше места на диске.

Целевой выпуск для предлагаемого изменения, заключающегося в сжатии начального RAM-диска (initrd) с помощью zstd по умолчанию для всех вариантов Fedora при сборке с помощью dracut, — это Fedora Linux 43.

 

Что такое initrd?

В системах Linux initrd (начальный RAM-диск) — это временная корневая файловая система, которая загружается в память компьютера во время запуска. Считайте, что это небольшая временная операционная система, которая помогает компьютеру подготовиться к загрузке полноценной операционной системы.

Он используется для подготовки перед тем, как ваш компьютер сможет получить доступ к своей основной файловой системе. Это включает в себя загрузку необходимых драйверов для таких устройств, как жёсткий диск или сеть, особенно если ваша основная файловая система находится в сложной структуре, например в зашифрованном разделе или на сетевом диске.

Ядро может распаковать эти initrd или initramfs изображения, если они сжаты с использованием различных алгоритмов, включая gzipbzip2XZ, и zstd.

dracut (https://dracut-ng.github.io/dracut-ng/) — это программа, которая используется для создания таких initramfs образов в некоторых дистрибутивах Linux.

 

Предлагаемое изменение: использование zstd-сжатия

В предложении предлагается использовать zstd для сжатия initrd по умолчанию во всех версиях Fedora, которые собираются с помощью dracut.

В настоящее время в большинстве версий Fedora используется xz для сжатия initrd. Однако теперь dracut настроен на использование zstd по умолчанию, если в вашей системе доступна программа zstd .

Fedora CoreOS уже использует zstd и имеет для него заданный коэффициент сжатия. Предлагаемое изменение сделает zstd стандартом для всех вариантов Fedora.

На момент написания этой статьи 95 % пользователей решительно поддерживают это изменение. Поэтому оно, скорее всего, будет реализовано в Fedora 43. Вот результаты опроса:

Результаты опроса о внесении изменений в Fedora 43: сжатие initrd с помощью zstd по умолчанию

Результаты опроса о внесении изменений в Fedora 43: сжатие initrd с помощью zstd по умолчанию

 

Почему предлагается это изменение? (Преимущества)

  • Меньший размер initrd: Использование zstd приведет к созданию меньшего файла initrd.
  • Более быстрая загрузка: меньший initrd также означает более быструю загрузку, поскольку на распаковку и загрузку уходит меньше времени.
  • Экономия дискового пространства: это изменение специально разработано для экономии дискового пространства в разделе /boot. Это напрямую связано с проблемами, из-за которых пользователи могут столкнуться с ошибкой «На устройстве не осталось места» при попытке установить новое ядро, поскольку в /boot разделе может быстро закончиться место во время обновления.

 

Влияние на пользователей

Для большинства пользователей не должно быть заметных изменений, кроме немного более быстрой загрузки. Это связано с тем, что ядро Linux уже довольно давно поддерживает декомпрессию zstd.

Существующие установки Fedora будут автоматически обновлены до использования zstd по умолчанию, и от вас не потребуется никаких действий вручную.

Если вы предпочитаете использовать xz для initrd-сжатия, вы можете настроить dracut соответствующим образом.

Разработчикам нужно будет убедиться, что их инструменты по-прежнему работают с новым методом сжатия.

 

Как протестировать Изменение

Если вы опытный пользователь и хотите протестировать эту функцию в системе Fedora с пакетным режимом (например, в Fedora Workstation) до её официального выпуска, выполните следующие действия.

Установите zstd с помощью команды от имени пользователя root:

dnf install -y zstd

 

Пересоберите файл initrd:

dracut <path to initrd>

 

или

dracut --regenerate-all

 

для всех версий ядра.

Проверьте, не сжат ли он zstd:

LANG=C grep -aUPq "\x28\xb5\x2f\xfd" <path to initrd> && echo "using zstd" || echo "not using zstd"

 

Чтобы изменения вступили в силу, перезагрузите систему.

Для других типов систем может потребоваться дождаться, пока изменения появятся в разрабатываемых версиях, или создать собственные образы.

 

Скоро выйдет более эффективная версия Fedora

Переход на сжатие zstd для initrd — разумное решение для Fedora.

Благодаря использованию современного и эффективного алгоритма сжатия Fedora будет загружаться быстрее, а пользователи смогут избежать досадных ошибок, связанных с заполнением /boot раздела, что в конечном счёте улучшит общее впечатление от использования.

Мы с нетерпением ждём выхода Fedora Linux 43 и этих долгожданных улучшений!

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала