пятница, февраля 22, 2008

Проблема при запуске firebird2 в Ubuntu 7.10

Багрепорт есть. Но исправят ошибку, похоже, только в Hardy. Вкратце - отсутствует папка /var/run/firedird/2.0/ необходимая для старта firebird2. Если создать эту папку вручную, то после перезапуска системы она автоматически удалится и firebird2 не запустится.

Решение проблемы - отредактировать скрипт /etc/init.d/firebird2.0-*, добавив в него после строки /usr/share/firebird${FB_VER}-common/functions.sh следующий код:
if [ ! -d /var/run/firebird/2.0 ]
then
cd /var/run
mkdir -p firebird/2.0
chmod -fR 770 firebird
chown -fR firebird:firebird firebird
fi
Вместо использования chmod и chown можно просто использовать функцию fixPermsConfigure, определенную в скрипте /usr/share/firebird${FB_VER}-common/functions.sh, подгружаемом в самом начале файла /etc/init.d/firebird2.0-*. Код будет выглядеть следующим образом:
if ! [ -d $RUN ]; then
mkdir -p $RUN
fixPermsConfigure
fi
Эта функция делает то же самое:
fixPermsConfigure()
{
find $RUN -type d \
-exec chown firebird:firebird {} \; \
-exec chmod 0770 {} \;
find $RUN -type f \
-exec chown firebird:firebird {} \; \
-exec chmod 0660 {} \;
}

2 комментария:

GiNeR комментирует...
Этот комментарий был удален автором.
GiNeR комментирует...

Данное решение красивее чем моё, спасибо.
Главное учесть, что при обновлении пакета firebird всё снова сломается (если только в новой версии проблему не устранят).