LINUX.ORG.RU

FreeBSD 13.0-RELEASE

 ,


1

2

Команда FreeBSD рада объявить о доступности FreeBSD 13.0-RELEASE — первого выпуска ветки stable/13.

Некоторые из нововведений:

  • clang, lld, lldb, llvm, библиотеки libunwind и libc++ обновлены в базовой системе до версии 11.0.1.
  • Из базовой системы удалена устаревшая версия отладчика GNU. Для анализа крэшдампов ядра следует пользоваться текущей версией gdb из портов/пакетов.
  • Из дерева исходников удалены устаревшие binutils 2.17 и gcc(1) 4.2.1. На данный момент все поддерживаемые архитектуры используют LLVM/clang.
  • BSD grep(1) теперь устанавливается по умолчанию. GNU grep удалён из базовой системы.
  • Из libalias(3) удалена поддержка протокола CU-SeeMe.
  • Добавлен драйвер qat(4) — поддержка ряда функций для ускорения криптографических вычислений на устройствах Intel QuickAssist (QAT). qat(4) работает с устройствами QAT, интегрированными в платформы Atom C2000 и C3000, Xeon C620 и D-1500, а также с Intel QAT Adapter 8950.
  • Удалены драйверы ряда устаревших устройств (полный список — в замечаниях к выпуску).
  • Ряд драйверов устройств портирован на архитектуру PowerPC64.
  • В ядро добавлена возможность использования крипо-ускорителей для разгрузки ЦП при работе с TLS (KTLS). Поддерживаются версии TLS от 1.0 до 1.3 и алгоритмы AES-CBC и AES-GCM. Для использования KTLS необходима совместимая SSL-библиотека в пространстве пользователя. На данный момент библиотека OpenSSL базовой системы не включает поддержку KTLS по умолчанию, однако она может быть разрешена параметром WITH_OPENSSL_KTLS при сборке.
  • 64-битная архитектура ARM, известная как arm64 или aarch64, поднята до уровня Tier-1.
  • И многое другое...


Замечания к выпуску (англ.)
Список исправлений (англ.)

>>> Объявление (англ.)

anonymous

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

