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, если заполнить весь диск.

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

Одно лишь отключение fsck дало результат, но совсем небольшой.

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

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

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

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

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

Так у тебя проц же другой. В моем какой-то инструкции ему не хватает, видимо слишком агрессивная оптимизация в параметрах сборки.

Хотя, теперь он дает другую ошибку - segmentation fault. Пока не понятно.

Firefox работает влет, включая ютуб.

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

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

Так у тебя проц же другой.

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

сделай ему truss chr… из консоли и посмотри, на чем он падает.

там же в репах есть ungoogled-chromium, но это та же кодовая база. как вариант, можно из моих реп поставить, но, как я сказал, это что-то другое, имхо.

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

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

попробуй наоборот поиграться (отключить) с опциями, которые я по дефолту включил в /etc/sysctl.conf. допустим, я поставил слишком больные значения shm allowed, у тебя столько нет, а он пытается захватить.

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

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

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

kern.ipc.shm_use_phys=0 - 0/1 вообще.

You might also want to configure your kernel to lock shared memory into RAM and prevent it from being paged out to swap. This can be accomplished using the sysctl setting kern.ipc.shm_use_phys

у тебя нет свопа… так что тоже можно проверять.

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

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

Dbus решил

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

сделай реинстал бинарника.

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

Смотря еще какой телефон. Наиболее безопасно в FAT32. Можно в ext2 или ext4, но там проблема же с правами, он писать может не дать тупо. В линуксе решается созданием каталога в корне с UID пользователя, а в андроиде у каждого приложения свой UID по идее, и капут.

Общепринято либо fat32 либо exfat если поддерживает прошивка.

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

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

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

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

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

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

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

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

FreeBSD / Chrome