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

Короче жопа.

Эти припиздки из Kingston пишут 8GB флешка, на самом деле она 7.2 GB, образ не влезает, заливается битым.

Сейчас попробую на другую.

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

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

Эти припиздки из Kingston пишут 8GB флешка, на самом деле она 7.2 GB

да, я и так сделал 7.5, но они делают еще меньше:)

Не грузится. Никаких сообщений не выдает, просто загрузка не стартует.

хмммм……….

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

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

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

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

Подозреваю что проблема в том, что таблица gpt а не mbr.

На системнике все запускается, на ноуте нет. Новый образ ещё не ппобовал.

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

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

Короче, итоги гоняния на системнике.

Ardour предлагает только один вариант - jack, ясное дело что сам он нативно oss не поддерживает. Хорошо, это неплохо.

Запустить jack он вобще не может, потому что во фряхе, с какого-то перепоя только запущенные от root процессы могут получать приоритет реального времени. А при запуске jack от рута - его не видят нерутовые процессы.

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

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

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

Подозреваю что проблема в том, что таблица gpt а не mbr.

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

Новый образ ещё не ппобовал.

тогд можешь не пробовать.

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

Запустить jack он вобще не может, потому что во фряхе, с какого-то перепоя только запущенные от root процессы могут получать приоритет реального времени.

на линуксе тоже.

Setting Real-time Priority for Non-privileged Users
Generally, only root users are able to change priority and scheduling information. If you require non-privileged users to be able to adjust these settings, the best method is to add the user to the realtime group.

точно так же и на фряхе есть группа real time. просто все это нужно настраивать.

А при запуске jack от рута - его не видят нерутовые процессы.

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

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

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

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

а в группу юзера добавляют утилитой

pw groupmod realtime -m crypt

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

ну что значит не видят?? как они к нему подключаются? по UNIX сокету?

Ну вот так - пульсу тоже не видят клиенты, запущенные от другого пользователя.

надо дать права, чтобы видели.

jack не должен от рута работать. Это не та проблема которую надо решать.

но реальный приоритет можно выдать и через rtprio

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

У меня пока в линуксе хиросима - эти бляди ебаные сломали хромиум. Я остался без браузера нахер.

Такими темпами я не на фряхе окажусь а на десяточке скоро. Да пошли эти суки нахуй.

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

должна или не должна, делай, как хочешь, я с 13го года запускал PA под рутом и никто не умер. но «не видят» - это вопрос твоей настройки и только. пока тестируешь по-моему можно, как угодно делать.

сломали хромиум

а у меня норм.

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

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

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

jack не должен от рута работать.

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

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

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

Такими темпами я не на фряхе окажусь а на десяточке скоро. Да пошли эти суки нахуй.

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

FreeBSD 13.0 - 13 April 2021
FreeBSD 13.1 - 12 May 2022
FreeBSD 13.2 - 27 March 2023

Чуть-чуть не дождался второго поинт-релиза и перешел. @odalist теперь все классно.

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

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

Это пиздец, сорри за мат но по другому это не объяснить.

Если в браузере ВЫКЛЮЧИТЬ аппаратное ускорение - он валится с ошибками инициализации GPU!!

Если ВКЛЮЧИТЬ - работает прекрасно!

Где смысл? Где логика?

Где мой корвалол?

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

Ёб их в зад! И на фронт за шиворот, против вагнера лично!

Мало того что я писал выше.

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

Ну где вагнер с его кувалдой???

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

Если в браузере ВЫКЛЮЧИТЬ аппаратное ускорение - он валится с ошибками инициализации GPU!!

нет ускорения - нет проблем, я ж те говорю, чудо, а не система))

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

По фряхе - теперь мне надо понять, как все пересобачить на mbr таблицу разделов. А то она на ноуте не запускается вообще, а это у меня основная машина, где я со звуком и работаю.

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

но имей ввиду, что в MBR нет GUID

https://en.wikipedia.org/wiki/GUID_Partition_Table

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

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

а теперь смотри, в чем преимущество над systemd. открываем скрипт запуска /ul/etc/rc.d/jackd и тут ты на пальцах видишь все, как оно запускается в системе.

параметры берутся из rc.conf. частично я тебе уже туда что-то вписал, параметры добавишь сам.

#!/bin/sh

# PROVIDE: jackd
# REQUIRE: LOGIN
#
# Add the following line to /etc/rc.conf to enable jackd:
#
# jackd_enable="YES"
#

: ${jackd_enable="NO"}
: ${jackd_user="root"}
: ${jackd_rtprio="NO"}
: ${jackd_args="-r -doss -r44100 -p1024 -n3 -w16"}

. /etc/rc.subr

name=jackd
rcvar=jackd_enable
procname=/usr/local/bin/jackd
start_cmd="start_jackd"

start_jackd() {
  echo "Starting ${name}."
  if [ $jackd_rtprio = "YES" ]; then
    local rt="rtprio 1"
  fi
  # log the date and parameters
  echo -e "\n[`date`] Starting the daemon, user=$jackd_user rtprio=$jackd_rtprio args=\"$jackd_args\"" >> /var/log/${name}.log
  # daemon(8) should be able to set the realtime priority, but it isn't
  $rt daemon -p /var/run/${name}.pid -u "${jackd_user}" /usr/local/bin/jackd ${jackd_args}
}

load_rc_config ${name}
run_rc_command "$1"
crypt    
★★☆☆☆
Последнее исправление: crypt (всего исправлений: 1)

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

Только я пока не понял, как к нему рутовому от юзера подключаться.

И честно говоря, я не понял что этот скрипт конкретно делает. Для меня это не более понятно чем юнит системд.

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

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

ну ты пока голову не ломай. у меня просто jackd чего-то не запускается. когда (если) стартует, то я тебе его передам. а то в тредах по фрибзд пишут, как с графикой, что вообще лучше на винду, а еще лучше сразу на мак)

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

sorry за задержку, у меня jack начал завешивать саму виртуалку, пока я не догадался отключить там звуковуху и прокинуть настоящую карту. так что jack не включен автоматически. запускай его от рута

/usr/local/bin/jackd --realtime -doss -p2048 -n3 -w16

или какие там тебе параметры нужны. man jackd - сначала общие параметры, после -doss специальные для OSS там же в мане.

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

можешь скачивать новый образ с mbr.

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

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

Разобрался со скроллингом. Это не в хроме дело, глобально в wayland так работает. Потому что в firefox при активации wayland бэкенда то же самое.

Я наконец понял как этим пользоваться и беру свои слова обратно. Погорячился, фича нормальная.

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

Нет конечно. Без участия пользователя на него не перейдешь.

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

JamesHolden    
★★★★★★
Linux / Chrome