Documentation for a newer release is available. View Latest

Общесистемные изменения

Улучшенный сбор данных об использовании через DNF

До Fedora 32 проект Fedora оценивал количество установленных систем Fedora путём подсчёта уникальных IP-адресов, которые обращаются за обновлениями к официальным зеркалам. Этот подход крайне неточен по множеству причин, таких как занижение из-за NAT и завышение из-за коротких аренд DHCP и перемещения ноутбуков между различными сетевыми подключениями, а также этот подход не позволяет различать варианты Fedora. В то же время точные показатели использования чрезвычайно полезны для любого программного проекта, который хочет служить своему сообществу и оставаться актуальным, поэтому проект Fedora искал способы получения более полезной информации без ущерба для конфиденциальности пользователей.

В Fedora 32, когда установленная система обращается к одному из официальных зеркал Fedora, она предоставляет следующую информацию ("пользовательский агент"):

  • Версия Fedora (например, "Fedora 32").

  • Вариант Fedora (например, "Server").

  • Операционная система и архитектура (например, "Linux.x86_64").

  • Нововведённая переменная countme.

Переменная countme используется проектом Fedora для определения возраста системы. Переменная имеет четыре возможных значения:

  • 1 в течение первой недели после установки — 0-7 дней.

  • 2 между первой неделей и первым месяцем после установки — 8-30 дней.

  • 3 между первым месяцем и первыми 6 месяцами после установки — 31-180 дней.

  • 4 после первых 6 месяцев после установки — 180 дней или более.

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

Если вы хотите отключить это поведение, измените значение логической переменной countme в конфигурации DNF. Подробности см. на справочной странице dnf.conf(5).

Эта система не будет активна со стороны проекта Fedora в момент выпуска Fedora 32, поскольку серверная часть не готова. Клиенты будут отправлять свой пользовательский агент, включая countme, но сначала он не будет обрабатываться.

Физические оптические носители не требуют тестирования перед общим доступом

Начиная с Fedora 32, операционная система, устанавливаемая с физического оптического носителя, не будет требовать тестирования перед общим доступом. Однако проблемы, связанные с загрузкой с физических носителей, по-прежнему будут рассматриваться как блокирующие ошибки.

Изменение затронет следующие образы:

  • Fedora-Everything-netinst-x86\_64-<RELEASE_MILESTONE>.iso

  • Fedora-Workstation-Live-x86\_64-<RELEASE_MILESTONE>.iso

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

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

Из-за некоторых ошибок пользователи в некоторых случаях могут не иметь возможности завершить установку с оптического носителя.

Изменения в упаковке пакета clang-libs

Пакет clang-libs больше не включает отдельные библиотеки компонентов, такие как libclangBasic.so, libclangAST.so и другие. Пакеты, зависящие от библиотек clang, теперь компонуются с libclang-cpp.so.

В результате этого изменения:

  • Достигнута улучшенная стабильность в Fedora и время запуска приложений.

  • Конечные пользователи, разрабатывающие приложения с использованием библиотек clang, обязаны обновить свои приложения для использования libclang-cpp.so вместо отдельных библиотек компонентов.

  • Конечные пользователи, использующие пакеты Fedora, зависящие от библиотек clang, не испытывают никакого влияния из-за этого изменения.

Добавлена поддержка пакетов AArch64 и ppc64le с расширенной доступностью пакетов, зависящих от FPC

Обновлённая версия (3.2.0) компилятора Free Pascal теперь доступна в Fedora 32. С обновлённым компилятором Free Pascal теперь можно собирать пакеты Arch64 и ppc64le. Кроме того, компилятор Free Pascal теперь поддерживает новые архитектуры. В результате программы, скомпилированные с использованием FPC, могут работать на большем числе архитектур, поддерживаемых Fedora.

Принятие формата sysusers.d

Ранее пользователи создавались в разделе %pre путём вызова команд getent, useradd и groupadd.

С этим обновлением пользователи определяются в формате sysusers.d. Добавлен генератор Provides generator для пакетов RPM для создания виртуальных Provides user(<name>) и group(<name>) для пакетов с файлами sysusers.d.

Добавлен генератор Provides для пакетов RPM для генерации user(<name>) и group(<name>) для пакетов с файлами sysusers.d.

В качестве преимущества:

  • Пакеты объявляют системных пользователей, используя единый синтаксис.

  • Скрипты более стандартизированы.

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

  • Администраторы могут легко переопределять определения системных пользователей, предоставляя соответствующие файлы sysusers.d с более высоким приоритетом.

    Пользователи по-прежнему создаются с использованием вызовов useradd в старом стиле.

Ограниченное использование скриптов в основных пакетах

В Fedora 32 из основных пакетов (пакетов, используемых для сборки минимального образа контейнера) были удалены все вызовы скриптов (%pre, %post, %preun, %postun). Это означает, что весь процесс установки образа контейнера теперь является декларативным и прозрачным для инструментов упаковки, таких как rpm, ostree или composer, установка выполняется быстрее, а сохранение этого подхода в будущем позволит реализовать дополнительные оптимизации и функции.

Пакеты по-прежнему могут вносить изменения в систему во время установки, помещая файлы в определённые места, которые запускают действия.

Более быстрое восстановление при нехватке памяти в Fedora Workstation

Служба earlyoom теперь включена по умолчанию в Fedora Workstation.

Служба earlyoom отслеживает использование памяти системы. Если свободная память падает ниже установленного предела, earlyoom завершает подходящий процесс для освобождения памяти. В результате система не становится неотзывчивой в течение длительного времени в условиях нехватки памяти.

Ниже приведена конфигурация earlyoom по умолчанию:

  • Если и RAM, и swap падают ниже 10% свободного пространства, earlyoom отправляет сигнал SIGTERM процессу с наибольшим oom_score.

  • Если и RAM, и swap падают ниже 5% свободного пространства, earlyoom отправляет сигнал SIGKILL процессу с наибольшим oom_score.

Для получения дополнительной информации см. справочную страницу earlyoom.