Documentation for a newer release is available. View Latest

Изменения в Fedora 40 для системных администраторов

Изменения в установщике

Список изменений в установщике Anaconda Fedora и связанных компонентах, таких как Kickstart, см. в примечаниях к выпуску вышестоящего проекта.

Загружаемый контейнер Fedora IoT

Теперь доступен загружаемый образ для редакции Fedora IoT. Это предоставляет пользователям новые способы использования Fedora IoT, которые могут лучше подходить для их сред и экосистем, позволяя более широкое внедрение.

Вы можете загрузить новый образ на официальной странице Fedora IoT. Также см. документацию.

389 Directory Server 3.0.0

Fedora 40 предоставляет новый крупный выпуск 389 Directory Server — значительное обновление по сравнению с версией 2.4.4, доступной в предыдущих выпусках.

Одно из основных изменений заключается в том, что начиная с этой версии новые экземпляры по умолчанию создаются с использованием LMDB вместо BerkeleyDB, которая была по умолчанию ранее. Дополнительную информацию см. здесь.

Переключение pam_userdb с BerkeleyDB на GDBM

pam_userdb собирался с поддержкой BerkeleyDB, но этот проект больше не поддерживается как открытое ПО, поэтому в Fedora 40 он заменён на GDBM. Информацию о том, как выполнить преобразование, см. в руководстве системного администратора Fedora.

Поддержка функции enumeration удалена для бэкендов AD и IPA

Функция enumeration предоставляет возможность выводить список всех пользователей или групп с помощью getent passwd или getent group без аргументов. Поддержка функции enumeration удалена для провайдеров AD и FreeIPA.

Инструмент sss_ssh_knownhostsproxy будет заменён в будущих выпусках

Инструмент sss_ssh_knownhostsproxy объявлен устаревшим и будет заменён новым, более эффективным инструментом. Подробности см. в задаче вышестоящего проекта.

Удаление SSSD files provider

Ранее устаревшая функция SSSD «files provider», позволяющая обрабатывать локальных пользователей, была удалена в Fedora 40. Это не влияет на конфигурацию по умолчанию, где локальные пользователи обрабатываются модулем glibc (libnss_files.so.2), что характерно для большинства случаев. В случае специфической конфигурации, требующей обработки локальных пользователей SSSD (аутентификация по смарт-картам или запись сеансов локальных пользователей), переключитесь на proxy provider. Если вы попадаете в один из этих случаев использования, обратитесь к документации вышестоящего проекта для получения более подробной информации.

Профиль Authselect minimal заменён на local

Профиль Authselect minimal теперь заменён на local. Новый профиль local основан на minimal, но имеет дополнительные опциональные возможности; он используется для обслуживания локальных пользователей и групп без SSSD. Эта миграция с профиля minimal на local выполняется автоматически при новой установке или обновлении до Fedora 40, и пользователи не затрагиваются. Однако пользователям следует адаптировать свои скрипты к новому профилю local, поскольку профиль minimal больше не доступен.

bogofilter переходит на SQLite

Bogofilter (пакет bogofilter) — это быстрый механизм фильтрации спама, использующий байесовский статистический анализ для классификации писем как спама или не-спама. Он использует Berkeley DB (пакет libdb) в качестве движка базы данных для хранения вероятностей слов и других соответствующих данных, используемых в процессе фильтрации.

В этом выпуске Bogofilter переключил свой движок базы данных с Berkeley DB на SQLite, поскольку Fedora объявила пакет libdb устаревшим.

Bogofilter поддерживает только один бэкенд базы данных за раз, поэтому обновлённый пакет bogofilter не сможет обрабатывать данные libdb. В результате новый пакет предоставляет скрипт миграции. В качестве альтернативы вы можете выполнить миграцию списков слов вручную с помощью команды bogomigrate-berkeley ~/.bogofilter/wordlist.db.

Podman 5

Движок контейнеров podman обновлён до версии 5, которая содержит множество исправлений ошибок и улучшений. Примечательные изменения включают:

  • Прекращена поддержка cgroups версии 1 (среды должны переключиться на cgroups версии 2)

  • Объявлены устаревшими плагины Container Networking Interface (CNI) (среды должны переключиться на сетевой стек netavark)

  • BoltDB объявлен устаревшим

  • Установлен passt в качестве сетевой службы по умолчанию без прав root вместо slirp4netns

  • Улучшена обработка файла containers.conf

  • Изолированные привязки podman для улучшения удобства использования

Полный перечень обновлений см. в примечаниях к выпуску вышестоящего проекта.

ROCm 6

