RU EN

Обучение Spamassassin

 

Собрать информацию из папки со спамом:

sa-learn --showdots --spam /home/vmail/<domain>/<user>/.Junk/*

То же самое для не спама:

sa-learn --showdots --ham /home/vmail/<domain>/<user>/cur/*

 

Комментариев: 0
24.04.2012 00:52


Собираем PHP 5.3.9 на OpenBSD под AMD64

 

Из PECL-библиотек использую bbcode-1.0.2, crack-0.4, eaccelerator-0.9.6.1, svn-1.0.1, translit-0.6.1. После скачивания, распаковки и переименования папок этих расширений устанавливаем переменные окружения:

export PHP_AUTOCONF=/usr/local/bin/autoconf-2.13
export PHP_AUTOHEADER=/usr/local/bin/autoheader-2.13
export PHP_AUTOMAKE=/usr/local/bin/automake-1.4
export CFLAGS="-O3 -march=k8 -fomit-frame-pointer -pipe"
export CXXFLAGS="-O3 -march=k8 -fomit-frame-pointer -pipe"

Далее конфигурируем PHP:

rm configure config.cache && ./buildconf --force
./configure --disable-debug --build=amd64-server-openbsd4.9 --target=amd64-server-openbsd4.9 --host=amd64-server-openbsd4.9 --disable-short-tags --with-pear --with-bz2=/usr/local/lib --with-curl --with-libdir=lib --with-jpeg-dir=/usr --with-png-dir=/usr/local --with-freetype-dir=/usr/local/lib --with-xpm-dir=/usr/X11R6 --with-t1lib=/usr --enable-gd-native-ttf --with-gmp --with-openssl --with-openssl-dir=/usr --with-kerberos=/usr/local --with-pspell --with-enchant --with-zlib --enable-re2c-cgoto --with-layout=GNU --enable-exif --enable-calendar --without-sqlite --enable-mbregex --enable-cli --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-magic-quotes --enable-bcmath --enable-ftp --with-gd --enable-mbstring --with-mcrypt --with-mysql=/usr/local --with-mysql-sock=/var/run/mysql/mysql.sock --disable-embedded-mysqli --with-mysqli=/usr/local/bin/mysql_config --with-pdo-mysql=/usr/local --with-snmp --enable-soap --enable-wddx --enable-sockets --with-tidy --with-xsl --enable-zip --enable-zend-multibyte --with-gettext --with-mhash --enable-bbcode --with-svn --with-crack --enable-translit --with-ldap --with-ldap-sasl --enable-intl --enable-eaccelerator --with-eaccelerator-shared-memory --with-eaccelerator-userid=www --with-iconv=/usr/local

Собираем:

make && make install

На случай, если потом понадобится вручную удалить вот  пути установки:

Installing PHP SAPI module:       fpm
Installing PHP CLI binary:        /usr/local/bin/
Installing PHP CLI man page:      /usr/local/man/man1/
Installing PHP FPM binary:        /usr/local/sbin/
Installing PHP FPM config:        /usr/local/etc/
Installing PHP FPM man page:      /usr/local/man/man8/
Installing PHP FPM status page:      /usr/local/share/php/fpm/
Installing build environment:     /usr/local/lib/php/build/
Installing header files:          /usr/local/include/php/
Installing helper programs:       /usr/local/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/share/pear/
[PEAR] Archive_Tar    - installed: 1.3.7
[PEAR] Console_Getopt - installed: 1.3.0
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util       - installed: 1.2.1
[PEAR] PEAR           - installed: 1.9.4
Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /usr/local/share/pear to your php.ini include_path
/home/web/src/php-5.3.9/build/shtool install -c ext/phar/phar.phar /usr/local/bin
ln -s -f /usr/local/bin/phar.phar /usr/local/bin/phar
Installing PDO headers:          /usr/local/include/php/ext/pdo/
Комментариев: 0
15.01.2012 03:50


Компиляция ядра OpenBSD для AMD K8

 

Получение исходников

От того, какая ветка ядра будет использоваться для компиляции ( current или stabile ), а так же в зависимости от того нужно исходники обновить, или скачать с нуля, будут использоваться различные команды:

Скачиваем current "с нуля":

cd /usr
cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -P src

Скачиваем stable "с нуля":

cd /usr
cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -rOPENBSD_4_9 -P src

Обновляем current:

cd /usr/src
cvs -q up -Pd

Обновляем stable:

cd /usr/src
cvs -q up -rOPENBSD_4_9 -Pd

ВАЖНО! Если обновляемые исходники были получены с другого сервера или с CD, в команду обновления необходимо добавить параметр "-d anoncvs@anoncvs.ca.openbsd.org:/cvs":

cd /usr/src
cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs -q up -Pd

 

 Добавление оптимизирующих ключей в Makefile

Подробнее об оптимизирующих ключах: ключи gcc компилятора, безопасные ключи для AMD.

cd /usr/src/sys/arch/amd64/conf
config GENERIC.MP
cd ../compile/GENERIC.MP
nano Makefile

В файле комментируем переменную CMACHFLAGS и добавляем свой вариант ключей:

#CMACHFLAGS= -mcmodel=kernel -mno-red-zone -mno-sse2 -mno-sse \
             -mno-3dnow -mno-mmx -msoft-float -fno-omit-frame-pointer
CMACHFLAGS= -mcmodel=kernel -msse2 -msse -m3dnow -mmmx \
            -msoft-float -fomit-frame-pointer -mno-red-zone

 

Компилируем и устанавливаем ядро

# Чтобы отключить вывод можно использовать:
# make clean && make depend 1>/dev/null && make 1>/dev/null
make clean && make depend && make
make install
reboot

Компилируем userland

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

# Очищаем /usr/obj директорию и ребилдим ссылки:
rm -rf /usr/obj/*
cd /usr/src
make obj

# Убеждаемся, что все необходимые директории созданы:
cd /usr/src/etc && env DESTDIR=/ make distrib-dirs

# Компилируем:
cd /usr/src
make build

Либо можно сделать это всё вот так (silent userland rebuild):

rm -rf /usr/obj/* 1>/dev/null && cd /usr/src && make obj 1>/dev/null \
&& cd /usr/src/etc && env DESTDIR=/ make distrib-dirs \
&& cd /usr/src && make build 1>/dev/null
Комментариев: 0
16.10.2011 18:27


Полезные команды OpenBSD

 

Сделать DVD-ISO c диска:

dd if=/dev/dvd of=dvd.iso # for dvd
dd if=/dev/cdrom of=cd.iso # for cdrom
dd if=/dev/scd0 of=cd.iso # if cdrom is scsi

MOUNT ISO:

sudo mount -t iso9660 -o loop filename.iso /mount/point
sudo mount -t iso9660 filename.iso /mount/point

Упаковка файла:

tar zcf имя_архива.tgz имя_файла
tar jcf имя_архива.bz2 имя_файла

Распаковка файла:

tar zxf имя_архива.tgz
tar jxf имя_архива.bz2

Копирование файла с сервера на сервер:

scp -P22 dump.bz2 user@192.168.1.3:/home/user/
scp -P22 user@192.168.1.3:/home/user/dump.bz2 dump.bz2

Перезагрузка сетевых настроек:

sh /etc/netstart lan0

Перезагрузка фаервола:

# Парсинг и проверка правил в файле
pfctl -nf /etc/pf.conf
# Загрузка и применение правил в файле
pfctl -f /etc/pf.conf

Управление таблицами фаервола:

# Просмотр
pfctl -t blocked_table -T show
# Добавление
pfctl -t blocked_table -T add 218.70.0.0/16
# Удаление
pfctl -t blocked_table -T delete 218.70.0.0/16
Комментариев: 0
20.08.2011 20:42