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

После этого все начинает летать.

«прежде всего bgfsck» - так я тебе сразу сказал, проверь нет ли fsck в фоне в процессах. но у тебя при отключенном журнале система не будет восстанавливаться.

Это я не выдрал с форума, а честно сам придумал, из опыта создания линуксовых live систем.

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

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

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

А я постараюсь не ломать ))

sysctl, оставил только то, что пока определил как влияющее

# $FreeBSD$
#
#  This file is read when going to multi-user and its contents piped thru
#  ``sysctl'' to adjust kernel values.  ``man 5 sysctl.conf'' for details.
#

# Enhance shared memory X11 interface
kern.ipc.shmmax=67108864
kern.ipc.shmall=32768

# hangup
kern.ipc.somaxconn=65536

# Enhance desktop responsiveness under high CPU use (200/224) 
kern.sched.preempt_thresh=224 

# Bump up maximum number of open files 
kern.maxfiles=200000 

# Disable PC Speaker 
hw.syscons.bell=0 

# Shared memory for Chromium 
kern.ipc.shm_allow_removed=1

hw.snd.latency=2
hw.snd.latency_profile=0

dev.pcm.0.play.vchans=0
dev.pcm.0.rec.vchans=0

Насчет vchans я не уверен, надо еще тестить. Может их отключение и не влияет.

JamesHolden    
★★★★★★★
FreeBSD / Firefox
Ответ на: комментарий от 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
Ответ на: комментарий от crypt

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

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

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

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

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

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

FreeBSD / Chrome