Стек ROCm для вычислений на графических процессорах (GPU) обновлён до версии 6, которая содержит множество исправлений ошибок и улучшений. Примечательные изменения включают:

  • Улучшена производительность в таких областях, как математика с пониженной точностью и слои внимания

  • Новая библиотека hipSPARSELt для ускорения нагрузок ИИ с помощью технологии разрежённых матричных ядер AMD

  • Последняя поддержка фреймворков ИИ, таких как PyTorch, TensorFlow и JAX

  • Новая поддержка библиотек, таких как DeepSpeed, ONNX-RT и CuPy

Полный перечень обновлений см. в примечаниях к выпуску вышестоящего проекта.

Stratis 3.6

Это обновление включает новые выпуски stratisd 3.6.7 и stratis-cli 3.6.0.

Эти выпуски включают ряд улучшений, исправлений ошибок и изменений по обслуживанию. Ниже приводится краткая сводка изменений.

stratisd 3.6.7 содержит исправление ошибки, внесённой в stratisd 3.6.6, которая приводила к сбою команды stratis-min pool start, если пул был зашифрован и пароль для разблокировки пула был указан в командной строке. Он также содержит исправление ошибки, внесённой в stratisd 3.6.4, которая препятствовала автоматической разблокировке пула при монтировании файловой системы, указанной в /etc/fstab.

stratisd 3.6.6 исправляет ошибку, при которой можно было некорректно сообщить PID уже запущенного экземпляра stratisd при попытке запустить другой экземпляр. Он также включает ограничения на размер строковых значений в метаданных уровня пула Stratis.

stratisd 3.6.5 включает модификацию своего внутреннего механизма блокировки, которая позволяет блокировке, не конфликтующей с текущей удерживаемой блокировкой, обгонять конфликтующую. Это изменение ослабляет ограничение честности, которое отдавало приоритет блокировкам исключительно на основе порядка их помещения в очередь ожидания.

stratisd 3.6.4 содержит исправление для обработки stratisd-min команды start, отправляемой stratis-min на незашифрованные пулы. Он также перехватывает и регистрирует сообщения об ошибках, выдаваемые исполняемыми файлами thin_check или mkfs.xfs.

stratisd 3.6.3 явно устанавливает опцию nrext64 в 0 при вызове mkfs.xfs. Недавняя версия XFS изменила значение по умолчанию для nrext64 на 1. Явная установка значения 0 предотвращает создание stratisd файловых систем XFS, которые невозможно смонтировать на более старых ядрах.

stratisd 3.6.2 содержит исправление в способе выделения тонких устройств для предотвращения смещения различных секций тонкого устройства данных. Такие смещения могут привести к снижению производительности.

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

stratisd 3.6.0 расширяет свою функциональность, позволяя пользователю устанавливать ограничение на размер файловой системы, и включает ряд дополнительных улучшений.

Интерфейс командной строки stratis-cli 3.6.0 расширен дополнительной опцией для установки ограничения размера файловой системы при создании и двумя новыми командами файловой системы — set-size-limit и unset-size-limit — для установки или снятия ограничения размера файловой системы после её создания.

Все выпуски включают различные внутренние улучшения, удобства и мелкие исправления ошибок.

Для получения более подробной информации см. журнал изменений stratisd и журнал изменений stratis-cli.

Отказ от дельта RPM

Дельта RPM (DRPM) — это функция, которая сокращает время и объём данных, необходимых для обновления пакетов, загружая только различия (дельты) между старой и новой версией RPM-пакета. На основе вашей текущей версии и дельты ваша система затем локально пересобирает полный RPM-пакет с новой версией программного обеспечения.

В этом выпуске Fedora дельта RPM больше не будут генерироваться в процессе сборки. Кроме того, поддержка DRPM в dnf и dnf5 будет отключена по умолчанию. Некоторые из наиболее заметных причин этого изменения следующие:

  • Невозможно создавать DRPM для всех пакетов из-за способа генерации DRPM в процессе сборки. В результате это может приводить к обновлениям, затрагивающим сотни пакетов, но лишь для небольшой их части (или ни для одного) в репозитории доступны соответствующие DRPM.

  • Пересборка новой версии RPM может завершиться сбоем. Это приводит к дополнительной загрузке полного RPM для новой версии.

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

Это изменение направлено на достижение следующих преимуществ:

  • Упрощение процесса сборки для репозиториев «updates» и «updates-testing», поскольку генерация DRPM пропускается.

  • Снижение использования пропускной способности для обновлений метаданных репозитория.

  • Сокращение требований к хранилищу в инфраструктуре Fedora и на зеркалах репозиториев за счёт меньшего объёма метаданных и отказа от DRPM.

  • Более надёжные обновления для пользователей.

Прекращение загрузки файлов списков по умолчанию

Файлы списков (filelists) — это XML-файлы, предоставляющие важные метаданные и информацию, облегчающую установку, управление и обслуживание RPM-пакетов.

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

