LINUXTALKS.CO

FreeBSD install update upgrade [ основной тред по FreeBSD ]

 ,

L


0

1

@odalist, ты любишь такие посты, так что держи.

Прожив годик на F12, освоился и понял, что аналога LVM+cryptsetup+XFS на ней нет. Решил переехать на ZFS (который теперь взят из ZFS на Linux и благодаря этому появилось шифрование). Так что вот последних несколько дней занимался апдейтом основной домашней машины с 12.4 на 13.1 и просидел без Хов в голой консоли.

Первый день, еще в тот четверг, переносил данные.

>>> cut tech detail 
Хотелось мне выяснить, как лучше выравнивать чанки ZFS на хардварном рейде (хорошо, что у нас не нет @iZEN, а то его опять бы кондрашка хватила). Пробовал задавать геометрию штратными олд-скульными UNIX-средствами, пробовал создавать zpool сразу с разными ashift. У меня была классная теория, что чанки ZFS размером 128k нужно бить кусками по количеству страйпов...
Пробовал отключать чексумы...
<<< cut

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

всеравно у меня звук на FreeBSD лагает:( фиг знает, в чем дело.

@JamesHolden, звук в порядке.

@odalist, заодно решил проблему, когда у меня из-за тормозов дисковой системы переполнялся журнал (не ZFS! одно из изобретений FreeBSD в махровые дни) на диске и машина падала. официально defined поведение [ развел лапами ]

Пока я с этим упражнялся на удаленной машине все три дня копилировались пакеты. Под это дело пришлось добавить еще 16Gb swap: rust, llvm…

@cocucka классический OOM на FreeBSD отстреливает любые соседний процессы, отсюда жалобы на форум, я думаю. Зачем вы, программисты, с нами это делаете и придумываете такие алгоритмы? … [ развел лапами ]

@odalist, кстати, chrome вообще сутки собирался. И это на 3.4Ghz!

Вцелом все проапдейтилось и что мне нравится на FreeBSD, с точками отката.

witch ~ # bectl list
BE                                Active Mountpoint Space Created
12.4-RELEASE_2023-02-12_010451    NR     /          13.7G 2023-02-12 01:04
12.4-RELEASE_2023-02-16_145134    -      -          91.0M 2023-02-16 14:51
13.1-RELEASE-p6_2023-02-16_145625 -      -          3.97M 2023-02-16 14:56
13.1-RELEASE-p6_2023-02-18_123041 -      -          4.54M 2023-02-18 12:30

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

Что сломалось?

Ну, во-первых, сломался ping! Это теперь программа с двумя ключами -4/-6, но если не задать ни один, она работать не может. Без гугла это никак не выяснить:( Так что обходился без пинга. Теперь вот придется делать обвзяку из альясов, выяснять версию FreeBSD, добавлять ключ… Можно еще багрепорт отправить…

Самое главное сломался OpenVPN. Почему он не может теперь создавать интерфейс, я так и не понял. Но так как я не догадался сначала установить nvidia video driver, а начал компилять все пакеты одной пачкой, то три дня прожил без гугла.

И вообще OpenVPN меня всегда (лет 15+ примерно) подбешивал кучей опций и сложностью настроек на разных платформах, но WG (@Kaschenko) во FreeBSD еще не появился. Но, когда сидишь без интернета, плюс в том, что начинаешь читать мануалы. Я случайно увидел простой man по подянитю IPSec … и поднял!

А чего? Как работает IPSec я имел представление, но мне всегда казалось тупостью два его возможных режима работы. А вышло довольно круто! Если OpenVPN необходим хендшейк для установления сессии, то здесь все выглядит элегантно.

ipsec0: flags=8151<UP,POINTOPOINT,RUNNING,PROMISC,MULTICAST> metric 0 mtu 1400
	tunnel inet XX.XX.XX.XX --> YY.YY.YY.YY
	inet AA.AA.AA.AA --> BB.BB.BB.BB netmask 0xffffff00
	groups: ipsec
	reqid: 200
	fib: 1
	nd6 options=9<PERFORMNUD,IFDISABLED>

FreeBSD тут сразу радует, что можно из ifconfig сразу дружить интерфейс с таблицами маршрутизации. И работать теоретически должно быстрей.

Авторы FreeBSD подложили грабли и засунулу sysctl хуков, которые изымают часть сетевых пакетов из оборота. Поотлаживав в свое удовольствие, я наконец догадался найти (а вы помните, что браузер еще компилируется, так что нашел сам без гугла, по логике вещей).

net.inet.ipsec.filtertunnel

Осталось перенести все данные и выяснить, насколько действительно проседает скорость ZFS, если заполнить весь диск.

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

с mesa сложнее

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

Так что сборка одной месы меня вообще не смущает.

JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от crypt

Правда я еще подумываю, стоит ли вообще добиваться аппаратного ускорения, потому что оно все равно с KDE работать нормально не будет, не та версия OpenGL. Придется обкладывать костылями.

JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от JamesHolden

Что сложного … которые сломали мне хром

в том и сложность, что от этой йоги в гамаке что-то ломается. если пакет дефолтный, он протестирован.

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

FreeBSD / Chrome
Ответ на: комментарий от crypt

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

А так у меня хоть и программный, но четвертый OpenGL есть

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

Linux / Chrome
Ответ на: комментарий от crypt

Правда с программным OpenGL косяк, который хорошо виден на моем скрине. Плазмоиды не отображают графики (вот этот круг, в котором процент занятого диска - это шкала круговая, она должна отображать линией сколько занято, а она пустая). Почему-то на llvmpipe это не фурычит, в линуксе такая же фигня.

JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от JamesHolden

llvmpipe

потому что это отстой, как нуво драйвер… если уж ты это все хочешь, тебе проще на помойке подобрать что-то с поддержкой opengl 2.0. у нас вообще даже старые топовые nvidia карты можно найти выброшенными.

я просто особо не вижу смысла во всех этих висюльках. главное, чтобы окна рисовало. так что можно либо эффекты отключить, либо старую карту поставить.

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

FreeBSD / Chrome
Ответ на: комментарий от crypt

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

JamesHolden    
★★★★★★
Haiku / WebPositive
Ответ на: комментарий от crypt

Смотри суть проблемы с дровами видео.

Вот папка dri с модулями месы на арче

crocus_dri.so
i915_dri.so
iris_dri.so
nouveau_dri.so
r600_dri.so
swrast_dri.so
vmwgfx_dri.so
d3d12_dri.so
i965_drv_video.so
kms_swrast_dri.so
r300_dri.so
radeonsi_dri.so
virtio_gpu_dri.so
zink_dri.so

А вот на FreeBSD

crocus_dri.so
kms_swrast_dri.so
r600_dri.so
swrast_dri.so
zink_dri.so
iris_dri.so
r300_dri.so
radeonsi_dri.so
vmwgfx_dri.so

Как видно, модулей заметно меньше, и нужного мне i915_dri.so нету. А нету его, судя по всему, потому что он для устаревших карт и во FreeBSD меса собрана без него.

Обсуждение проблемы

https://forums.freebsd.org/threads/mesa-missing-i915-driver.88338/

JamesHolden    
★★★★★★
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от crypt
arch-meson mesa-$pkgver build \
    -D b_ndebug=true \
    -D platforms=x11,wayland \
    -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12 \
    -D vulkan-drivers=amd,intel,intel_hasvk,swrast,virtio-experimental \
    -D vulkan-layers=device-select,intel-nullhw,overlay \
    -D dri3=enabled \
    -D egl=enabled \
    -D gallium-extra-hud=true \
    -D gallium-nine=true \
    -D gallium-omx=bellagio \
    -D gallium-opencl=icd \
    -D gallium-va=enabled \
    -D gallium-vdpau=enabled \
    -D gallium-xa=enabled \
    -D gallium-rusticl=true \
    -D rust_std=2021 \
    -D gbm=enabled \
    -D gles1=disabled \
    -D gles2=enabled \
    -D glvnd=true \
    -D glx=dri \
    -D libunwind=enabled \
    -D llvm=enabled \
    -D lmsensors=enabled \
    -D osmesa=true \
    -D shared-glapi=enabled \
    -D microsoft-clc=disabled \
    -D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \
    -D valgrind=enabled
JamesHolden    
★★★★★★
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

@Kaschenko, правильно говорят, да?

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

FreeBSD / Chrome
Ответ на: комментарий от crypt

Монитор пока отлежался, снова включается.

Закинул модуль месы - все заработало. Есть ускорение.

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

JamesHolden    
★★★★★★
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

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

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

кто бы мне объяснил про цветовые пространства в видео.

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

FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

как ты обновлялся, можешь рассказать по шагам?

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

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от crypt

А ускорение, к сожалению, все-таки пока выключу. Порождает больше глюков чем пользы, потому что древняя версия OpenGL, софт валится.

Это не проблема фряхи, в линуксе то же самое. И в винде.

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

Linux / Chrome
Ответ на: комментарий от JamesHolden

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

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

FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

и самое главное, я говорю, нет такой необходимости, как на линуксе обновлять вот прямо сейчас и сразу. базовая система не связана с версиями прикладного софта. у тебя одна и та же версия прикладного софта что на F13.1, что на F13.2. совершенно спокойно можешь сейчас вернуться на F13.1 и сидеть еще с год и пользоваться драйвером mesa, пока F13.1 не устареет и не потребуется переход на F13.2.

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

FreeBSD / Chrome
Ответ на: комментарий от crypt

Я понимаю, но как же я тогда узнаю, как работают обновления, если не буду обновляться.

Обновлялся так. Сначала сделал

# freebsd-update -r 13.2-RELEASE upgrade

Потом

freebsd-update install

и оно обновило ядро, потом перезагрузился и опять install.

И вот

# uname -a
FreeBSD angmar 13.2-RELEASE FreeBSD 13.2-RELEASE releng/13.2-n254617-525ecfdad597 GENERIC amd64
JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от crypt

А драйвер, кстати, на 13.2 не сломался. Он сам по себе ниипически глючит с этой картой. А точнее, софт прикладной с этой фигней глючит.

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

Android / Chrome
Ответ на: комментарий от JamesHolden

Я понимаю, но как же я тогда узнаю, как работают обновления, если не буду обновляться.

безопаснее всего тренироваться в виртуалке. там снапшоты есть.

upgrade, install, reboot, install

ок. а теперь смотри. во вряхе uname не такой простой, как в линуксе. он отдельно чекает и ядро, и базовые утилиты (но не порты, ес-но). поэтому проверять надо вот так

uname -UK

что у тебя выдает?

давай проверим точки отката

bectl list

что выдает?

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

теперь ты должен форсированно переинсталировать все прикладные пакеты! чтобы ABI базовой системы соответствовал.

если нужно, спроси меня как.

пример, о чем я говорю:

crypt@witch ~ $ file /usr/local/bin/sudo
/usr/local/bin/sudo: setuid ELF 64-bit ... for FreeBSD 13.1, FreeBSD-style, stripped
crypt    
★★☆☆☆
Последнее исправление: crypt (всего исправлений: 4)

FreeBSD / Chrome
Ответ на: комментарий от crypt

безопаснее всего тренироваться в виртуалке. там снапшоты есть.

Задоблала она, машина слабая, и под вейландом виртуалбокс криво работает. А на эту машину, где сейчас фряха, мне пофиг - слетит система, переустановлю и все. Я работаю на ноуте в основном.

$ uname -UK
1302001 1302001
# bectl list
libbe_init("") failed.

Оппапа, чего это оно.

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

Ага, то есть просто pkg upgrade этого не делает? А как надо?

JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от JamesHolden

и оно обновило ядро

насколько я понимаю, оно не только ядро обновляет, но и всю базовую систему. а вот инстал после ребута удаляет(!) старые shared libraries.

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

Если что, у меня все на UFS стоит, ZFS нету.

корень FreeBSD надо ставить на ZFS как раз по этой причине, даже если ты из-за быстродействия не хочешь ее использовать в /home. на UFS есть какой-то rollback, но мне даже осваивать его не хочется, т.к. по-определению это не будет атомарный процесс.

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

на том образе, что я тебе передавал, это делает альяс

apup -f all

а как это в оригинале, я забываю всевремя.

crypt    
★★☆☆☆
FreeBSD / Chrome
Ответ на: комментарий от crypt

В данном конкретном случае роллбак меня вообще не волнует. А вот ресурсы - очень волнуют, имея 3 Гб оперативы и почти двадцатилетний проц. Поэтому если UFS меньше жрет (а насколько я понимаю, это именно так) то я выбираю ее.

JamesHolden    
★★★★★★
Linux / Chrome
Ответ на: комментарий от JamesHolden

в это есть резон, но это чисто ограничения твой печатной машинки, о чем я тебе уже писал. ты очень много фана теряешь, не используя ZFS именно в связке с апдейтом. это реально next level над линукс.

В данном конкретном случае роллбак меня вообще не волнует.

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

p.s.

@cocucka, ты, кстати тоже

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

FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

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

я же тебя учу, как больше времени с дочкой проводить, вместо, прости, еб*ли.=)

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

FreeBSD / Chrome
Ответ на: комментарий от JamesHolden

свет отключат в момент апдейта, шнур зацепит кто-то… и все. ОС поломалась. накосячил что-то сам и снова все сломалось. через 5 дней выяснил, что порт какой-то еще не работает под новый релиз и раньше было лучше… диск начал сыпаться и не производит запись…

ролбек на UFS от этого не спасет

ролбек на ZFS решает все эти проблемы без пота.

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

FreeBSD / Chrome
Ответ на: комментарий от crypt

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

JamesHolden    
★★★★★★
Linux / Chrome