вторник, 22 мая 2012 г.

Утилита screen или как запустить процесс в фоне.

Если у вас когда-нибудь отваливалась консоль в процессе компиляции ядра или какой-нибудь толстой программы, то мысль о том, как бы запустить процесс на сервере без привязки к удаленному соединению обязательно вас посещала.

Пожалуй, самое популярное решение - утилита screen. Screen имеет широкий функционал, но даже при использовании по минимуму может принести много пользы. Итак, устанавливаем:

cd /usr/ports/sysutils/screen
make config && make && make install

Утилита готова к использованию:

screen
[Enter]

Всё, вот ваша заскриненая консоль. Можно запустить процесс, к примеру, компиляции, затем нажать Ctrl+a, затем d. И запущенный процесс будет идти в фоне на сервере, без привязки к удаленной консоли и даже если она отвалится работа не остановится. Вернуться в screen можно командой:

суббота, 19 мая 2012 г.

Быстрое обновление FreeBSD

Если нет желания перекомпилировать все компоненты системы, долго ждать и совершать много операций, то можно провести быстрое бинарное обновление системы, то существует волшебная утилита freebsd-update.

Действуем:

freebsd-update fetch
freebsd-update -r 9.0-RELEASE upgrade

Система проинформирует о том, что будет обновлено. Нужно будет согласиться с предложением.

freebsd-update install

Затем требуется перезагрузка для установки нового ядра. Ставится новое GENERIC ядро. Как следствие, внесенных вами изменений в нем не будет, то есть, может отвалиться файрволл, поллинг и прочее. Это может быть особенно неприятно, если вы используете сервер в качестве роутера. В этом случае в сетке не будет интернета, хорошо если вообще останется удаленный доступ к серверу. Будьте осторожны.

reboot
freebsd-update install

Далее, при необходимости пересобираем ядро:

Добавляем необходимые параметры в файл  /usr/src/sys/amd64/conf/GENERIC (для 64 разрядной версии, для 32 разрядной: меняем amd64 на i386), затем:

cd /usr/src
make -j4 buildkernel
make installkernel
reboot

Если обновление прошло не так, как вам хотелось бы, то можно откатиться к предыдущему состоянию:

freebsd-update rollback

Последнее замечание. Система использует конфигурационный файл /etc/freebsd-update.conf
В нем можно указать, что конкретно вы хотите обновлять, где хранить файлы и ещё ряд параметров.

вторник, 8 мая 2012 г.

FreeBSD управление алиасами сетевых интерфейсов

Чтобы добавить алиас сетевого интерфейса используйте команду вида:

ifconfig em0 inet alias 192.168.0.101 netmask 255.255.255.0

Чтобы удалить алиас:

 ifconfig em0 -alias 192.168.0.101

Чтобы алиасы сетевых интерфейсов создавались автоматически при старте системы, добавьте в /etc/rc.conf строки вида:

ifconfig_em0_alias0="inet 192.168.0.101 netmask 255.255.255.0"
ifconfig_em0_alias1="inet 192.168.0.102 netmask 255.255.255.0"