LINUX.ORG.RU

FreeBSD 13.1-RELEASE

 ,


0

1

Команда разработчиков FreeBSD представила FreeBSD 13.1-RELEASE — второй выпуск ветки stable/13.

Некоторые из нововведений в базовой системе:

  • Сборка LLDB включена на всех архитектурах powerpc.
  • One True Awk обновлен до последней версии из апстрима.
  • zlib обновлен до версии 1.2.12.
  • libarchive обновлен до версии 3.6.0 с дополнительными исправлениями ошибок и безопасности из предстоящего выпуска патча.
  • ssh обновлен до OpenSSH v8.8p1, включая обновление безопасности и исправления ошибок.
  • В ssh разрешено использование аппаратных аутентификаторов FIDO/U2F с применением новых типов открытых ключей ecdsa-sk и ed25519-sk, вместе с соответствующими типами сертификатов.

Библиотеки времени выполнения и API:

  • Код OpenSSL оптимизирован на архитектурах powerpc, powerpc64 и powerpc64le.
  • Исправлено обнаружение функций ЦП, ускоряющих криптографические операции для ARMv7 и ARM64, что значительно ускорило алгоритмы aes-256-gcm и sha256.
  • Сборка библиотек ASAN и UBSAN включена на архитектурах riscv64 и riscv64sf. На этих же архитектурах добавлены библиотеки OFED и OPENMP.

Изменения ядра:

  • Исправлено повреждение вывода на последовательной консоли на powerpc64.
  • CAS изменен для поддержки Radix MMU.
  • Исправлен запуск FreeBSD с включенными суперстраницами HPT в QEMU с TCG на powerpc64(le).
  • Добавлена ​​поддержка Superpages в pmap_mincore на powerpc64(le).
  • Добавлена поддержка HWCAP/HWCAP2 aux args на arm64 для 32-битных двоичных файлов ARM. Это исправляет сборку/запуск golang под эмуляцией COMPAT32.

Драйвера устройств:

  • в igc(4) представлен драйвер для Intel I225 Ethernet контроллер. Этот контроллер поддерживает скорости 2,5G/1G/100Mb/10Mb и позволяет разгрузить контрольную сумму tx/rx, TSO, LRO и работу с несколькими очередями.
  • Добавлено исправление для консоли VGA/HDMI с AST2500 во время загрузки на powerpc64(le).
  • Общие функции чтения/записи PCI исправлены для целей с прямым порядком байтов в virtio(4).
  • Добавлена ​​поддержка обратного порядка байтов mpr(4).
  • Максимальный размер ввода-вывода уменьшен, чтобы избежать проблем с DMA в aacraid(4).
  • Исправлен баг, мешающий выключению или перезагрузке виртуального гостя при использовании virtio_random(8).
  • Драйвер ice(4) обновлен до версии 1.34.2-k, добавлено ведение журнала встроенного ПО и первоначальная поддержка DCB.
  • Добавлен драйвер сетевого интерфейса mgb(4) с поддержкой устройств Microchip LAN7430 PCIe Gigabit Ethernet-контроллер с PHY и LAN7431 PCIe Gigabit Ethernet-контроллер с интерфейсом RGMII. Драйвер имеет ряд предостережений и ограничений, но функционален.
  • Добавлена ​​поддержка состояния канала, мультимедиа и MTU VLAN с устройством cdce(4).
  • Драйвер iwlwifi(4) вместе со слоем совместимости LinuxKPI 802.11 добавлен в дополнение к iwm(4) для новых наборов микросхем Intel Wireless. (При поддержке Фонда FreeBSD)
  • Аварийные дампы ядра теперь можно сохранять на SD-картах и ​​модулях eMMC с помощью контроллера dwmmc, если ядро ​​настроено с опцией MMCCAM.
  • Аварийные дампы ядра теперь можно сохранять на SD-карты с помощью контроллера sdhci, если ядро ​​настроено с опцией MMCCAM.

Некоторое из нововведений хранилищ и файловых систем:

Изменения ZFS:

  • ZFS обновлена ​​до версии OpenZFS 2.1.4.

Изменения NFS:

  • Два новых демона, rpc.tlsclntd(8) и rpc.tlsservd(8), теперь по умолчанию встроены в amd64 и arm64. Они обеспечивают поддержку NFS-over-TLS. Эти демоны создаются, когда WITH_OPENSSL_KTLS указано. Они используют KTLS для шифрования/дешифрования всех сообщений NFS RPC трафика и обеспечить дополнительную проверку личности машины через Сертификаты X.509.
  • Младшая версия по умолчанию, используемая для монтирования NFSv4, была изменена на самую старшую дополнительную версию, поддерживаемую сервером NFSv4.
  • Добавлен новый параметр монтирования NFSv4.1/4.2 nconnect, который можно использовать для указания количества TCP-соединений, которые будут использоваться для монтирования, вплоть до максимального 16.
  • Добавлен sysctl с именем vfs.nfsd.srvmaxio, который можно использовать для увеличения максимального размера ввода-вывода сервера NFS со 128 Кбайт до любой степени от 2 до 1 Мбайт. Его можно установить только тогда, когда потоки nfsd не запущены, и обычно требуется увеличить kern.ipc.maxsockbuf как минимум до значения, рекомендованного в сообщении журнала консоли, сгенерированном при первой попытке установки vfs.nfsd.srvmaxio.

