Скрыть объявление
Доступна оплата GOLD аккаунта - ЯНДЕКС ДЕНЬГИ 410013121082674

Скрипт резервного копирования vps серверов

Тема в разделе "Freebsd", создана пользователем Itnull, 11 мар 2017.

  1. Itnull

    Itnull раздаюбан Команда форума Администратор

    Регистрация:
    22 май 2013
    Сообщения:
    9.487
    Симпатии:
    1.911
    Пол:
    Мужской
    Код:
    #!/bin/bash
    
    USER=root  #юзер базы данных
    PASSWORD=password  #пароль
    BACKUP=/media/Backup  #куда сохранять бэкапы
    LOG=/var/log  # директория для чистки старых логов
    OLD=30  # сколько дней хранить бэкапы (более старые будет удаляться)
    PREFIX=work  # если несколько серверов - используйте разные префиксы, чтобы не путаться
    DATE=`date '+%Y-%m-%d'`
    
    echo "Backup database to $BACKUP"
    mkdir $BACKUP/$DATE.sql
    cd $BACKUP/$DATE.sql
        for i in `mysql -u $USER -p$PASSWORD -e'show databases;' | grep -v information_schema | grep -v Database`;
            do mysqldump -u $USER -p$PASSWORD $i > $DATE-$i.sql;
        done
    
    cd ..
    tar -cjf $BACKUP/$DATE-sql-$PREFIX.tar.bz2 ./$DATE.sql
    rm -rf ./$DATE.sql
    
    
    echo "Backup files to $BACKUP"
    tar -cjf $BACKUP/$DATE-files-$PREFIX.tar.bz2  \
        /var/www/ \
        /etc/ \
        /var/log/ \
        /root/ \
        --exclude=$BACKUP
    
    echo "Deleting old backups and logs from $BACKUP & $LOG"
    find $LOG -type f \( -name "*.gz" -o -name "*.1*" \) -exec rm '{}' \;
    find $BACKUP -mtime +$OLD -exec rm '{}' \;

    источник
    https://habrahabr.ru/post/121120/
     
    Luxserver нравится это.