Храним конфиги серверов в SVN

Очень удобно иметь единое хранилище всех конфигов с серверов. Например для
того чтобы быстро развернуть свои настройки шелла и screen на новом FreeBSD 
сервере. Или чтобы восстановить рабочий конфиг после неверных изменений.
SVN более чем подходит для этой цели. 


Итак, дано: www-сервер, svn-сервер. 
Задача: забекапить /usr/local/etc/apache/ с www-сервера.

Будем считать, что svn-сервер уже развернут. Если нет, то идем сюда
И допустим что все репозитории лежат в /usr/local/repositories.
Создаем хранилище для конфигов:

    svn# cd /usr/local/repositories
    svn# mkdir admin
    svn# svnadmin create admin

после этого в нашем распоряжении созданный репозиторий, 
к которому мы сможем обращаться по адресу svn://www_ip_address/admin

Создаем структуру подкаталогов 
(пока в домашней директории, затем среплицируем в svn)

    svn# cd ~
    svn# svn checkout svn://www_ip_addr/admin
    svn# cd admin
    svn# mkdir -p www-server/usr/local/etc/apache

Рекурсивно добавляем структуру:

    svn# svn add www-server

Коммитим изменения на сервере svn:

    svn# svn commit -m "комментарий"

Для следующей операции на www-сервере нужно установить subversion

Добавляем каталог /usr/local/etc/apache  в хранилище:
(рекурсивный импорт директории /usr/local/etc/apache)

    www# cd /usr/local/etc
    www# svn import apache svn://www_ip_addr/admin/www-server/usr/local/etc/apache

----------------------------------------------------------------------------------
Вытаскиваем данные из хранилища:

   www# cd ~
   www# mkdir testcheckout
   www# cd testcheckout
   www# svn checkout svn://92.241.170.204/admin/www-server/usr/local/etc/apache


На  что стоит обратить внимание.
* необходимо поиграться с путями svn для четкого понимания процесса
* не забывать делать commit для сохранения измененй



09 апреля 2009.   Комментарии: Комментарии к записи Храним конфиги серверов в SVN отключены.    Размещено в FreeBSD