не хотел я апдейтиться там, где важно, до 13.0, хотел подождать 13.1:( но все-таки рискнул, потому что сборка более новой версии на старом ядре не идет. и словил kernel panic. в плане стабильности, конечно, FreeBSD линуксу уступает.:(

sinaps iZEN лень даже изучать, как тут дамп ядра снимается:( хочу сразу ролбек.

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

sinaps iZEN теперь откатываться из под виснущей системы - ес-но, огреб поломанную систему:( как подсунуть F13 ядро от F12 - я хз. огреб время потери, блин:( стабильная система.:(

 zfs get all
ld-elf.so.1: /lib/libzfs.so.3: Undefined symbol "zcmd_ioctl_compat"
crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 3)
Ответ на: комментарий от crypt

Юзать ZFS и не юзать ZFS Boot Environment? ССЗБ.

как подсунуть F13 ядро от F12 - я хз

Можно выбрать kernel.old в загрузчике, если оно там осталось. С ZFS BE можно выбрать Boot Environment в соответствующем пункте в загрузчике, который вернёт предыдущее состояние (если ты создавал новый BE для нового релиза).

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

юзать

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

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

Можно выбрать kernel.old в загрузчике

да переписал уже поверх и точки монтирования после rollback поправил. работает:(

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

если я использую стандратную утилиту для апдейта, разве она не должна это юзать?

С одной стороны да, но с другой freebsd-update(8) — конструкция крайне шаткая, потому лучше лапками тыкать bectl(8) при необходимости. Плюс, создавать новый BE при апгрейде на патчлевел (а не между релизами) не имеет ровно никакого смысла, ну и обновления можно отменить в процессе или даже абортнуть через ^C, и чем больше всего будет напихано в скрипт обновления, тем более неконсистентно будет состояние в случае фейла/отмены.

А ещё freebsd-update(8) не пересоберёт порты, но по этому поводу никто не возмущается.

---

Обновился с 12.2-RELEASE на 13.0-RELEASE, ничего не сломалось ни в процессе обновления, ни после, но BE для 12.2R останется до тех пор, пока не прилетит следующий релиз и я не обновлюсь на него, ибо нефиг.

ld-elf.so.1: /lib/libzfs.so.3: Undefined symbol "zcmd_ioctl_compat"

У тебя openzfs из пакетов/портов, что ли? о_О Если да, то ССЗБ.

Я очень хотел потыкать, но знал что при обновлении неизбежно столкнусь с чем-нибудь подобным, потому желание потыкать пришлось усмирить и дожидаться 13.0R, где оно искаропки и консистентно с остальной системой.

да переписал уже поверх

Если нужен будет предыдущий или текущий релиз, могу по запросу паковать (только не знаю куда такие большие архивы выкладывать), можешь кастовать на ЛОРе или пинать в IRC.

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

Если нужен будет предыдущий или текущий релиз, могу по запросу паковать

зачем? что? я с офзеркала взял.

пришлось усмирить и дожидаться 13.0R, где оно искаропки и консистентно с остальной системой.

вот я здесь про переходе с релиза на релиз и пишу.

Обновился с 12.2-RELEASE на 13.0-RELEASE, ничего не сломалось

очень ценная информация. держи в курсе.

Если да

нет

Плюс, создавать новый BE при апгрейде на патчлевел (а не между релизами) не имеет ровно никакого смысла

ты так пишешь, как будто учесть это в софте невозможно.

А ещё freebsd-update(8) не пересоберёт порты, но по этому поводу никто не возмущается.

но сообщит об этом. и почистит shared objects. нет, функционал ролбека это как раз функционал этой утилиты. а насчет ее шаткости... ну простите, сколько уже FreeBSD, 30 лет? пора бы, пора бы.

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

зачем?

Затем что я могу вытянуть отдельные компоненты.

ты так пишешь, как будто учесть это в софте невозможно.

Ну так перепиши freebsd-update(8), делов-то!

функционал ролбека это как раз функционал этой утилиты

И он нестабилен. Особенно при апгрейде на другой релиз.

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

В таком случае, может процесс

апдейтиться там, где важно

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

очень ценная информация. держи в курсе.

Вообще-то да, и она означает что ломается не всегда, а только при каких-то обстоятельствах. Как мне вот это

ld-elf.so.1: /lib/libzfs.so.3: Undefined symbol "zcmd_ioctl_compat"

воспроизвести? Я тоже

Обновился с 12.2-RELEASE на 13.0-RELEASE, ничего не сломалось ни в процессе обновления, ни после.

Да и вообще это

ld-elf.so.х: /lib/ххх.so.х: Undefined symbol "ххх"

видел только в случае если во время

freebsd-update install

питание отрубилось, и какие-то части системы остались старые.

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

видел только в случае если во время

а здесь похожая ситуация. система стала нестабильной после апдейта, поэтому rollback не прошел.

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

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

Вообще-то да, и она означает что ломается не всегда, а только при каких-то обстоятельствах. Как мне вот это

вообще нет. и так понятно, что у кого-то работает. нас интересует, насколько вероятно поломка. представь, но при выпусках минорной версии стабильных дистрибутивов редхата такого не происходит.

Как мне вот это воспроизвести? Я тоже

что «ты тоже»? не это надо воспроизводить, ты видать не понял. а креши нового ядра, из-за которых сервер стал нестабилен.

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

Ну так перепиши freebsd-update(8), делов-то!

я начал после линукса щупать *BSD не за тем, чтобы садиться и переписывать ее.

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

она означает что ломается не всегда

И то что freebsd-update(8) шаткий, ненадёжный скрипт.

Потому я проповедую ZFS BE. :3

видел только в случае

Оно само по себе может сфейлиться. Я изучал этот скрипт, там в нескольких местах есть возможность отстрелить себе яйца. Я натыкался на проблемы ещё на девятой ветке, но после ещё ни разу.

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

ну ок. после того, как яйца пришил обратно, и я буду zfs бе-бе-бе.

crypt ★★★★★
()
Обновление на FreeBSD на релиз языка программирования Perl 5.34.0:

0) ee /etc/make.conf
DEFAULT_VERSIONS+=perl5=5.34
1) portmaster -o lang/perl5.34 perl5
2) portmaster p5-
3) portmaster -f `pkg shlib -qR libperl.so.5.34`

P. S.

> pkg version -vIL =
ataidle-2.7.2                      ?   orphaned: sysutils/ataidle
perl5-5.34.0                       >   succeeds index (index has 5.32.1_1)
rssowl-1.2.3_10                    ?   orphaned: www/rssowl
swt-4.7.3.a                        <   needs updating (index has 4.11_1)

Хм.

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

так ты, говоришь, изучал, как работает freebsd-update? я смотрю, что потеряна база постгресса в /var/db/postgres. мне лень убивать время на копания в скрипте. ты в на вскидку можешь сказать, когда зачистка var могла произойти? я так понимаю, это уже невозвратное действие.

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

когда зачистка var могла произойти?

При апгрейде на патчсет заменяются только обновляемые файлы (смотри bspatch(1)), а при апгрейде на следующий релиз весь / заменяется пачками. И вот это вполне может что-нибудь сломать в зависимости от погоды на Марсе.

я так понимаю, это уже невозвратное действие.

Да, потому что роллбэк работает только с файлами базы. ☹

Вот поэтому я юзаю ZFS BE и у меня всё что не является частью базовой системы находится если не на другом пуле, то как минимум в другом датасете (за пределами BE). Помимо этого я делаю бэкапы.

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

я не пойму, а дефолтный сетап с zroot/ROOT/default - это задумано под beadm? а почему тогда /usr валяется просто в zroot, а не в zroot/ROOT/default/usr ?

или beadm не является частью базы и под него ничего не задумывалось и дефолтный сетап вообще надо переделывать?

какая тут история-логика? под beadm систему нужно специально готовить? если она не входит в базу, то утилита ломается после апдейта?

я вижу, штучка еще соляровская вообще.

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

zroot/ROOT/default - это задумано под beadm?

И да и нет; beadm — это лишь утилита для управления механизмом ZFS Boot Environment, и вот последнему нужна некоторая "иерархия" пула. У меня оно fbsd/be/13.0R (fbsd/be == zpool/ROOT/).

или beadm не является частью базы

Не является, в базе есть bectl(8), который в принципе не сильно отличается от beadm.

дефолтный сетап вообще надо переделывать

Дефолт работает искаропки (с bectl(8)). Для изменения дефолта нужно дописывать в /boot/loader.conf, в моём случае достаточно было добавить zfs_be_root="zfs:fbsd/be" (ZFS BE требует дополнительную вложенность, он не может быть в корне пула, этому есть логическое объяснение).

если она не входит в базу, то утилита ломается после апдейта?

При наличии bectl(8) не вижу никакого смысла использовать внешрюю утилиту, в том числе по причине что оно может отвалиться.

почему тогда /usr валяется просто в zroot, а не в zroot/ROOT/default/usr ?

Вот этого не знаю.

Лично у меня так:

fbsd/be/13.0R on / (zfs, local, noatime, nfsv4acls)
fbsd/be/13.0R/local on /usr/local (zfs, local, noatime, nfsv4acls)
fbsd/be/13.0R/local/pkg.db on /var/db/pkg (zfs, local, noatime, nfsv4acls)
fbsd/users/root on /root (zfs, local, noatime, nosuid, nfsv4acls)
fbsd/users on /usr/home (zfs, local, noatime, nosuid, nfsv4acls)
fbsd/users/mord0d on /usr/home/mord0d (zfs, local, noatime, nosuid, nfsv4acls)
data-0/hatred/var:backups on /var/backups (zfs, local, noatime, nfsv4acls)
data-0/hatred/var:db:freebsd-update on /var/db/freebsd-update (zfs, local, noatime, nosuid, nfsv4acls)
data-0/hatred/var:cache:pkg on /var/cache/pkg (zfs, local, noatime, nosuid, nfsv4acls)

// Лишнее обрезал, ибо 37 маунтпоинтов в ZFS, 48 всего.

я вижу, штучка еще соляровская вообще.

С солярки и слизали. ☺

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

Не является, в базе есть bectl(8), который в принципе не сильно отличается от beadm.

а, тут да, я не заметил разницы. не смогли нормально, опять пара дублирующих друг друга утилит... да, прочитал... в bectl были какие-то глюки вплоть до 2020, потому что его писали студенты during summer of code, поэтому заодно сделали фикс-порт beadm, но теперь он не нужен и теперь мы можем использовать любой из них, т.к. они совместимы. ок. тут все просто. обычный линукс-way. это мне знакомо.

С солярки и слизали

ок, но в solaris как раз используется zroot/ROOT/default/usr

Вот этого не знаю.

потому что тут начинается чистой воды zfs алхимия. в default install «zroot/usr» - это всего лишь контейнер со свойством canmount=off. т.е. сам /usr не монтируется.

NAME                               AVAIL   USED  USEDSNAP  USEDDS  USEDREFRESERV  USEDCHILD  MOUNTPOINT                CANMOUNT

zroot/usr                          2.36T  46.8G         0     88K              0      46.8G  /usr                           off
zroot/usr/home                     2.36T  46.8G         0   46.8G              0          0  /usr/home                       on
zroot/usr/ports                    2.36T    88K         0     88K              0          0  /usr/ports                      on
zroot/usr/src                      2.36T    88K         0     88K              0          0  /usr/src                        on

монтируются его ... как это в zfs называется? чайлды короче: /home, /ports и /src.

а /usr/sbin куда ложится? та-даа! /usr/sbin не лежит на самом деле в /usr, потому что в zroot/usr не лежит ничего, это контейнер. поэтому /usr/sbin на самом деле занимает место в zroot/ROOT/default

который соот-но и обрабатывается bectl/beadm

ллогика!

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

обычный линукс-way

Не совсем, но в общем да. Только Linux-way это скорее костыли поверх нерабочего базового инструментария (типа userspace oom helper, тысячи их!). ☺

С солярки и слизали

ок, но в solaris как раз используется zroot/ROOT/default/usr

Ну так тебе никто и не запрещает модифицировать.

Я вообще ZFS BE настраивал сам, установив фряху изначально лапками с ручной же разметкой.
// Хочешь сделать хорошо — сделай сам.

в default install «zroot/usr» - это всего лишь контейнер со свойством canmount=off. т.е. сам /usr не монтируется.

Можешь юзать canmount=noauto.

ллогика!

А что ты хотел, если фича не совсем обкатана. Мне кажется никто даже не знает как это должно работать, а кто знает — не хочет (или не может, ибо оракуль, который может насрать!) сделать.

Жизнь — боль. Учись получать удовольствие от FreeBDSM! \ö/

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

ну это у вас боль, а у меня вошло в привычку тратить по 2 часа на обычный восьми часовой рабочий день и одно из правил, отказаться от лозунга гентушников, арчеводов и анонистов вроде «хочешь, чтобы хорошо, делай все сам с нуля». freebsd всеравно ни в какой продакшн не пойдет, но привычка, понимаешь, осталась...

А что ты хотел, если фича не совсем обкатана.

да, я знаю, что фряха вообще не очень стабильная. еще со времен, когда релиз 5.х не мог свой собственный раздел расшифровать. но just for fun можно.

оракуль, который может насрать!)

а ты меньше в интернет-сказки верь.

Можешь юзать canmount=noauto.

спасибо, кэп. уже разобрался. мне бы до поломки апдейта это узнать.:(

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

Курьёзный случай неспособности персобрать всё зависимое:

devel/glib20: revert update to 2.68.2

This reverts commit 507359c509389602b4060b2c5e203c99911c3578.

devel/glib20 was touched without desktop@ approval and properly passed exp-run
which caused
a massive build failures for critical parts of portstree such as *webkit*,
grstreamer* and
many others due to incompatible changes in the new glib API.

Revert, bump PORTEPOCH and freeze at 2.66.* branch till all consumers will be
adopted to new API.

With hat:	ports-secteam, desktop
Pointy hat to:	nc@

https://www.freshports.org/devel/glib20/

P. S. Сам перебрался на glib-2.68.2,1 только что и вот опять придётся всё по-новой пересобирать.

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

В чём это выражается? :)

Всё работает, ничего не ломается. Ничего не происходит.

Иногда на меня находит конечно, начинаю конфиги ковырять и ебилды.

А в основном - «в Багдаде всё спокойно».

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

Это звучит круче, чем диагарммы. :)

только не преследуй меня за это) recently got a teeny-weeny issue with a brain hipoxia. constantly amuzing everybody including myself.:) как-то выдал с умным видом вместо «нужен анализ» только «анал»... shit happens=)

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

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

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

такие же рукожопы, как и я

если ты не можешь лучше, то нет смысла тратить свое время;) (шутка с долей правды)

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

порта не всё проверил

а там не так легко же проверить. минорный апдейт! кому в голову придет делать полный ребилд для теста при минорном апдейте?! нет, это как раз девелоперы glib2 учудили.

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

только что нашел сегфолт в jail. а был бы суидный бинарник, поди мог бы заработать на продаже локального рута:(

crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.