Это изменение направлено на достижение следующих заметных преимуществ:

  • Значительное сокращение времени обработки и использования ресурсов для сборки RPM-пакетов, установки, создания тестовых сред и других операций

  • Снижение затрат на эксплуатацию сервера-зеркала Fedora

  • Снижение требований к ОЗУ для процесса DNF, что решает существующие проблемы при работе системы Fedora на машинах с малым объёмом памяти, таких как Raspberry Pi

Обратите внимание, что вы всё ещё можете использовать DNF без метаданных файлов списков при запросе файлов, расположенных в каталогах /usr/bin, /usr/sbin или /etc.

wget2 в качестве wget

Команда wget в Fedora 40 использует Wget2.

GNU Wget2 является преемником GNU Wget, предоставляя современную реализацию wget на основе новой библиотеки: libwget2. Намерение перейти с wget 1.x на wget2 — перейти на реализацию, которая более активно разрабатывается и предоставляет более богатый интерфейс для использования функциональности wget.

Включение обнаружения конфликтов IPv4-адресов по умолчанию в NetworkManager

Обнаружение конфликтов IPv4-адресов теперь включено по умолчанию в NetworkManager. Другими словами, RFC 5527 теперь включён по умолчанию с интервалом 200 мс.

Назначение индивидуальных стабильных MAC-адресов для Wi-Fi-соединений

Fedora 40 принимает stable-ssid в качестве режима по умолчанию для назначения индивидуальных стабильных MAC-адресов Wi-Fi-соединениям в NetworkManager, повышая конфиденциальность пользователей без ущерба для стабильности сети.

Изменение добавляет новый файл /usr/lib/NetworkManager/conf.d/22-wifi-mac-addr.conf, который устанавливает wifi.cloned-mac-address=stable-ssid в качестве режима по умолчанию для выбора MAC-адреса в Wi-Fi-соединениях NetworkManager. Режим stable-ssid генерирует различный MAC-адрес на основе каждого SSID, с которым он подключается к сети, что предназначено для повышения конфиденциальности пользователей, усложняя отслеживание пользователей по сетям через их аппаратный MAC-адрес.

Это новое значение по умолчанию заменяет значение NetworkManager по умолчанию preserve и применяется ко всем существующим и новым Wi-Fi-профилям в Fedora 40 и более поздних версиях, которые не переопределяют значение по умолчанию, например, клонированием конкретного MAC-адреса в графическом интерфейсе NetworkManager или независимой установкой wifi.cloned-mac-address.

С принятием stable-ssid в качестве значения по умолчанию в Fedora 40 обновление до Fedora 40 будет применять эту новую генерацию MAC-адресов по умолчанию, включая существующие Wi-Fi-профили. Это может привести к потенциально нарушающим изменениям в поведении Wi-Fi-соединений, особенно для пользователей сетей с функциями или ограничениями, которые полагаются на предыдущий MAC-адрес устройства по умолчанию.

Пользователи, которые должны поддерживать постоянные MAC-адреса для конкретных сетей, могут решить эту проблему, вручную установив wifi.cloned-mac-address в permanent для конкретных профилей:

nmcli connection modify [$PROFILE] wifi.cloned-mac-address permanent

Замените [$PROFILE] на имя профиля NetworkManager, которым обычно является SSID. Чтобы вывести список профилей по имени, выполните nmcli connection.

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

  • Создайте пользовательский файл конфигурации в /etc/NetworkManager/conf.d/22-wifi-mac-addr.conf, который может быть пустым или содержать конкретные конфигурации. Это предотвращает загрузку Fedora файла по умолчанию из /usr/lib.

  • Создайте файл .conf с более высоким приоритетом, например /etc/NetworkManager/conf.d/90-wifi-mac-addr.conf, который устанавливает wifi.cloned-mac-address:

    [connection-90-wifi-mac-addr-conf]
    wifi.cloned-mac-address=permanent

Подробности о порядке загрузки файлов конфигурации и их приоритете см. в man NetworkManager.conf. О других доступных опциях wifi.cloned-mac-address см. [документацию NetworkManager](https://networkmanager.dev/docs/api/1.46/settings-802-11-wireless.html).

PostgreSQL 16

Fedora 40 предоставляет версию 16 PostgreSQL. Для получения дополнительной информации см. примечания к выпуску вышестоящего проекта.

Миграция на SPDX

RPM-пакеты используют идентификаторы SPDX в качестве стандарта для лицензий. 63 % пакетов и почти все пакеты из набора ELN были мигрированы на идентификаторы SPDX. Оставшиеся пакеты, по оценкам, будут мигрированы на SPDX в Fedora 41.