• База знаний
  • /
  • Блог
  • /
  • Wiki
  • /
  • ONLINE CHAT
+380 (44) 364 05 71

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

Огляд FreeBSD 15.0: новий цикл релізів, оновлення ядра, драйверів і безпеки, зміни у pkgbase та підтримці хмарних серверів

В начале декабря вышла новая версия 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
navigate
go
exit
Спасибо, что выбираете FREEhost.UA