29.12.10

Управление запуском сервера Subversion с помощью xinetd.

  В Fedora нет скрипта запуска сервера SVN, в init.d, поэтому его приходится запускать в ручную, либо делать самописные скрипты. Но есть еще один вариант, передать всю работу по запуску-отстанову сервера демону xinetd.
  Установить сам демон можно с помошью команды:
yum install xinetd

  Не забудте так же включить его автоматический запуск:
chkconfig xinetd on

  Для того что бы передать демону xinetd любой сервис в системе следует создать файл настроек для данного сервиса в каталоге /etc/xinetd.d/ . Например,  в нашем случае, создадим файл subversion со следующим содержимым:

service svn
{
        socket_type     = stream
        protocol        = tcp
        user            = svn
        wait            = no
        disable         = no
        server          = /usr/bin/svnserve
        server_args     = -i --root /path/to/repo
        port            = 3690
}


  Где server путь до команды запуска демона, server_args аргументы запуска демона, user имя пользователя от имени которого следует запускать демон. Если нужно что бы демон слушал порт только на определенном интерфейсе то добавьте параметр bind в котором укажите ip интерфейса на котором слушать порт. По умолчания в Fedora в файле /etc/services прописаны параметры:

svn             3690/tcp                        # Subversion
svn             3690/udp                        # Subversion


  Если их нет то следует их внести, что бы демон знал как следует запускать сервис svn. Название сервиса (svn) должно совпадать в обоих настоечных файлах, если меняет его в одном из них то меняйте и в другом.
  Теперь запускаем демон:
service xinetd start

  Проверить слушет ли демон порт можно командой:
netstat -ant | grep 3690

  Ответ должне быть что то вроде этого, если это не так смотрите системный лог файл
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

  Теперь пробуйте соединится клиентом с сервером.

Популярные сообщения