• Резервное копирование и восстановление Subversion (SVN) репозиториев на Ubuntu Server 14.04.5 LTS

    Разберем как делать резервные копии имеющихся Subversion (SVN) репозиториев.

     

    Резервное копирование репозитория

    Создаем резервную копию указанного репозитория:

    sudo svnadmin dump /path/to/repository > svnexport.dump

     

    Создаем резервную копию указанного репозитория и сжимаем его:

    sudo svnadmin dump /path/to/repository | gzip > svnexport.dump.gz

     

    Резервное копирование все репозиториев (bash скриптом)

    Для того чтобы автоматизировать процесс резервирования всех имеющихся репозиториев, создадим скрипт, который будет выполнять эту задачу. Скрипт с коментариями, разобратся в нем не составит труда:

    #!/bin/bash
    # 06/01/2018 Jakonda (http://jakondo.ru)
    
    # Резервное копирование репозиториев (SVN)
    
    PATH_REPO="/var/svn/"
    LOCAL_DIR="/srv/backups/svn"
    
    EXPIRATION_DAYS=28
    DATE=$(date +"%y_%m_%d")
    
    # Создаем каталог для размещения бекапов, если он не создан
    if ! [ -d $LOCAL_DIR ]; then
    mkdir $LOCAL_DIR
    fi
    
    # Создаем каталог с текущей датой
    mkdir -p $LOCAL_DIR/$DATE
    
    # Создание дампа всех репозиториев
    cd $PATH_REPO
    for REPO in *; do
     test -d "$REPO" && /usr/bin/svnadmin dump $REPO | gzip > $LOCAL_DIR/$DATE/$REPO.dump.gz
    done
    
    # Удаление старых резервных копий
    find $LOCAL_DIR* -mtime +${EXPIRATION_DAYS} -exec rm {} \;
    # Удаление пустых каталогов
    find $LOCAL_DIR* -type d -empty -exec rmdir {} \;

     

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...