Сегодня состоялся новый крупный релиз свободной операционной системы FreeBSD. Новый релиз был сфокусирован на поддержку современных графических адаптеров, много внимания было уделено системе шифрования дисков GELI и системе контейнерной виртуализации VIMAGE. Здесь будут рассмотрены на мой взгляд самые значимые из изменений.
Графика:
В FreeBSD на архитектурах i386 и amd64 изменен принцип работы графических драйверов. Новые драйверы для современных видеокарт от AMD (начиная с Southern Islands) и встроенных графических адаптеров от Intel теперь доступны в коллекции портов, однако старые драйверы пока что идут по умолчанию при установке.
Для установки нового драйвера в большинстве случаев достаточно установить пакет graphics/drm-kmod из портов или репозитория, а затем добавить соответствующий драйвер в kld_list в rc.conf:
Для Intel (i915):
kld_list="/boot/modules/i915kms.ko"
Для AMD на ядрах GCN
kld_list="/boot/modules/amdgpu.ko"
Для AMD до GCN:
kld_list="/boot/modules/radeonkms.ko"
Замечание: пользователи, использующие графику должны быть добавлены в группу video
Замечание: для использования нового драйвера с Xorg нужно установить драйвер x11-drivers/xf86-video-ati, для работы старого драйвера используется x11-drivers/xf86-video-ati-legacy
Поддержка ARM
- Поддержка последовательного терминала через OTG включена по умолчанию.
- Образы системы для armv6 и armv7 теперь могут по умолчанию загружаться при помощи EFI.
- Добавлена поддержка сборки образа aarch64 для PINE64-LTS
Ядро:
- В usb_templates добавлен тип USB устройства multifunction. Это позволяет использовать многофункциональные устройства USB, которые могут быть одновременно и CDC ACM (serial), и CDC ECM (Ethernet), и Mass Storage.
- Из драйвера random удалён алгоритм генерации Yarrow, теперь там остался пока только Fortuna. Также была улучшена производительность драйвера за счёт сокращения ненужной деятельности во время генерации чисел.
- Улучшена производительность драйвера виртуального терминала vt, теперь он выводит текст от 2 до 6 раз быстрее!
- Драйвер файловых систем Ext ext2fs теперь может полноценно работать с файловой системой ext4.
- Подсистема ACPI обновлена до ACPI 6.0, что может быть необходимо некоторым современным системам
- Улучшена поддержка команды TRIM для файловой системы UFS/FFS, что позволит вдвое сократить запросы на чтение/запись
Виртуализация:
- Система контейнерной виртуализации VIMAGE теперь включена по умолчанию.
- Гипервизор bhyve теперь поддерживает драйвер VirtIO SCSI
- Гипервизор bhyve теперь поддерживает эмуляцию устройств NVMe
- Добавлен новый sysctl параметр ядра security.jail.vmm_allowed, который позволяет использовать bhyve в jail
Сеть:
- Улучшена производительность межсетевого экрана pf за счёт использования системного вызова rmlock вместо rwlock.
- Удалена поддержка сетей token-ring и протокола Arcnet.
- Межсетевой экран pf теперь можно использовать внутри jail при помощи vnet.
- В сетевой стек добавлена опция SO_REUSEPORT_LB, которая позволяет нескольким процессам и потокам использовать один и тот же порт. Входящие подключения балансируются при помощи хеш-функции.
- Обновлен NFS до версии 4.1, которая поддерживает Parallel NFS.
Установка и загрузка:
- Установщик bsdinstall теперь поддерживает установку на UEFI системы с использованием шифрования GELI.
- Загрузчик теперь может определять список установленных ядер и выбирать их для загрузки. (опция kernels_autodetect в loader.conf, по умолчанию включена)
- Загрузчик теперь поддерживает систему шифрования дисков GELI для всех архитектур и блочных устройств.
- Добавлена kenv-опция init_exec, которая позволяет заместить init при загрузке.
Софт:
- Пакетный менеджер pkg обновлён до версии 1.10.5_5.
- dd теперь умеет выводить полосу прогресса с опцией status=progress.
- setfacl теперь может изменять ACL рекурсивно с ключом -R
- ntpd теперь можно выполнять от обычного пользователя.
- KDE обновлён до версии 5.12.5.
- Perl обновлён до версии 5.26.2.
- Python обновлён до версии 2.7
Более подробную информацию можно узнать по ссылке ниже.
>>> Подробности