Навигация
Главная
Поиск
Новости
Статьи
Ссылки
Об авторе
Контакты
FFQs
 
Главная arrow FFQs arrow Linux фичес arrow Резервное копирование с помощью 7zip
Резервное копирование с помощью 7zip Версия для печати Отправить на e-mail

Преимущества:
- возможность сохранять архив в ZIP формате;
- стабильность при больших объемах архивирования;
- работа из консоли;
- возможность архивирования открытых файлов;
- отсутствие необходимости создания теневой копии;
- отсутствие ориентации на атрибут готовности к архивации при создании дифференциальных копий;
- простой сценарий восстановления.

- возможность ускорения архивации на многоядерных ПЭВМ при использовании bzip архивов.

 

Полное резервное копирование 

Осуществляется командой: 

 7z.exe a -tzip -ssw -mx2 -r0 -x@g:\exclusions.txt  g:\архив.zip @g:\список_папок.txt >> g:\%date%_логфайл.txt 

Значение атрибутов следующее: 

a - создать архив

tzip - тип архива 

ssw - принудительная упаковка файлов, которые в данный момент открыты для записи (мало ли кто-то засиделся на работе и что-то там правит);

mx7 - высокая степень сжатия (7), можно поставить и 5 (нормальное сжатие), тогда процесс пойдет побыстрее;

r0 - рекурсивно архивировать и файлы в подпапках (enable recurse subdirectories only for wildcard names.) 

 

x@g:\exclusions.txt - файл со списком исключений в виде:

   *.mp3

   *.mov 

 

g:\архив.zip - полное имя архива

 

@g:\список_папок.txt - список папок для архивирования в виде:

 g:\user

 g:\buh

 g:\sys 

 

g:\%date%_логфайл.txt - лог файл 

 

Дифференциальное резервное копирование

Происходит над файлами, изменившемися с поледеней полной архивации - в случае 7zip архиватор не руководствуется установленным атрибутом готовности к архивированию, а проверяет файл в базовом (предыдущем полном) архиве и файл на диске и выполняет некоторые действия - в нашем случае если файл на диске новее, чем файл в архиве, файл добавляется в дифференциальный архив.

 

Дифференциальное копирование выполняется командой:

7z.exe u -ssw -mx2 -r0 -x@g:\базовый_архив.zip   -u- -up0q0r2x2z0!g:\%date%_diff.zip  @g:\список_папок.txt >> g:\%date%_логфайл.txt

Значение атрибутов следующее: 

u - обновить архив, в данном случае сам базовый архив обновляться не будет, все новые файлы буду добавлены в новый архив.

x@g:\базовый_архив.zip - архив, считающийся базовым (полным)

u- -up0q0r2x2z0! - опции обновления: p r x z - это ситуации, возникающие при сверке файлов в базовом архиве и на диске, а цифры - действия (0, например, игнорировать), подробно можно посмотреть в документации к 7zip. В данном случае все новые или измененные файлы будут добавленны в диф-й архив. После ! указывается файл дифференциальньного архива - g:\%date%_diff.zip

@g:\список_папок.txt - папки для архивирования

g:\%date%_логфайл.txt - логфайл.

 

Ротация дифференциальных копий

Так как для восстановления необходима только одна - самая свежая дифференциальная копия - разумно сделать ротацию копий. Простой способ - добавить следующую цепочку команд перед командой дифферциального копирования - она позволяет хранить 6 диффернциальных копий в 6-ти каталогах - в dir1 будет самая свежая копия:

rem =========== Rotation of dirs ======================
rmdir /S /Q g:\6dir

ren g:\5dir 6dir
ren g:\4dir 5dir
ren g:\3dir 4dir
ren g:\2dir 3dir
ren g:\1dir 2dir

mkdir g:\1dir

Саму же дифференциальную копию надо архивировать в новосозданный каталог g:\1dir

 

Восстановление 

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

 

 

 

 

Последнее обновление ( 13.12.2010 )
 
< Пред.   След. >
crider.rork.ru © 2018