9 июл. 2012 г.

Разностное резервное копирование данных при помощи 7-Zip


Нужно организовать ежедневное резервное копирование большого объема данных. При этом должна быть возможность восстановить данные или отдельный файл по состоянию на любую дату за определенный срок.
Полную резервную копию будем делать 1 раз в неделю, в выходные, когда сервер и сеть менее всего загружены. В остальные дни будем копировать только файлы, измененные со времени создания полной копии.
В бесплатном архиваторе 7-Zip есть возможность создания разностных архивов. Учитывая простоту извлечения данных из такого архива, решено использовать описанный далее способ резервного копирования.


Один раз в неделю (в выходные) создавать полный архив каталога:
7z a "D:\Backup\full.7z" -r "C:\Data"

Ежедневно (по рабочим дням) создавать разностный архив:
7z u "D:\Backup\full.7z" -r -u- -up0q3x2z0!"D:\Backup\diff-%date%.7z" "C:\Data"

При этом:
Полный архив изменяться не будет, благодаря опции -u-.
Если файл попал в полный архив, но к моменту создания разностного архива был удален из исходного каталога, он будет удален при распаковке разностного архива поверх полного, за это отвечает опция q3.
Если файл в исходном каталоге старее чем файл в полном архиве (не важно, по какой причине), он будет добавлен в разностный архив и при его распаковке поверх полного архива заменит более новый, за это отвечает опция x2.


7z a -mx0 "C:\Backup\dimas\docs.7z" -r "D:\Users\dimas\Documents"
7z a -mx0 "C:\Backup\dimas\pics.7z" -r "D:\Users\dimas\Pictures"
7z a -mx0 "D:\Backup\dimas\gdisk.7z" -r "C:\Users\dimas\Google Диск"


7z u -mx0 "C:\Backup\dimas\docs.7z" -r -u- -up0q3x2z0!"C:\Backup\dimas\docs-%date%.7z" "D:\Users\dimas\Documents"
7z u -mx0 "C:\Backup\dimas\pics.7z" -r -u- -up0q3x2z0!"C:\Backup\dimas\pics-%date%.7z" "D:\Users\dimas\Pictures"
7z u -mx0 "D:\Backup\dimas\gdisk.7z" -r -u- -up0q3x2z0!"D:\Backup\dimas\gdisk-%date%.7z" "C:\Users\dimas\Google Диск" 

или используем Cobian Backup )))
http://www.cobiansoft.com/cobianbackup.htm


2 комментария:

Анонимный комментирует...

Для чего опция -r ??
Она только тормозит всё, сканирую папки перед созданием архивов и можно ли без неё обойтись ??

Анонимный комментирует...

Можно. Но если вы переместите вашу папку в другое место в этой директории то ее батник не найдет.
Опять же если у вас несколько папок с таким же именем, которые находятся глубже по дереву от вашей директории, то батник найдет и их тоже и с архивирует.