Категорії
FreeBSD Misc, staff, other Solaris

Включаем dtrace пробы hotspot для java

Включить пробы dtrace для java, как оказалось, не совсем очевидно. А всё дело в механизме lazy load, который активирует их только тогда, когда явно к ним обратится и только при выполнении таких условий:

1) java должна поддерживать hotspot:

# java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) Server VM (build 24.60-b09, mixed mode)

Категорії
FreeBSD

Принудительная сборка через GCC (без CLANG)

Если вы хотите пересобрать ядро через GCC, а не через CLANG, то нужно добавить в /etc/make.conf такие строки

WITHOUT_CLANG=YES
WITH_GCC=YES
WITH_GNUCXX=YES
CC=gcc

Категорії
FreeBSD Misc, staff, other

panicmail: отчёт о kernel panic

Описание лучше привести без перевода:

When rebooting after a panic, send an encrypted email containing basic
dump metadata along with a kernel backtrace, in order to assist FreeBSD
developers in identifying and fixing common panics.

Категорії
FreeBSD Linux OpenBSD Solaris

Отслеживание изменений в RealTime

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

Linux

DirNotify (dnotify), Inotify

FreeBSD/OpenBSD

Kqueue

Solaris

FAM, FEN

Разное

А вот и ПО, которое построено на базе вышеперечисленных механизмов, которое позволяет синхронизировать контент в реальном времени:

lsyncd

Категорії
FreeBSD

Если FreeBSD не загружается

Тестовый стенд: FreeBSD 8.X, 9.X, 10.X

1) Не загружается ядро.

Если вдруг что-то случилось с текущим ядром, то можно попробовать загрузить старое (если конечно оно есть). Делается это так: после старта зарузчика и появления меню нажимаем 3 (FreeBSD 9.X, 10.X) или 6 (FreeBSD 8.x). Теперь нам доступна консоль с командами. Список ядер можно посмотреть, выполнив команду

ls /boot

Категорії
FreeBSD Misc, staff, other

“/usr/ports/Mk/bsd.port.mk” Malformed conditional

Если вдруг при установке порта начали валится ошибки

Unknown modifier 't'
Unknown modifier 't'
"/usr/ports/Mk/bsd.port.mk", line 1775: Malformed conditional (defined(USE_LDCONFIG) && ${USE_LDCONFIG:tl} == "yes")
Unknown modifier 't'
Unknown modifier 't'
Unknown modifier 't'
"/usr/ports/Mk/bsd.sites.mk", line 957: Malformed conditional (!empty(_PERL_CPAN_ID) && ${_PERL_CPAN_FLAG:tl} == "cpan")
Unknown modifier 't'
Unknown modifier 't'
"/usr/ports/Mk/bsd.port.mk", line 2929: Unclosed conditional/for loop
"/usr/ports/Mk/bsd.port.mk", line 2929: Unexpected end of file in for loop.
"/usr/ports/Mk/bsd.port.mk", line 6708: Unclosed conditional/for loop
"/usr/ports/Mk/bsd.port.mk", line 6708: Unexpected end of file in for loop.
make: fatal errors encountered -- cannot continue

Категорії
FreeBSD Solaris

Быстрое удаление очень большого заполненного пула

Речь идёт о пулах в десятки терабайт, которые заполнены данными. Команды zpool/zfs destroy даже не мощном сервере будет выполняться часами, если не днями.

Оказывается, выход есть.

# zpool export -f data_pool
# zpool create -f data_new raidz2 c5t0d0 ...

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

Категорії
FreeBSD Linux

Мониторинг изменений конфигурационных файлов системы

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

Linux

Это называется  Linux audit trails. Как это настроить и использовать – описано здесь

FreeBSD

К сожалению, нормального аналога нет, но зато энтузиасты написали что-то похоже. Так же рекомендую прочесть другую заметку

Категорії
DataBases FreeBSD Linux Solaris

Тюнинг mysql/postgresql on zfs/ext4

Ниже будет описан тюнинг самой mysql + OS-специфический. Тюнинг будет рассмотрен только для движка InnoDB.

mysql

Обязательно разнести базу и логи (innodb_log_group_home_dir) по разным датасетам (дискам). В идеале вынести на отдельный датасет и tmp_dir для mysql.

Категорії
FreeBSD Linux OpenBSD Security Solaris

Фильтрация по MAC-адресу в различных файерволах

ipfw

add allow all from any to 192.168.2.0/24 via ${natd_interface} mac aa:bb:cc:dd:ee:ff any

pf

(только OpenBSD)

в консоли:

# ifconfig bridge0 rule pass in on fxp0 src 0:de:ad:be:ef:0 tag USER1

в pf.conf:

pass in on fxp0 tagged USER1

ipf

Нельзя сделать

iptables

/sbin/iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP