Нашёл хорошую статью на эту тему. Данный функционал появился, начиная с 11.3
Категорія: FreeBSD
Если попробовать “прослушать” IPSec трафик, то ничего не выйдет. Но выход всё-таки есть. Вот набор команд, которые позволят это сделать:
sysctl net.enc.in.ipsec_filter_mask=0
sysctl net.enc.out.ipsec_filter_mask=0
ifconfig enc0 up
tcpdump -ni enc0
REUSEPORT
Что такое REUSEPORT? Если кратко, то в много поточном приложении позволяет каждому потоку напрямую привязаться к tcp socket’y (адрес:порт). Это позволяет быстрее принимать пакеты (без REUSEPORT пришлось бы получать пакеты через мастер-процесс).
В статье рассмотрим, как можно узнать/понять, использует ли ваше приложение REUSEPORT штатными средствами ОС. О том, как обстоит поддержка REUSEPORT в разных ОС написана очень неплохая статья, но вот касательно Solaris данные там устаревшие.
Если значения по умолчанию вам не очень подходят:
int zfs_top_maxinflight = 32; /* maximum I/Os per top-level */ int zfs_resilver_delay = 2; /* number of ticks to delay resilver */ int zfs_scrub_delay = 4; /* number of ticks to delay scrub */ int zfs_scan_idle = 50; /* idle window in clock ticks */ int zfs_scan_min_time_ms = 1000; /* min millisecs to scrub per txg */ int zfs_free_min_time_ms = 1000; /* min millisecs to free per txg */ int zfs_resilver_min_time_ms = 3000; /* min millisecs to resilver per txg */ int zfs_no_scrub_io = B_FALSE; /* set to disable scrub i/o */ int zfs_no_scrub_prefetch = B_FALSE; /* set to disable srub prefetching */
EXTRA_PATCHES в /etc/make.conf
.if ${.CURDIR:M*/emulators/open-vm-tools}
EXTRA_PATCHES=/path/to/vmware-guestd.in.patch
.endif
Если патчей много на разные порты, то можно недавно придуманный
EXTRA_PATCH_TREE использовать.
ПС. Совет не мой, увидел в рассылке
Предположим, вам достался старый сервер, у которого на корневом разделе доступного места всего 500 мб и 300 из них заняты. Нужно обновить ОС или пересобрать ядро? Ниже покажу как и где можно сэкономить место.
Принцип ее работы прост: для каждого процесса она создает файл и вешает на него lock. Как только процесс завершается, лок пропадает. Лок также пропадает в случае внезапной смерти процесса, и нет необходимости проверять pid на существование или делать другие телодвижения. Если процесс запускается повторно, а лок-файл еще не освободился, работа скрипта прерывается и выдается сообщение в STDERR.
FreeBSD
Чтобы порт не обновлялся, в /etc/make.conf добавить
.if ${.CURDIR:M*devel/tevent}
IGNORE=yes
.endif
ПС. Подсмотрено в рассылке по freebsd.
А для пакетов так
Заморозить:
# pkg lock <pkg-name>
Разморозить:
# pkg unlock <pkg-name>
Solaris
Заморозить:
# pkg freeze <package-name>
Разморозить:
# pkg unfreeze <package-name>
Linux (Debian)
Заморозить:
# apt-mark hold <package-name>
Разморозить:
# apt-mark unhold <package-name>
Здесь будет рассказано о разных типах памяти, в разных ОС, при использовании разных диагностических утилит.
Не знаю, проявляется ли это на новых версиях ZFS, но достаточно интересный хак. И так, ситуация следующая: при замене диска в пуле, в процесс перестройки, выпал заменяемый диск. Тогда пул навсегда замирает в состоянии DEGRADED. Как быть? Вот здесь подсмотрел хак. Приведу цитатой:
echo zfs_no_scrub_io/W0t1 | mdb -kwПосле этого надо дать resilver закончиться (он пройдёт достаточно быстро), и «zpool offline» сбойное устройство.
Потом поменять параметр назад:
echo zfs_no_scrub_io/W0t0 | mdb -kwи «zpool replace» его работающим диском.
Принцип работы хака: в треде, где идёт resilver, мы пропускаем собственно часть, которая пишет данные; resilver заканчивается (естественно, на битый диск мы ничего не пишем, так что ошибок на нём не будет, но и данных тоже).
Для FreeBSD использовать соответственно
# sysctl vfs.zfs.no_scrub_io=1
и после окончанию работ выставить в 0.