LINUX.ORG.RU

Релиз FreeBSD 12.0

 


5

2

Сегодня состоялся новый крупный релиз свободной операционной системы 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

Более подробную информацию можно узнать по ссылке ниже.

>>> Подробности

★★★★

Проверено: jollheef ()

dd теперь умеет выводить полосу прогресса с опцией status=progress.

Правда, это было никому особо не нужно, т.к. в BSD никто не выкидывал SIGINFO, объявляя что SIGUSR хватет всем. Соотв. прогресс в dd, как и в куче других софтин, можно было посмотреть, просто жмякнув CTRL-T :)

KDE обновлён до версии 5.12.5.
Perl обновлён до версии 5.26.2.

Совершенно не зависит от релиза 12, т.к. идет в портах, отдельно и доступно таким образом сразу для всех поддерживаемых версий.

Python обновлён до версии 2.7

См. предыдущее. Тем более в такой формулировке полная фигня выходит — в базовой системе питона нет, а в портах 2.7 появилась

15 Aug 2010 19:12:51
Original commit files touched by this commit  2.7.0
 This port version is marked as vulnerable.	lwhsu search for other commits by this committer	
- Introduce Python 2.7.0

Обожаю местную рекапчу, которая проходится аж с 5 раза

anonymous ()
Ответ на: комментарий от anonymous

А про SIGINFO с CTRL+T я не знал. Надо бы в линукс такое, там иногда встречались моменты, в которых очень сокрушаешься, что нет прогресс бара.

С пакетами да, как-то выглядит так себе, но как ни странно в пресс-релизе обновления были упомянуты, поэтому я решил их пока включить в новость.

Unicode4all ★★★★ ()
Ответ на: комментарий от anonymous

KDE обновлён до версии 5.12.5.
Perl обновлён до версии 5.26.2.

Совершенно не зависит от релиза 12, т.к. идет в портах, отдельно и доступно таким образом сразу для всех поддерживаемых версий.

Имеются в виду бинарные пакеты, которые идут, например, на dvd1.iso.

yuripv ()

Вот это я понимаю, мажорная версия. Уже качаю с яндекс.миррор. Особенно порадовала KDE5, так понял, четверку вынесли из новой версии.

Infra_HDC ★★★★★ ()
Ответ на: комментарий от kostyarin_

Из ревью (https://reviews.freebsd.org/D11003):

This patch adds a new socket option, SO_REUSEPORT_LB, which allow multiple programs or threads to bind to the same port and incoming connections will be load balanced using a hash function.

Интересно было бы узнать какие софтины умеют использовать эту опцию.

Похоже что nginx: https://forum.nginx.org/read.php?29,280367,280367

Как и зачем конкретно, не знаю, не использовал.

yuripv ()
Ответ на: комментарий от yuripv

Ну там в коде

#ifdef SO_REUSEPORT_LB
    // use of SO_REUSEPORT_LB
#else
    // use of SO_REUSEPORT
#end

А перед кодом так

description:
Added FreeBSD support for "listen ... reuseport".

Уж не значит ли это, что _LB - всего лишь другое название, хорошо извесного линупсового SO_REUSEPORT. Ждёмс мастеров, кто растолкует.

kostyarin_ ()
Ответ на: комментарий от anonymous

Обожаю местную рекапчу, которая проходится аж с 5 раза

Зачем ты так мучаешься, зарегайся. А вообще не верю, что рекапчу не взломали, на столько она богомерзкая

nomathere ()

Новый релиз был сфокусирован на поддержку

будут рассмотрены на мой взгляд

Господи, вас там в школе за изучение русского языка что, розгами секут?

изменен принцип работы графических драйверов

Улучшена поддержка команды TRIM для файловой системы UFS/FFS, что позволит вдвое сократить запросы на чтение/запись

Система контейнерной виртуализации VIMAGE

И за английский — тоже?

Just IMHO, новость достойна удаления по 4.2.

anonymous ()
Ответ на: комментарий от alexferman

Да ладно, разница всего в 3 минорных релиза это для BSD прям свежачок.

Цыпа, лапочка моя, расскажи какие кардинальные изменения были сделаны в графике за эти 3 релиза?

Вот как тебе не стыдно на весь белый свет щеголять своей глупостью — ума не приложу.

anonymous ()
Ответ на: комментарий от kostyarin_

Сильно не разбираюсь что там во FreeBSD, но название намекает что программа из юзерспейса может 'навесить' на сокет хеш-функцию, по которой будет распределятся пакеты по воркерам. Например, можно написать такую хеш-функцию, чтобы например все пакеты с одного и того-же адреса залетали в один воркер. Илии по какому-нибудь session-id на своем протоколе распределять. Линуксовый SO_REUSEPORT этого не умеет, просто каруселькой распределет пакеты по воркерам.

duger ()

Новый релиз был сфокусирован на поддержку современных графических адаптеров

Intel AMD

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

А ещё БЗДя не умеет корректно считывать ввод с MODECOM'овских клав. Вот как так? Линукс - умеет, древний оффтопик - тоже, а у БЗДи даже до ввода хостнэйма дело не доходит. Пожалуй, останусь на Арче.

anonymous ()
Ответ на: комментарий от psiman

Пока что инфы касательно работоспособности карт нет. В новом AMDGPU драйвере обещают поддержку большинства GCN карт, в том числе и Polaris.

Unicode4all ★★★★ ()
Последнее исправление: Unicode4all (всего исправлений: 1)

Спрошу вопрос. А есть ли где-либо валидная статистика использования. А то я парашют отстегнуть не успел, он так и волочится за мной :-D

Deleted ()