В загрузчике:
boot1 а также loader были зафиксированы на powerpc64le.

Некоторые изменения загрузки:

  • Улучшения производительности выполнены для loader(8), nvme(4), random(4), rtsold(8), а также для калибровки часов x86, которые в совокупности обеспечивают значительное ускорение загрузки системы.
  • Образы EC2 теперь создаются по умолчанию для загрузки с использованием UEFI вместо устаревшего BIOS.
  • boot1 и загрузчик исправлены на powerpc64le.

Изменения в сетевой подсистеме:

Обработка наименьшего адреса в (под)сети IPv4 (хост 0) изменена таким образом, что пакеты не отправляются как широковещательные, если только этот адрес не установлен в качестве широковещательного адреса. Это делает наименьший адрес пригодным для использования хостом. Старое поведение можно восстановить с помощью sysctl net.inet.ip.broadcast_lowest.

>>> Примечания (анг)

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 13)

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

По теме: дождался. Начну понемногу быть нетакусиком.

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

Ну может не гугло и с некоторыми ручными правками, но автоматический.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от hobbit

Ага. Именно он. Раньше делал уже несколько подходов, но не складывалось.

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

Использование аппаратных аутентификаторов FIDO/U2F было включено в ssh, использование новых типов открытых ключей ecdsa-sk а также ed25519-sk, вместе с соответствующих типов сертификатов.

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

gutaper ★★★★★
()
Последнее исправление: gutaper (всего исправлений: 1)
Ответ на: комментарий от gutaper

Точно, не заметил. Ну, в целом читаемая новость вроде. Бывает и хуже :)

Gonzo ★★★★★
()

Обновился с 13.0-RELEASE без проблем, ядро GENERIC.

Infra_HDC ★★★★★
()

Отличная новость. Обновил более десятка своих серверов. Полет нормальный.

iron ★★★★★
()

@hobbit Тебя ТС обманул, кстати. FreeBSD еще не вышла официально. Только сегодня по плану должна быть. Он ссылку привел на ReleaseNotes, а не Release Announcement.

Вот график подготовки https://www.freebsd.org/releases/13.1R/schedule/

И на главной до сих пор 13.1 - Upcoming И в последних новостях еще только про RC6 новость.

Так что ТС соответствует своему нику.

gutaper ★★★★★
()
Последнее исправление: gutaper (всего исправлений: 1)
Ответ на: комментарий от gutaper

Ну понятно почему у них 1,5 активных пользователей.

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

Прошу прощения, виноват. Я был почти уверен, что новость выйдет сегодня ночью, поэтому написал немного заранее.
Сейчас исправлю новость.

Когда я спросил у разработчика про настоящее время выхода, мне ответили: «@Clockwork, у меня нет машины времени)»

В любом случае прям сразу обновляться не стоит я бы не стал. Нужно хотя бы подождать, пока обновление пакетов прилетит.

Clockwork ★★★★★
() автор топика
Ответ на: комментарий от ox55ff

ZFS обновлена ​​до версии OpenZFS 2.1.4.

А как на бсд системах обстоит дело с btrfs?

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

Clockwork ★★★★★
() автор топика
Ответ на: комментарий от hobbit

Более читаемый конспект:

  • Изменения в пространстве пользователя:
    • После апгрейда sshd не будет принимать новые подключения, пока его не перезапустят.
    • Для 64-битных архитектур сборка идет по умолчанию с включенным PIE.
    • Добавлен новый скрипт zfskeys, который позволяет автоматическую расшифровку ZFS во время загрузки. Описание в стандартном мане rc.conf. (Проспонсировано Modirum and Klara Inc.)
    • Обновление поддержки NVMe в bhyve.
    • chroot теперь может работать в режиме без прав root. (Спонсировано EPSRC)
    • Для md5sum и похожих программ добавлена опция совместимости с Linux (Спонсировано Netflix)
    • Расширена утилита mpsutil для управления контреллерами LSI Fusion-MPT 2/3.
    • Обновлена libarchive (компактная библиотека, обеспечивающая работу tar (bsdtar), cpio, zcat)
  • Изменения на PowerPC (powerpc, powerpc64 and powerpc64le):
    • включена сборка LLDB
    • добавлены оптимизированые ассемблерные вставки для OpenSSL
    • багфиксы: вывод в консоль, запуск под QEMU, loader
  • Файловые системы:
    • NFS:
      • Для amd64 добавлены службы NFS over TLS.
      • Добавлена опция nconnect, которая для NFS 4.1/4.2 задает колличество одновременных соединений.
    • Версия ZFS обновлена до OpenZFS 2.1.4
    • UFS:
      • Исправление сегфолта fsck_ffs в случае ошибки работы с soft update
  • Загрузка:
    • EC2 образы теперь по умолчанию используют UEFI.
    • Оптимизирована скорость загрузки. На тестовом инстансе EC2 загрузка FreeBSD 13.1 происходит в два раза быстрее, чем загрузка 13.0.
crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 5)
Ответ на: комментарий от splinter

А каким образом обновляешь боевые сервера? Ну порядок обновления какой?

Все элементарно:

freebsd-update upgrade -r 13.1-RELEASE
freebsd-update install
ребут
freebsd-update install
ребут и готово

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

а без остановки сервисов нет возможности обновиться? А что с новыми конфигами? ты как то их потомруками мерджишь со старыми? А бэкапы?

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

а без остановки сервисов нет возможности обновиться?

Невозможно перезагрузить сервак без остановки сервисов.

Мне проще, у меня почти все сервисы кластеризированны. Выключил нагрузку с сервера, обновил, ребутанул пару раз, и готово.

ты как то их потомруками мерджишь со старыми?

Там все делается автоматом, достаточно просто подтвердить изменения в конфигах. К тому же там только 2 конфига изменилось: /etc/passwd и /etc/ssh/sshd_config.

А бэкапы?

При первом апгрейде делал снапшоты ZFS. А остальные серваки без бекапов. К тому же, крастер же... Пофигу если одна нода упадет.

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

Невозможно перезагрузить сервак без остановки сервисов.

Помню в Linux какая-то такая плюшка была что можно было обновить ядро ОС без перезапуска.

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

Добавлю, что неплохо бы сделать zfs snapshot mypool/rootfs@before, обновляя сервера со стабильного устоявшегося 13.0 в upcoming 13.1. Впрочем, я тоже так сделал, и ничего не случилось )

nasecom
()
Последнее исправление: nasecom (всего исправлений: 2)
Ответ на: комментарий от splinter

а много ты видел людей, которые этим бы пользовались? Вообще, если ты не можешь перезагрузить сервер, то это сигнальчик того, что ты скорее что-то делаешь не так. Так то компьютеры, как это не удивительно, иногда и ломаются.

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

А что с новыми конфигами? ты как то их потомруками мерджишь со старыми? А бэкапы?

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

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

сейчас есть портированная из соляриса тулза bectl для этого. плюс снапшоты делает автоматически freebsd-update.

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

достаточно просто подтвердить изменения в конфигах

ну у меня бывают кастомные конфиги:) и я до сих пор не понял при переходе с линукса на фрибзд, почему в бзд показывают смешанный диф двух файлов и если на него согласиться, в конфиг попадает мусор '>>>>>>>>>>>..'

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

ну он предлагает тебе его отредактировать, и оставить то, что тебе надо. Или ты хочешь, чтобы он сам за тебя решил, что тебе надо? )

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

Мне тут кстати захотелось найти какой-нибудь один из первых топиков на ЛОРе о фряхе, и посмотреть, что тогда писали. И я нашел! FreeBSD 3.4 (комментарий) За 22 года ничего не поменялось. Хотя нет, мониторы лучше стали.

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

Кто-нибудь вставит цитату Сократа про молодежь.

С - стабильность. И это же прекрасно, что за 22 года линукс все также удаляется от традиций, а FreeBSD сводит олдскулы.

gutaper ★★★★★
()

До сих пор новости о выходе нет на сайте. На зеркалах-то есть диски, да вот как их верифицировать, если по ссылке https://www.freebsd.org/releases/13.1R/signatures/ до сих пор отдают подписи чексумм для RC6?

Интересно, после релиза сразу обновится там или самые быстрые гонзалесы не вирифицируют то, что качают?

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

По теме: дождался. Начну понемногу быть нетакусиком.

Не уверен что нужно с нетерпением ждать, дабы ходить не как все - а с кактусом в заднице.

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

Глядите-ка, оно еще живо и шевелится.

Ну что ж, тогда поздравляю причастных.

Себе конечно же я это не поставлю, потому что оно напоминает не «законченную ОС», как любят говорить БСДмщики, а скорее какой-то крайне недоделанный дистр, который по сути ничем не отличается от других, но при этом постоянно требует внимания и манов на каждый простой чих, и при этом работает ощутимо медленнее.

