?

Log in

No account? Create an account
Previous Entry Поделиться Next Entry
backup на базе linux
beardman
mystafa wrote in ru_linux

Продукт: BackupPC
Задача: backup данных на Linux и Windows машинах

Об особенностях можно почитать
здесь. Лично она мне понравилась наличием инкрементального бэкапа, отсутствием необходимости установки клиентской части программы, достаточной легкостью в установке, приличным web-интерфейсом, и необходимыми мне возможностями. Установка производилась на Debian. Надеюсь что этот документ будет полезен.


Зеркало для скачивания: deb http://ftp.de.debian.org/debian sid main

1. Забираем необходимые пакеты
 - aptitude install backuppc rsync libfile-rsync-perl libfile-rsyncp-perl par2 bzip2
 - указываем  с каким web-сервером будем работать

2. Устанавливаем свой пароль для пользователя backuppc

htpasswd /etc/backuppc/htpasswd backuppc

3. Запускаем web-сервер (если он конечно еще не запущен ;-))

4. Открываем браузер и шагаем в сторону http://localhost/backuppc/

5. В появившимся окне указываем имя пользователя (backuppc) и пароль, который вы указали в пункте 2

6. Редактируем файл /etc/backuppc/hosts. В котором указываем те машины, которые мы хотим бэкапить.

 - это можно сделать через web-интерфейс Edit Config - Xfer
 - установить имя пользователя и пароль, который будет подключаться к ресурсу можно через Edit Config - Xfer

7. Указываем директорию, в которую BackupPC будет складывать архивы
 - $Conf{TopDir} = '/where/backups/stored';
 - не забывайте проверить кто обладает правами на директорию
 - указать все вышеперечисленное через web-интерфейс можно тут Edit Config - Server

8. Указываем источник. То, что мы будем сохранять.
 - можно поиграть с переменными 'BackupFilesOnly' and 'BackupFilesExclude'.
 - в качестве примера. Сохраняем только директорию /docs на диске D$:

    $Conf{XferMethod} = 'smb';
    $Conf{SmbShareName} = 'D$';
    $Conf{BackupFilesOnly} = '/docs';
    $Conf{SmbShareUserName} = 'backuppc';
    $Conf{SmbSharePasswd} = '******';

    
9. Заведите нового пользователя (backuppc) на win-машине с правами Оператор Архива
 - его пароль должен совпадать с тем, что вы установили в пункте 2

10. Укажите время, в которое BackupPC будет проводить backup
 - $Conf{WakeupShedule} = '9, 10, 11, 12, 13, 14, 15, 16, 17';

Если на этом этапе возникли ошибки, то:

 - проверьте /etc/hosts на наличие правильных имен
 - проверьте правильность количества слэшей '/' в настройках подключения smbclient'а
 - не забывайте подгружать измененные настройки; web-интерфейс - Admin Options
 - не копипэйстите настройки из этого документа, я мог допустить ошибку
 - все настройки находятся в /etc/backuppc/config.pl

В принципе - все. Это базовая настройка.

Документация BackupPC вполне читабельна и отвечает на многие вопросы.
Там куча наглядных примеров. Кликайте по линкам ;-)


Можно распространять/перепечатывать, с указанием авторства.
Источники: раз, два.


  • 1
Маленькое примечание/замечание:
10. Укажите время, в которое BackupPC будет проводить backup
- $Conf{WakeupShedule} = '9, 10, 11, 12, 13, 14, 15, 16, 17';


Это указание времени, в которое демон backuppc перечитывает конфиг и составляет queue бэкапов. Например, проснувшись в 17 часов, он вполне может зашедулить 20 бэкапов общей длительностью в несколько суток :))

Для backuppc нет такого понятия, как время, когда делать бэкап. Точнее, оно косвенно задаётся через указание времени, когда делать его никак нельзя - BlackoutPeriods. Если машина ответила на пинг BlackoutGoodCnt раз подряд с интервалом примерно в IncrPeriod - то она помечается для бэкапов только вне BlackoutPeriods.
Я ставлю BlackoutGoodCnt равным 1, чтобы блэкаут применялся сразу.

Спасибо за информацию!
Буду иметь в виду ;-)

Посмотрел в конфигах. По дефолту выставлен в 1.
Еще раз - спасибо!

Раз уж мои слова туда попали, с автора живым не слезу :)
http://backuppc.sourceforge.net/faq/BackupPC.html#item__conf_blackoutperiods_
BlackoutPeriods = 1 - формат неверный и, скорее всего, нерабочий. Для вкл/выкл блэкаута там есть свитч, да, он на две строки выше, не помню сейчас, как зовётся.
Пример BlackoutPeriods:
$Conf{BlackoutPeriods} = [
{
hourBegin => 7.0,
hourEnd => 19.5,
weekDays => [1, 2, 3, 4, 5],
},
];

В принципе, в третьей версии, о которой идёт речь, это всё уже есть в конфиге по умолчанию, главное, знать, где это поправить под себя.

У Вашего поста сегодня день рождения!
Проектирование, проект электроснабжения.

  • 1