Скрипты инициализации для FreeBSD и Debian/Ubuntu

Операционные системы 01.10.2010

Для любого демона нужен скрипт управления чтобы его запускать, останавливать и т.д. Но не всегда в комплекте есть этот самый скрипт инициализации. Сегодня я расскажу как написать простейший скрипт инициализации для двух основных систем с которыми я работаю это FreeBSD и Debian/Ubuntu. Для примера будем разбирать демон svnserve, а запускать я буду все от пользователя www.

Пример скрипта для FreeBSD

Создадим файл /usr/local/etc/rc.d/svnserve

touch /usr/local/etc/rc.d/svnserve
chmod +x /usr/local/etc/rc.d/svnserve

Этот скрипт инициализации взят из поставки к порту subversion

#!/bin/sh

# PROVIDE: svnserve
# REQUIRE: DAEMON
# KEYWORD: shutdown

# Каждый rc.d должен "включать" в себя файл /etc/rc.subr (здесь для этого используется команда ".")
# перед тем как он вызовет функцию rc.subr(8). Наиболее предпочтительный вариант - сделать это перед
# любыми другими действиями.
. /etc/rc.subr

# Определяем параметры по умолчанию, вы можете указать инные в /etc/rc.conf, об этом чуть ниже
svnserve_enable=${svnserve_enable:-"NO"}
svnserve_flags=${svnserve_flags:-"-d --listen-port=3690 --listen-host 0.0.0.0"}
svnserve_data=${svnserve_data:-"/var/svn/repos"}
svnserve_user=${svnserve_user:-"www"}
svnserve_group=${svnserve_group:-"www"}

name=svnserve
rcvar=`set_rcvar`
load_rc_config $name
command=/usr/local/bin/svnserve.bin
command_args="-r ${svnserve_data}"

# $1 - это первый аргумент коммандной строки
# Например, если вы ввели "svnserve start", то $1 будет "start".
run_rc_command "$1"

Читать полностью »

Настройка ad hoc в Windows для использования в Ubuntu и iPod Touch

Операционные системы 26.09.2010

Всетаки я решил написать про настройку ad hoc в Windows, так как уже несколько раз настраивал и каждый раз забываю как настраивать. Можете считать что эта заметка для меня самого.

Да, меня пока жаба душит покупать новый роутер с поддержкой Wi-Fi... :)

Настройка Windows

Убедитесь что ваше wi-fi устройство поддерживает ad hoc. Это можно сделать в «Диспетчер устройств» (Win+Pause/Break -> Оборудываение -> Диспетчер устройств), найдите своё устройство и посмотрите его свойства, найдите там пункт ad hoc. Если его там нет, то почитайте руководство к вашему компьютеру/wi-fi карте и т.д.


Читать полностью »

Ubuntu. Ставим расширения для PHP 5.3

Операционные системы 18.09.2010

В продолжении темы установки PHP 5.3 на Ubuntu опишу установку некоторых расширений для пыха. Меня это попросили сделать и прислали список расширений, однако некоторые из этих расширений я тоже пользую ежедневно, так что они должны пригодится и вам.

Собираем сессии

Вы можете указать при сборке пыха --enable-session:

./configure --enable-session

Либо соберите отдельно, например уже после установки:

cd php_5_3_fpm/ext/session
phpize
./configure
make && make install

Читать полностью »

Восстановление данных в Ubuntu

Операционные системы 28.06.2010

Удалил я все файлы в домашней директории на своем нетбуке. Удалял через консоль, поэтому из корзины не восстановить. Самое важное было наверное фотографии, конфиг emacs и некоторые документы малой важности. Начал искать средства типа «undelete» и прочие, и натолкнулся на foremost, которая мне показалась самой простой в использовании.

Сразу скажу любителям высказываний «это все из-за того что ты сидишь с правами рута постоянно», в домашнем каталоге все файлы с моими правами и сидя я под собой я удалил бы их всеравно! Если бы это была другая директория, то я бы согласился с ними.

Предыстория

А вообще удалил я при странных стечениях обстоятельств, вот как это было:
Запустил mc, нажал Ctrl+O, попал в консоль, далее:

cp -R /www/project /home/adw0rd
cd /home/adw0rd
find ./project -name ".svn" | xargs rm -rf

Теперь захотел выйти из консоли и попасть в mc:
и нажимая Crtl+O, случайно нажал Ctrl+P (прям как наш президент с мое6), при этом нажалась сначала Ctrl+P и вылезла предыдущая команда:

find ./project -name ".svn" | xargs rm -rf

и после чего нажалась сразу Ctrl+O что вернула меня в mc.

Я подумал что ничего страшного, так как я уже в режиме файлового менеджера (в нижней консоли ничего не было), и я захотел зайти в ./project.
Нажимаю на каталог «project»... И вот тут то и настал пипец, mc завис, HDD зашуршал, я стал вырубать консоль, но видимо было уже поздно... :)

Читать полностью »

Ubuntu. Откат PHP с 5.3.2 на 5.2.10

Операционные системы 17.05.2010

Некоторое время назад я обновил свою Ubuntu на 10.04, при этом обновились все пакеты в соответствии с репозиторием новой убунты. Мне это не подходило, так как PHP стал 5.3.2 и Zend Optimizer в нем не работал, а он мне был срочно нужен на рабочей системе.

Как откатить?

Нам необходимо добавить старые репозитории.
Добавьте в конец файла «/etc/apt/sources.list»:

deb http://ru.archive.ubuntu.com/ubuntu/ karmic main restricted
deb-src http://ru.archive.ubuntu.com/ubuntu/ karmic main restricted

Далее, зайдите в «System > Administration > Synaptic Package Manager» и нажмите «Reload» (1).
После чего выберите пакет «php5» (2) (и другие, необходимые для даунгрейда) и нажмите «Ctrl+E» (или "Package > Force Version..." (3)) и выберите версию, у меня это «5.2.10» (4).

Если не появится версия «5.2.10» в Force Version, то зайдите в «Settings > Repositories > Other Software» и выберите репозитории, которые вы указали в конце файла «/etc/apt/sources.list».