Дата публикации:Tue, 10 Mar 2026 09:39:36 +0300
После девяти месяцев разработки сформирован релиз FreeBSD 14.4. Установочные образы подготовлены для архитектур amd64, i386, aarch64, armv7, powerpc, powerpc64 и riscv64. Дополнительно подготовлены сборки для систем виртуализации (QCOW2, VHD, VMDK, raw) и облачных окружений Amazon EC2, Google Compute Engine и Vagrant.
Следующее обновление FreeBSD 14.5 запланировано на сентябрь 2026 года. Поддержка нынешнего выпуска FreeBSD 14.4 будет осуществляться до 31 декабря 2026 года, а прошлого выпуска FreeBSD 14.3 - до 30 июня 2026 года. В целом ветка FreeBSD 14 будет сопровождаться до 30 ноября 2028 года, а ветка FreeBSD 13.x до 30 апреля 2026 года. Параллельно развивается ветка FreeBSD 15, следующий выпуск (15.1) в которой намечен на 2 июня 2026 года.
Основные изменения во FreeBSD 14.4:
- Добавлена утилита sndctl для управления настройками звуковых карт. В утилиту swapon добавлена поддержка шифрованных файлов подкачки, для определения которых через fstab можно использовать md-устройства с суффиксом ".eli". В утилиту nuageinit, выполняющую инициализацию виртуальных машин, добавлена поддержка ххhttps://cloud-init.io/ cloud-initъъ, конфигурирования по сети и управления пакетами. Для совместимости с cloud-init добавлены команды 'runcmd', 'packages', 'fqdn', 'hostname', 'sudo', 'write_files', 'nameservers', 'tzsetup' и 'doas'. Реализован полноценный парсер формата YAML. Включено ведение лога. Реализованы команды "chpasswd", 'wakeonlan', 'set-name' и 'match.driver'. Консольный шрифт spleen обновлён до версии 2.2.0 и расширен дополнительными символами (длинное тире, короткое тире, дефис, угловые скобки, белый квадрат, крест и двойной крест). Улучшено выравнивание символов на экранах с высокой плотностью пикселей. В консольный шрифт gallant, который теперь включает более 4300 глифов, добавлена поддержка кириллицы и наборов с математическими символами, стрелками , валютами и рамками. В состав включена файловая система 9P (p9fs), которую можно использовать с устройствами virtio-9p и гипервизором Bhyve для организации доступа из виртуальных машин к содержимому файловой системы хост-окружения. Для загрузки драйвера в loader.conf следует использовать настройку "virtio_p9fs_load=YES". В файловой системе tarfs налажена возможность работы с файлами, размером более 4 ГБ. В ФС unionfs и nullfs усилена проверка корневых vnode при обработке путей с ".." для блокирования потенциальных уязвимостей, позволяющих выйти за пределы корневого каталога jail-окружения. В подсистеме Jail ограничен доступ непривилегированных пользователей из родительского Jail к выполнению отладки, настройке планировщика и отправке сигналов процессам, работающим в дочерних Jail. Для выполнения подобных операций предложены отдельные привилегии PRIV_SCHED_DIFFJAIL, PRIV_DEBUG_DIFFJAIL и PRIV_SIGNAL_DIFFJAIL. Для возвращения старого поведения в управлении процессами в Jail добавлена настройка "allow.nounprivileged_parent_tampering". В подсистему Jail добавлена поддержка параметров "met" и "env", при помощи которых к Jail-окружениям можно привязывать произвольные строковые метаданные и данные об окружении. Параметры могут задаваться при создании Jail, изменяться командой "jail -cm" и просматриваться командой jls. Например, 'jail -cm ... meta="tag1=value1 tag2=value2" env="configuration"'. Для ограничения максимального размера данных в параметрах предложена sysctl-настройка "security.jail.meta_maxbufsize". В утилиту ngctl добавлен флаг "-j" для запуска команд внутри указанного Jail-окружения. Добавленный флаг позволяет манипулировать узлами netgraph в изолированных окружениях, в которых не установлена утилита ngctl. Расширены возможности утилиты mdo, позволяющей запускать команды под другим пользователем по аналогии с утилитой "su", но используя вместо setuid модуль ядра mac_do и системный вызов setcred. В новой версии реализованы опции для управления идентификаторами пользователей и групп в запускаемых процессах: "-k" для сохранения текущих пользователей; "-g" и "-G" для выставления основной и дополнительной групп; "-s" для изменения дополнительных групп; "--euid", "--ruid", "--svuid", "--egid", "--rgid" и "--svgid" для переопределения заданных идентификаторов. В утилиту kadmin, предназначенную для управления Kerberos, добавлена опция "-f" для дампа БД Heimdal KDC в формате, совместимом с MIT KDC, что позволяет выполнить миграцию с Heimdal Kerberos на MIT Kerberos без полного пересоздания БД. В поставляемом в базовой системе урезанном варианте пакетного менеджера pkg(7) разбор опций унифицирован с полной версией инструментария pkg(8). Порядок опций для команд в pkg(7) теперь должен соответствовать поведению pkg(8), например, вместо "pkg -f bootstrap" следует указывать "pkg bootstrap -f". В инсталляторе bsdinstall прекращена поддержка установки с использованием файловой системой ZFS на дисках с MBR (ZFS можно использовать только на дисках с GPT). Обеспечено копирование загрузчика loader.efi во все ESP (EFI System Partition), созданные на дисках с ZFS, на случай если основной диск выйдет из строя. В утилите freebsd-update обеспечен строгий порядок установки разделяемых библиотек: libsys, libc, libthr и затем остальные, что исключает возникновение проблем при обновлении с FreeBSD 14.x до ветки 15.x. В утилиту newfs добавлен флаг "-u" для отключения по умолчанию механизма "soft updates" и журналирования для ФС UFS2. В PAM-библиотеках (Pluggable Authentication Modules) обеспечен поиск модулей в каталоге "${LOCALBASE}/lib/security" в дополнение к каталогу "${LOCALBASE}/lib". В беспроводной стек net80211 добавлена поддержка каналов VHT160 и VHT80P80, используемых в современных точках доступа. Расширена поддержка оборудования. В драйвер iwlwifi для беспроводных адаптеров Intel добавлена поддержка ACPI. В драйверы ix и ixv добавлена поддержка семейства сетевых карт Intel Ethernet E610 2.5G/5G/10G. В драйверы mfi и mrsas добавлена поддержка RAID-контроллеров Fujitsu SAS 6Gbit/s 1GB (D3116), применяемых на серверах Fujitsu PRIMERGY. В формируемые образы SD-карт добавлена поддержка плат Raspberry Pi Zero 2W. Фоновый процесс blacklistd, обеспечивающий динамическую блокировку сетевых портов для защиты от DoS-атак, обновлён и переименован в blocklistd. В состав базовой системы включён пакет с Lua-биндингами для libyaml. OpenSSH обновлён с выпуска 9.9p2 до 10.0p2 с включением по умолчанию гибридного алгоритма mlkem768x25519-sha256, стойкого от побора на квантовом компьютере. Обновлены версии сторонних компонентов: OpenZFS 2.2.9 (была 2.2.7), OpenSSL 3.0.16, SQLite 3.50.4, unbound 1.24.1, libucl 0.9.2, expat 2.7.3, libyaml 0.2.5, libarchive 3.8.5, xz 5.8.2, less 685, bmake 20251111, bc 7.1.0. В базовые установочные носители (bootonly) добавлены пакеты с прошивками для беспроводных устройств, позволяющими использовать беспроводное соединение для извлечения по сети установочных файлов. Добавлен исполняемый файл sbin/ipfw15, собранный с новым KBI (Kernel Binary Interface) для совместимости с ядром FreeBSD 15. Оригинальная утилита ipfw сама определяет наличие нового KBI и запускает ipfw15 при необходимости для корректной загрузки правил пакетного фильтра при обновлении до FreeBSD 15. Объявлена устаревшей и намечена для удаления поддержка протокола маршрутизации RIP (routed, rtquery, route6d, rip6query). Вместо routed рекомендовано использовать пакеты 'bird' или 'quagga' из коллекции портов. Объявлена устаревшей встроенная в ядро реализация MIDI-секвенсора. Удалён код для совместимости с версиями пакетного фильтра ipfw, поставлявшимися до выпуска FreeBSD 8.
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=64956