Статья также доступна на украинском (перейти к просмотру).

В начале декабря вышла новая версия FreeBSD 15.0-RELEASE, которая является переходной между предыдущей 14-й и 15-й ветвями разработки. Это подтверждается созданием и подключением отдельного репозитория. FreeBSD-kmods для устранения «переходных проблем» для некоторых типов драйверов с нестабильными интерфейсами. Только с выходом версии 15.1 STABLE можно будет говорить о полноценном включении в работу 15-й ветви. Текущий релиз в основном был использован разработчиками для внесения существенных изменений в ядро системы и усовершенствования среды пользовательского пространства. Это и другое будет нами рассмотрено здесь более подробно.
Ядро
Общие изменения
Реализован совместимый с API интерфейс Linux inotify на внутреннем уровне. Это дает возможность без внесения изменений запускать программы, использующие механизм inotify для контроля изменений в файловых системах.
Утилита ktrace теперь обеспечивает запись детализированных данных о нарушении режима исполнения. Их отображение будет производиться за счет использования обновленной версии утилиты kdump.
Введен новый системный вызов setcred да MAC-перехватчики для него. Его преимущество перед стандартными вызовами – его атомарность – все учетные данные процесса теперь можно установить единовременно. Кроме того, он разрешает MAC-модулям четко ограничивать наборы учетных данных для процесса, поскольку теперь доступен предварительный просмотр исходного и возможного конечного состояния процесса.
Создан общий mac-узел, в котором будут отображаться параметры джейлов MAC-модулей
Настроена связь джейлов и их дескрипторов из kevent-фильтрами для отслеживания операций с джейлами – создание, изменение, удаление и подсоединение.
Устранены проблемы, связанные с замедлением работы ряда видеокарт компании AMD, которые используют драйвер amdgpu DRM для мета-портовверсий graphics/drm-515-kmod и выше.
Для платформы PowerPC реализована поддержка в ядре криптографических функций ossl, которые используют векторные регистры и с плавающей запятой.
Изменения для некоторых типов архитектур
Для платформы amd64 на компьютерах с современным процессором LA57 увеличился объем RAM, поддерживаемой системой, до 4 ТБ.
Для платформы amd64 была усовершенствована обработка регистров %fsbase/%gsbaseты — БД tls. Это улучшило работу приложений, которые напрямую управляют контекстом процессора.
Поддержка аппаратных платформ
В новом релизе продолжается постепенное отстранение FreeBSD от 32-х битных архитектур аппаратных платформ. В частности, полностью прекратилась поддержка 32-х битных i386,armv6даpowerpc. 32-х битные приложения будут работать только благодаря режиму совместимости, реализованному для соответствующих 64-х битных платформ.
Единственной 32-х битной платформой, которая еще поддерживается FreeBSD, остается armv7.
Полный список аппаратных платформ, поддерживаемых в настоящее время FreeBSD, можно просмотреть по этой ссылке.
Пользовательское пространство
Изменения в конфигурации
Базовый репозиторий FreeBSD теперь определен в файле /etc/pkg/FreeBSD.conf. Теперь он по стандартным настройкам выключен и поэтому при необходимости его необходимо включить отдельно.
Скрипты daily period в электронных письмах по стандартным настройкам отображается меньше контекста. Это необходимо для оптимизации размера исходных данных. Регулировать размер можно с помощью переменной daily_diff_flags, размещеннойв файле periodic.conf.
Утилита powered по стандартным настройкам теперь включена в файле /etc/rc.conf для шаблонов платформы Arm64 Raspberry Pi.
Приложения
Утилита ldconfig начала поддерживать файлы подсказок с произвольным порядком байтов. Основным форматом по стандартным настройкам является собственный порядок байтов хоста.
Утилита lastcomm теперь способна отображать временные отметки с точностью до сек.
Выходной формат утилиты date теперь содержит позиции для выведения наносекунд.
Программа dtrace с помощью библиотеки libxo теперь способна генерировать исходные данные в форматах XML, JSON и HTML.
Утилита ps вместо реального идентификатора пользователя теперь использует эффективный идентификатор для выбора текущего процесса. Это отвечает требованиям стандарта POSIX.
Программа mdo теперь дает возможность в явном виде указать все группы и пользователей в целевых учетных данных. Для базовой версии предоставляются стандартные значения для всех параметров аккаунтов.
Команда jail расширила список своих параметров за счет присоединения связанных с джейлом опций meta и env. Их можно использовать для безопасной передачи данных внутри джейла или маркировки джейлов метаданными.
Внешнее ПО
По стандартным настройкам вместо Heimdal 1.5.2 будет использоваться Kerberos.Heimdal при необходимости можно собрать с помощью флажка WITHOUT_MITKRB5.
Криптографическая библиотека OpenSSL обновлена до версии 3.5.4.
Файловая система OpenZFS обновлена до версии zfs-2.4.0-rc4.
OpenSSH обновленный до 10.0p2.
Драйверы rtw88, 89 и iwlwifi обновлены до версии Linux 6.17.
Библиотеки libarchive, libcbor, libcxxrt, libfido2, libpcap, ncurses та jemalloc обновлены до ближайших версий.
Runtime-библиотеки и API
В библиотеке math реализуемая функция tgammal в 128 бит для всех платформ, поддерживаемых системой.
Операции по работе с памятью и сроками С библиотеке для повышения производительности теперь могут выполняться с применением расширения SIMD.
Добавлена новая функция с именем cap_rights_is_empty для проверки установленных в cap_rights_ t прав.
Функция readdir_r замечена как устаревшая. Ее дальнейшее использование приведет к появлению соответствующих предупреждений при выполнении процессов компоновки и компиляции.
Устаревшие приложения
Были удалены: утилита shar, БД publickey, криптографический алгоритм DSA (OpenSSH).
Утилита по работе с дисками fdisk замечена как устаревшая. Вместо нее рекомендован переход на gpart.
Разное
Обновлены: Unicode (16.0.0), CLDR (45.0.0),шрифт Gallant для vt.
Поддержка облачных технологий
Базовые шаблоны Cloudinit и EC2 AMI уже не поддерживают по стандартным настройкам генерации ключей хоста ЮАР для SSH.
Базовые шаблоны EC2 загружаются более чем на 75% быстрее, чем в предыдущей версии 14.0 релиза.
Проект FreeBSD теперь публикует шаблоны Oracle Cloud Infrastructure и совместимых с OCI контейнеров.
FreeBSD теперь поддерживает cloudinit (nuageinit + config-drive), VMGoogle Cloud Compute Engine C4 и совместимая с OpenStack и многими хостинг-провайдерами.
Драйверы устройств
Обеспечена стабильность работы iwlwifi для устройств Intel Wi-Fi.
snd_clone вместе с соответствующими sysctl-командамибыл удален из аудио-подсистемы. Вместо узлов для каждого канала теперь создается только основной /dev/dspX,что упрощает систему.
Обеспечена возможность асинхронного отсоединения аудио-устройств, что упрощает их «горячее» отключение/подключение и облегчает работу с PulseAudio при переходе или выходе из спящего режима.
До ichsmb и ig4 добавлена поддержка Meteor Lake.
Для всех платформ включены nvme и nvmecontrol.
Обновленные версии mpi3mr (8.14.0.2.0), ice_ddp (1.3.41.0) та ena (2.8.1).
До iwmbtfwм добавлена поддержка Bluetooth 9260/9560.
Добавлендрайвер iwx для Intel Wi-Fi 6 серії M.2.
Добавлен ufshci для хост-контроллеров UFS.
Добавлен udbc для xHC-отладка работы целевых устройств на стороне хоста.
Драйвер usbhid всегда включен по стандартным настройкам и имеет самый высокий приоритет среди других. Он поддерживает: составляющие HID-устройства и устройства без интерфейса через hidraw, игровые контроллеры, стилусы и дигитайзеры через hpen, специальные функциональные клавиши, мыши в виртуализированных средах через hms т.д..
Системы хранения данных
Добавлена поддержка доступа и команды для установления соединений с контроллерами NVMe через Fabrics по TCP на удаленных VPS-хостах и не только.
Добавлена возможность динамического изменения размера пространства имен NVMe. Эти изменения отслеживаются драйверами nda и nvdв режиме реального времени.
Была изменена структура дескрипторов NFS-файлов для fs-система tmpfs, tarfs, ext2fs и cd9660. При экспорте файлов этих систем сервер NFS будет требовать их перемонтировки.
Для NFS разрешено указывать максимальное значение количества групп в параметрах exports:-mapall или-maproot.
Для ZFS добавлена поддержка функции VOP_COPY_FILE_RANGE() для выполнения операции клонирования на уровне блоков.
Включена поддержка операции клонирования на уровне блоков в NFSv4.2 при копировании файлов на сервере NFS.Клонирование на уровне блоков также поддерживается для экспортируемых фс систем. В настоящее время операция поддерживается только для ZFS с включенной опцией клонирования блоков.
При создании новой fsUFS с помощью newfs стандартные настройки теперь предусматривают автоматическое исполнение «легких» обновлений.
Для GEOM тома vinum больше не поддерживаются.
Системный загрузчик
Загрузчик BIOS по стандартным настройкам теперь предпочитает 64-битный SMBIOS v3,даже, при наличии 32-х битной версии. Последняя предусмотрена только для обеспечения совместимости.
При загрузке системы загрузчик считывает локальные файлы конфигурации из local_loader_conf_files в последнюю очередь.
LinuxBoot теперь можно использовать для загрузки системы из ОС Linux на платформах amd64 да aarch64.
Загрузчик может быть сконфигурирован для считывания файлов конфигурации, определенных в переменных planar maker, planar product, system product та m_product uboot SMBIOS.
В графических средах можно включить графику ASCII загрузчика с помощью переменной loader_gfx.
Сети и протоколы
Появилась поддержка интерфейса SO_SPLICE. Это позволяет приложениям объединять TCP-сокеты для лучшей циркуляции данных
Возобновленная поддержка АРП для сетей стандарта 802.
Стал возможным сборник ядра с поддержкой протокола IPv6 без включения в сборник его четырехбайтной версии.
К драйверу igc добавлена поддержка адаптивной модерации прерываний AIM.
В сетевой стек внесено большое количество улучшений, направленных на повышение производительности и исправление ошибок.
Порты и средства обслуживания пакетов
К стандартному файлу конфигурации FreeBSD.conf добавлен новый репозиторий FreeBSD-kmods. Репозиторий содержит скомпилированные модули ядра специально для ветки 15.0-RELEASE. Это позволит обеспечить стабильную работу некоторых графических драйверов.
Определены в файле конфигурации репозитории FreeBSD и FreeBSD-kmods теперь имеют новые названия – FreeBSD-ports та FreeBSD-ports-kmods.
Подписывайтесь на наш телеграм-канал https://t.me/freehostua, чтобы быть в курсе новых полезных материалов
Смотрите наш канал Youtube на https://www.youtube.com/freehostua.
Мы в чем ошиблись, или что-то пропустили?
Напишите об этом в комментариях, мы с удовольствием ответим и обсудим Ваши замечания и предложения.
|
Дата: 12.12.2025 Автор: Александр Ровник
|
|

Авторам статьи важно Ваше мнение. Будем рады его обсудить с Вами:
comments powered by Disqus