windows10 ★★★★★
()

А умеет ли freebsd так:

ip netns add test
ip link add dev ns-test.0 up mtu 16384 type veth peer name eth0 mtu 16384 netns test
ip -n test link set dev eth0 up
ip -n test addr add 2a06:a006:1001::2/128 peer 2a06:a006:1001::1 dev eth0
ip -n test neigh add 2a06:a006:1001::1 lladdr 22:22:22:22:22:22 dev eth0
ip -n test route add default via 2a06:a006:1001::1

ip link add dev wg-r48.0 up mtu 1420 type wireguard
wg setconf wg-r48.0 /tmp/wg-r48.0.conf

tc qdisc add dev ns-test.0 handle ffff: ingress
tc qdisc add dev wg-r48.0 handle ffff: ingress

tc filter add dev ns-test.0 parent ffff: prio 1 protocol ipv6 flower dst_mac 22:22:22:22:22:22 action vlan pop_eth action mirred egress redirect dev wg-r48.0
tc filter add dev wg-r48.0 parent ffff: prio 1 protocol ipv6 matchall action vlan push_eth dst_mac 1a:a0:cb:00:52:8a src_mac 22:22:22:22:22:22 action mirred egress redirect dev ns-test.0
ne-vlezay ★★★★★
()
Последнее исправление: ne-vlezay (всего исправлений: 1)
Ответ на: комментарий от Slack

ну он предлагает тебе его отредактировать, и оставить то, что тебе надо. Или ты хочешь, чтобы он сам за тебя решил, что тебе надо? )

мне нравится в rpm-подобных: видит измененный конфиг и не перезаписывает его. в итоге мне ничего править не надо.

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

Интересно, многие ли крутят фряху в виртуалках AWS/Google Cloud/Yandex Cloud?

Примерно полпроцента

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 1)
Ответ на: комментарий от ne-vlezay

А умеет ли freebsd так:

да, конечно. вот, смотри:

ip netns add test
ip link add dev ns-test.0 up mtu 16384 type veth peer name eth0 mtu 16384 netns test
ip -n test link set dev eth0 up
ip -n test addr add 2a06:a006:1001::2/128 peer 2a06:a006:1001::1 dev eth0
ip -n test neigh add 2a06:a006:1001::1 lladdr 22:22:22:22:22:22 dev eth0
ip -n test route add default via 2a06:a006:1001::1

Здесь ты создаешь сетевой неймспейс (кстати, firkax, ты никак не мог понять смысл vimage и тупил у меня в треде), добавляешь в него ipv6 туннель. FreeBSD это не только может, но и могла это и делает это все средствами ifconfig. Т.е. в линуксе пришлось выкинуть ifconfig, т.к. не могли органично включить функционал в уже существующий код и добавить новую утилиту. Во FreeBSD ничего выкидывать не пришлось, т.к. изначально существовал fib в качестве network name spaces. Тише едешь, дальше будешь.

ip link add dev wg-r48.0 up mtu 1420 type wireguard
wg setconf wg-r48.0 /tmp/wg-r48.0.conf

WG собираются включить в базовую систему FreeBSD, но, очевидно, в релизе 13.1 этого не сделали. Ставится отдельно и подымается точно также.

tc qdisc add dev ns-test.0 handle ffff: ingress
tc qdisc add dev wg-r48.0 handle ffff: ingress

применяем к интерфейсам общий трафик шейпер, потом ...

tc filter add dev ns-test.0 parent ffff: prio 1 protocol ipv6 flower dst_mac 22:22:22:22:22:22 action vlan pop_eth action mirred egress redirect dev wg-r48.0

Все, что приходит на eth0 (22:22:22:22:22:22), перенаправляется на шифрование.

tc filter add dev wg-r48.0 parent ffff: prio 1 protocol ipv6 matchall action vlan push_eth dst_mac 1a:a0:cb:00:52:8a src_mac 22:22:22:22:22:22 action mirred egress redirect dev ns-test.0

Все что уходит с eth0 тоже...

Вместо всей это абракадабры tc с костылями нужно использовать файрвол для маркировки интересующего трафика и направления его в нужную таблицу маршрутизации.

$IPTABLES -t mangle -A proxy_mangle_pre -d blablabla -j CONNMARK --set-mark 3

Это гораздо более читаемо. Ой, подождите! На линукс же только что опять что-то выкинули! Теперь в линуксе все по-другому! У тебя одно правило, а у некоторых их сотни. И все придется переписывать!

На FreeBSD принцип тот же, через setfib.

crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 8)
Ответ на: комментарий от gutaper

По теме: дождался. Начну понемногу быть нетакусиком.

добро пожаловать в клуб!:)

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

Чтоб именно ядро - штуки 3 было, одну помню по имени - kgraft.

dv76 ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.