gbackup
Программа разработанная товарищем VitaminP
gbackup (60Кб) - упрощённый аналог nnbackup. Возможности: обычное и инкрементное архивирование; синхронизация; поддержка архиваторов Winrar и 7zip. Есть подробное описание на русском.
Программа "gbackup.exe" служит для систематической архивации и синхронизации файлов. Работает с командной строки. Для автоматизации запуска нужно использовать сторонний планировщик. Имеет 4 режима работы: стек полных архивов, инкрементный (добавочный) стек, двойной инкрементный стек и зеркальная копия файла(ов). Стек подобно стопке книг, новая находится сверху. Стек состоит из пронумерованных архивных файлов/папок и имеет свой размер, при достижении которого самые старые элементы выталкиваются из него снизу.
Архивирование может происходить как с использованием программ-архиваторов, так и без них. Поддерживаются внешние компрессоры 7-zip и Winrar, так же программа может создать свой компрессор Uda, который несмотря на миниатюрный размер и крайне низкую скорость работы по степени сжатия превосходит 7-zip. Без указания в параметрах запуска программы имени архиватора (по умолчанию) будет происходить копирование файлов в стек архивных папок, с именами и индексами подобно архивам.
С помощью программы можно осуществить перенос только изменившихся файлов c одного компьютера на другой, используя программу "gbackup.exe" и файл-список. Время создания файла-списка будет являться точкой отсчёта, в архив попадут все изменения, внесённые позже момента создания файла-списка (ключи "-i -s" или "-zerkalo -s").
Запускать задание на архивацию нужно каждый раз с одинаковыми параметрами командной строки (но возможны некоторые изменения). Можно сгруппировать задания на архивацию в скрипт "имя.cmd" или "имя.bat" и запускать уже его по расписанию.
Полная справка
[more] "gbackup.exe" v6.9 для Windows x32 - утилита создания бэкапов файлов.
ОПИСАНИЕ.
Программа "gbackup.exe" служит для систематической архивации и синхронизации файлов. Работает с командной строки. Для автоматизации запуска нужно использовать сторонний планировщик. Имеет 4 режима работы: стек полных архивов, инкрементный (добавочный) стек, двойной инкрементный стек и зеркальная копия файла(ов). Стек подобно стопке книг, новая находится сверху. Стек состоит из пронумерованных архивных файлов/папок и имеет свой размер, при достижении которого самые старые элементы выталкиваются из него снизу.
Архивирование может происходить как с использованием программ-архиваторов, так и без них. Поддерживаются внешние компрессоры 7-zip и Winrar, так же программа может создать свой компрессор Uda, который несмотря на миниатюрный размер и крайне низкую скорость работы по степени сжатия превосходит 7-zip. Без указания в параметрах запуска программы имени архиватора (по умолчанию) будет происходить копирование файлов в стек архивных папок, с именами и индексами подобно архивам.
С помощью программы можно осуществить перенос только изменившихся файлов c одного компьютера на другой, используя программу "gbackup.exe" и файл-список. Время создания файла-списка будет являться точкой отсчёта, в архив попадут все изменения, внесённые позже момента создания файла-списка (ключи "-i -s" или "-zerkalo -s").
Запускать задание на архивацию нужно каждый раз с одинаковыми параметрами командной строки (но возможны некоторые изменения). Можно сгруппировать задания на архивацию в скрипт "имя.cmd" или "имя.bat" и запускать уже его по расписанию.
ПАРАМЕТРЫ командной строки:
gbackup Папка1/Файл Папка2 [-n<Размер стека>] [-Архиватор[Сжатие]] [-i/-d/-zerkalo] [-r/-k] [-z/-e] [-p] [-o] [-s] [-v]
Папка1 = исходная (архивируемая) папка, допускается указание имени файла или маски имён файлов с подстановочными знаками "?" и "*".
Папка2 = конечная папка, место расположения файлов архива; если папка расположения архивов не существует, то она будет создана.
-n<Размер стека> - количество архивов/папок в стеке (по умолчанию 9 для всех режимов) или номер, по который произойдёт восстановление из архива (в режиме восстановления из архивов).
Архиватор = имя архиватора (кроме режима "zerkalo"), по умолчанию - режим копирование файлов.
-winrar - Winrar с графическим интерфейсом, должен быть установлен в Windows (расширение архивов "rar").
-rar - консольный rar, входит в состав Winrar (расширение архивов "rar").
-7zg - 7-zip с графическим интерфейсом, должен быть установлен в Windows (расширение архивов "7z").
-7z - консольный 7-zip, входит в состав 7-zip (расширение архивов "7z").
-uda - консольный UDA, создаётся программой (расширение архивов "uda").
Сжатие = степень сжатия, число [1..4], по умолчанию 1.
ключи:
-i - тип архивации Инкрементный стек, по умолчанию - стек полных архивов; будет создан стек инкрементных архивов, при заполнении которого первые два архива будут преобразовываться в один, а у остальных уменьшится индекс на 1; количество архивов в инкрементном стеке не менее 2-х, по умолчанию 9.
-d - тип архивации Двойной Инкрементный стек, по умолчанию - стек полных архивов; будет создано два последовательных блока инкрементных архивов для ускорения сдвига в стеке (поблочный сдвиг осуществляется удалением 1-го блока и сдвигом 2-го на место 1-го в момент, когда 2-й блок будет заполнен), размер каждого блока равен установленному количеству архивов в стеке (ключ "-n.."); количество архивов в двойном инкрементном стеке не менее 2-х, по умолчанию 9.
-zerkalo - режим синхронизации, по умолчанию - стек полных архивов; создание зеркальной копии исходной папки/файла.
-r - сравнение исходных файлов со списком файлов по размеру, по умолчанию - сравнение по времени (для режимов i, d, zerkalo).
-k - сравнение исходных файлов со списком файлов по контрольной сумме, по умолчанию - сравнение по времени (для режимов i, d, zerkalo).
-e - формат архивов с расширениями ".exe" (самораспаковывающиеся, поддерживается всеми архиваторами), чтобы обойтись без программ - архиваторов при восстановлении файлов из архивов. Размер архива при этом не должен превышать 4ГБ.
-z - формат архивов с расширениями ".zip" (консольные архиваторы Rar и Uda не поддерживают формат "ZIP").
-p - исключая подкаталоги, действует только на Папка1/Файл.
-o[файл] - создать Отчет [[Путь]ИмяФайла], путь по умолчанию - папка расположения "gbackup.exe", имя файла отчёта по умолчанию - "gbackup.log" .
-s - при первом запуске архивации создать только список файлов (архив с индексом "1" не будет создаваться), если копия исходных файлов уже есть в другом месте (для режимов i, d; zerkalo); при последующем запуске будет создан архив с номером 2; нельзя использовать эту опцию для режима "i", если предполагается что количество архивов достигнет максимально установленного значения, после чего произойдёт слияние 2-х первых архивов (должно быть их наличие) и сдвиг в стеке.
-v - восстановление файлов из созданных архивов; для восстановления файлов на другом компьютере необходимо нахождение в папке с архивами программы "gbackup.exe" и установленного в системе необходимого архиватора, в этом режиме параметр -n<число> - индекс восстанавливаемого архива. Так же указываются параметры, с которыми происходила архивация: имя архиватора и тип архивации (если был режим "-d", то в конце строки с параметрами прописывается ключ -d<число> со значением максимального количества архивов, установленное при архивации).
Примечания: Параметр "Папка1" должен следовать раньше, чем "Папка2", остальные параметры могут находиться в любом месте и порядке. Если путь к "Папке1" или "Папке2" не указан, то будет использован Текущий.
Дополнительные параметры командной строки для режимов "- i; -d; -zerkalo". Параметры позволяют указывать дополнительные включающие папки (файлы; маски файлов) относительно исходного Пути1, а так же исключающие фильтры для файлов:
gbackup Путь1 Папка2 [@<Файл-список>] [-$|-!<Дополнение>...] [-n<РазмерСтека>] [-Архиватор[Сжатие]] [-#<Исключение>...] [-~<Размер>[-]] [-i/-d/-zerkalo] [-r/-k] [-z/-e] [-p] [-o] [-s] [-v]
Путь1 = архивируемый путь/файл(маска). Общий исходный путь для всех последующих Дополнений.
@<Файл-список> - дополнительные $|![Папки\][имена|маски] и #[Имена|маски] содержатся в файле; записываются один [путь\][файл|маска] на строку, в начале строки слитно команда "$", "!" или"#"; без начальных (конечных) слешей и кавычек; кодировка файла - Windows 1251. Другие записи и пустые строки в файле игнорируются.
<Файл-список> = [путь]имя_файла; если путь не указан, то будет использован Текущий.
-$|-!<Дополнение> = дополнение (продолжение) исходного Пути1 без начального слеша: -$|-! [Папка\][имя_файла|маска_файлов]. Ключей с вкючающими Дополнениями может быть много.
-$ - включая подкаталоги.
-! - исключая подкаталоги.
-#<Исключение> - имя файла или маска имён файлов, которые будут исключены из общего списка обработки. Фильтр действует на все обрабатываемые файлы: -#имя_файла(маска_файлов). Ключей с исключениями может быть много. Ключ сработает так же и в режиме создания полных архивов без сжатия.
-~<размер>[-] - ограничение максимального [минимального, если в конце "-"] допустимого размера файлов. Допускаются приставки к размеру: k (кило - 10^3), m (мега - 10^6), g (гига - 10^9), t (тера - 10^12), p (пета - 10^15).Фильтр действует на все обрабатываемые файлы. Ключей может быть не более двух: с максимальным и минимальным ограничивающим размером.
Примечание: ключ "-p" в командной строке распростаняется только к имени файла(маске) исходного "Пути1", а обработка подкаталогов для каждого Дополнения указывается своя командой "$" или "!" .
ПРИМЕРЫ:
1. gbackup C:\InFolder D:\OutFolder -d
Архивация всех файлов каталога "C:\InFolder", включая подкаталоги в папку хранения архивов "D:\OutFolder" в двойной инкрементный стек архивных папок из 18 (9х2) элементов.
2. gbackup.exe C:\InFolder D:\OutFolder -rar -i
Архивация всех файлов каталога "C:\InFolder", включая подкаталоги в папку хранения архивов "D:\OutFolder" со сжатием консольным архиватором Rar со степенью сжатия "1" в стек инкрементных архивов из 9 элементов.
3. D:\Backup\gbackup C:\Документы D:\Архив -7zg3
Архивация всех файлов каталога "C:\Документы", включая подкаталоги в папку хранения архивов "D:\Архив" со сжатием архиватором 7-zip с графическим интерфейсом со степенью сжатия "3" в стек полных архивов из 9 элементов.
4. gbackup -7Z C:\InFolder D:\backup -$*.txt -#список.txt -od:\backup\backup.log -i -z
Архивация всех файлов "*.txt" каталога "C:\InFolder" кроме файлов с именем "список.txt", включая подкаталоги в папку хранения архивов "D:\backup" со сжатием консольным архиватором 7-zip со степенью сжатия "1" в инкрементный стек zip-архивов из 9 элементов. Отчёт будет создан в файле "d:\backup\backup.log".
5. gbackup D:\OutFolder D:\restore -v -i -z -7z
Восстановление файлов из инкрементных zip-архивов, содержащихся в папке "D:\OutFolder" в папку "D:\restore", с использованием консольного архиватора 7-zip. Восстановление происходит последовательно из всех архивных файлов.
6. gbackup -n11 C:\Исходная -rar D:\Конечная -d -e
Архивация всех файлов каталога "C:\Исходная", включая подкаталоги в папку хранения архивов "D:\Конечная" со сжатием консольным архиватором rar со степенью сжатия "1" в двойной инкрементный стек самораспаковывающихся архивов из 11 элементов. В этом режиме количество архивов в стеке будет колебаться от 12 до 22 (2 блока по 11 архивов в каждом), причём 1-й и 12-й - это полные архивы, а остальные - инкрементные.
7. gbackup D:\OutFolder D:\restore -n14 -v -e -d11
Восстановление файлов из двойного инкрементного самораспаковывающегося архива, содержащегося в папке "D:\OutFolder" в папку "D:\restore". Восстановление происходит из 12-го полного и 13-го, 14-го инкрементных архивных файлов. Так как архивация происходила с максимально установленным количеством архивов - 11 (при архивации был параметр "n11"), поэтому в конце строки параметров для восстановления указано: "d11", для указания программе количества архивов в одном блоке стека .
8. D:\Backup\gbackup.exe -n5 -Uda4 -e -p C:\InFolder D:\OutFolder
Архивация всех файлов каталога "C:\InFolder" без подкаталогов в папку хранения архивов "D:\OutFolder" со сжатием консольным архиватором UDA со степенью сжатия "4" в стек полных самораспаковывающихся (.EXE) архивов из 5 элементов.
9. gbackup "C:\*.txt" D:\rabota\arhiv -#readme.txt -#r*s??e.* -i
Архивация всех текстовых файлов диска "С:", включая подкаталоги в папку хранения архивов "D:\rabota\arhiv" без сжатия в стек инкрементных папок из 9 элементов. Будут исключены из общего списка обработки все файлы с именем "readme.txt" и файлы соответствующие маске "r*s??e.*".
10. D:\Backup\gbackup "d:\upr?.txt" "D:\New 2" -n6000 -WinRAR4 -i -p -z -o -r -s
Архивация текстовых файлов диска "D:" по маске "upr?.txt" без подкаталогов в папку хранения архивов "D:\New 2" в инкрементный стек из 6000 zip-архивов, созданный графическим архиватором WinRar с максимальным сжатием. Сравнение исходных файлов с файлом-списком происходит по размеру файлов. При первой архивации будет создан только список файлов, а при следующей архивации будет создан архив с номером "2" и т. д. до "6000". В папке с программой "gbackup.exe" будет создан файл "gbackup.log" с отчетом.
11. D:\Backup\gbackup "D:\New 2" D:\restore -n7 -v -i -e
Восстановление файлов из инкрементных самораспаковывающихся архивов содержащихся в папке "D:\New 2" в папку "D:\restore". Восстановление происходит последовательно из архивных файлов с 1-го по 7-й.
12. C:\gbackup.exe C:\Data\folder d:\arhiv -k -p -o -zerkalo
Будет выполнена зеркальная синхронизация папки "C:\Data\folder" без подкаталогов с папкой "D:\arhiv". Сравнение файлов из папки "folder" выполняется с файлом-списком находящимся в корне диска "D:" по контрольной сумме. В папке с программой "gbackup.exe" будет создан отчет в файле "gbackup.log".
13. gbackup -~1g "C:\InFolder\*.txt" D:\arhiv\OutFolder -zerkalo -~100-
Будет выполнена зеркальная синхронизация текстовых файлов папки "C:\InFolder" включая подкаталоги с папкой "D:\arhiv\OutFolder". В синхронизации не будут участвовать файлы, размер которых больше 1Гб и меньше 100 байт. Сравнение исходных файлов с файлом-списком будет выполнено по времени последней модификации.
14. gbackup C:\InFolder D:\arhiv\OutFolder @c:\list.txt -zerkalo -o -k -~10k-
Содержимое файла "list.txt":
$Музыка
Это коментарии ...
!Документальное Видео\*.mp4
$*.txt
#*.jpg
- Будет выполнена зеркальная синхронизация папки "C:\InFolder\Музыка" включая подкаталоги с папкой "D:\arhiv\OutFolder\Музыка".
- Будет выполнена зеркальная синхронизация файлов ".mp4" папки "C:\InFolder\Документальное Видео" без подкаталогов с папкой "D:\arhiv\OutFolder\Документальное Видео".
- Будет выполнена зеркальная синхронизация текстовых файлов папки "C:\InFolder" включая подкаталоги с папкой "D:\arhiv\OutFolder".
- Будут исключены из всего списка обработки все файлы с расширением ".jpg".
- Будут исключены из всего списка обработки все файлы, размер которых меньше 10КБайт .
Сравнение всех исходных файлов с файлом-списком будет выполнено по контрольной сумме. В папке с программой "gbackup.exe" будет создан отчет в файле "gbackup.log".
15. D:\Backup\gbackup "D:\New 2\*.xls" D:\Arhiv -n7 -$*.txt -!Разное\*.doc -!Отчёты\отчёт.xls -7z3 -n99 -d -e -p
Архивация всех ".xls" файлов из папки "D:\New 2" без подкаталогов в папку хранения архивов "D:\Arhiv". Архивация всех ".txt" файлов из папки "D:\New 2" включая подкаталоги в папку хранения архивов "D:\Arhiv". Архивация всех ".doc" файлов из папки "D:\New 2\Разное" без подкаталогов в папку хранения архивов "D:\Arhiv". Архивация файла из папки "D:\New 2\Отчёты\отчёт.xls" без подкаталов в папку хранения архивов "D:\Arhiv". Будет создан двойной инкрементный стек самораспаковывающихся архивов, сжатых консольным архиватором 7-zip со степенью сжатия 3 и максимальным количеством архивов в каждом блоке 99. Количество архивов в стеке при этом будет не менее 100.
Режим СТЕК ПОЛНЫХ АРХИВОВ.
В этом режиме каждый раз создается полный архив исходной папки, что требует больше дискового пространства, по сравнению с инкрементным режимом. Архивация может происходить как с использованием программ-компрессоров в стек архивных файлов, так и без них, копированием в стек папок. Стек архивных файлов/папок начинается с индекса 1 (arhiv_1) и заканчивается числом, установленным в параметрах запуска программы, по умолчанию 9.
При достижении максимального значения количества архивов, архив с индексом 1 удаляется, индекс остальных архивов уменьшается на 1, а новый архив занимает последнее освободившееся место.
В случае, если в режиме со сжатием новый архивный файл получился такой же, как и последний в списке, то он удаляется и в стеке изменений не происходит. Ключи [-r, -k, -s] не используются и список файлов не создаётся.
Режим ИНКРЕМЕНТНЫЙ (добавочный) СТЕК .
В этом режиме сначала создается полный архив исходной папки, затем каждый последующий создаваемый архив содержит только новые или изменившиеся файлы, а так же информацию об удалённых файлах с момента последней архивации. Этот режим позволяет значительно сократить общий размер архивов по сравнению с созданием полных архивов. При первой архивации в папке с архивами создаётся скрипт для автоматизации процесса восстановления файлов из архивов. Вместе с архивами хранится файл-список, содержащий информацию о текущем состоянии файлов в архиве. С помощью него и происходит сравнение файлов в архиве с исходными файлами. Имена файлов/папок в архивном стеке создаются по следующему принципу: первый полный архив имеет имя "arhiv_1", а каждый последующий имеет индекс на 1 больше предыдущего. В параметрах программы устанавливается максимальное количество архивов в стеке (по умолчанию 9), однако это количество для инкрементного режима не может быть меньше 2-х . По достижению установленного количества архивов происходит слияние архива с индексом 1 и архива с индексом 2. Объединенный архив получает индекс 1, а место под архив с индексом 2 остаётся свободным. Далее происходит сдвиг в стеке: уменьшение на 1 индексов всех архивов, кроме 1-го. А новый архив получает максимальный (освободившийся) индекс и находится в конце стека. Таким образом архив с индексом 1 при каждом слиянии будет содержать суммарную информацию разных архивов, а остальные архивы с индексом больше 1 будут содержать информацию только за один процесс архивации, чем и можно обеспечить в последствии откат на момент времени создания любого из этих архивов. Если при запуске архивации никаких изменений исходных файлов не произошло с момента последней архивации, то новый архив не будет создаваться. Если количество архивных файлов/папок не достигло установленного максимального значения и не предполагается сдвиг в стеке, то эти архивы можно переместить в другое место, а в конечной папке хранить только файл-список, можно так же не создавать архив при первой архивации, указав ключ "-s", если копия файлов уже есть в другом месте, но для режима "Восстановление" потребуется их восстановить на штатное место в соответствии с текущим форматом архивации (сжатие, имя, индекс).
В программе есть 3 режима сравнения исходных файлов со списком файлов:
1. По размеру файла 2. По времени последней модификации 3. По контрольной сумме файла
Первый - самый не точный, зато быстрый. Его можно использовать, если исходные файлы при их изменении могут менять свой размер только в одну сторону, например увеличение, либо редактирование файлов маловероятно, например фильмы, музыка, фото, установочные файлы программ.
Второй режим более точный и так же быстрый, но бывают случаи, когда из-за смены часового пояса в системе, переустановке Windows или при работе с разными файловыми системами, например FAT32 и NTFS происходит сбой времени изменения файла и одинаковые файлы принимаются за различные. Но такое происходит не часто .
И третий режим сравнения является самым точным, так как он проверяет файлы по содержимому посредством контрольной суммы. Алгоритм вычисления контрольной суммы выбран максимально простой и быстрый, тем не менее приходится читать полностью все исходные файлы и сравнивать их с файлом-списком, что требует дополнительного времени.
2-й и 3-й режимы включают в себя 1-й, то есть дополнительно выполняется сравнение размера файлов.
Режим ДВОЙНОЙ ИНКРЕМЕНТНЫЙ СТЕК.
Этот режим отличается от Инкрементного тем, что он состоит из 2-х последовательных блоков инкрементных архивов, с возможностью последующего быстрого сдвига в стеке целого блока архивов. Каждый блок начинается с полного архива и продолжается инкрементными. Размер каждого блока равен максимально установленному значению количества архивов в параметрах командной строки запуска. Когда 2-й блок будет заполнен, то произойдёт сдвиг блоков в стеке: 1-й блок будет удалён, 2-й переместится на место 1-го, после чего будет создан полный архив, с которого начнётся новый 2-й блок. Таким образом место, занимаемое архивами будет в 2 раза больше, чем в Инкрементном режиме, но так как не происходит слияний архивов и переупаковки (если со сжатием), то архивация будет происходить существенно быстрее, чем в простом инкрементном стеке. Количество архивных файлов (точек восстановления) будет не менее максимально установленного количества архивов. Устанавливаемое количество архивов в этом режиме не менее 2-х, по умолчанию - 9. В Двойном Инкрементном режиме если пришло время создавать полный архив, но были только удаления в исходных файлах, то архив создаваться не будет.
Режим ЗЕРКАЛЬНАЯ КОПИЯ.
В этом режиме происходит создание в конечной папке точной копии исходной. Как и при инкрементном архивировании создается файл-список имён исходных файлов (рядом с конечной папкой) для последующего сравнения. В качестве конечного пути не допускается указание буквы диска (должна быть папка). Поддерживаются ключи: [-r, -k, -o, -p, -s].
Режим ВОССТАНОВЛЕНИЯ из архива.
Если восстанавливать файлы из архивов в автоматическом режиме в момент, когда происходит архивация (если начнётся сдвиг в стеке), то может произойти сбой обоих процессов. Восстановить файлы из архивов можно 3-мя способами: с помощью скрипта "Restore.cmd", вручную (распаковывать и копировать файлы) или с командной строки с помощью программы gbackup.exe, задав необходимые параметры. При восстановлении из самораспаковывающихся архивов, архив сначала перемещается в конечную папку, в ней распаковывается и затем перемещается обратно. Поэтому лучше, чтобы этот процесс происходил в пределах одного диска (перемещение файла мгновенное), иначе дело затянется копированием архивных файлов на другой диск.
Восстановление файлов из Инкрементного Архива с помощью скрипта "Restore.cmd":
Для автоматизации процесса восстановления файлов из архивов программа создает в папке с архивами скрипт "Restore.cmd", после запуска которого нужно указать только номер архива (с нужной датой создания из свойств файла/папки) для извлечения. Если в качестве номера восстанавливаемого архива ввести "0", то будет выбран последний номер архива. При необходимости можно указать и путь для восстановления, а по умолчанию будет создана папка с именем текущей рядом с архивами. Для восстановления из архивных файлов на другом компьютере необходимо нахождение программы "gbackup.exe" в папке с архивами и если архивация была со сжатием, то нужен установленный в системе архиватор, которым создавались архивы (кроме самораспаковывающихся архивов). Архиваторы Winrar и 7-zip при отсутствии основного в системе могут быть замещены друг другом. Cкрипт "Restore.cmd" для каждого процесса архивации создаётся свой, поэтому они не взаимозаменяемы. Если некоторые архивы (папки) отсутствуют (за исключением 1-го архива), то чтобы процесс не прервался, то в качестве номера архива для восстановления нельзя указывать "0".
Восстановление файлов из Инкрементного Архива с помощью командной строки:
В качестве исходного пути указываем папку нахождения архивных файлов, а в качестве конечной указываем место будущего размещения восстановленных файлов. Если указать конечную папку ту же, что и исходная, то в ней будет создана папка с именем текущей, которая и будет являться конечным путём. Ключ "-v" - режим восстановления, n<число> - индекс архивного файла для восстановления (включая предшествующие), если указать "0", то произойдёт восстановление из всех архивов. В режиме Двойной Инкрементный Стек в параметрах командной строки в ключе "-d" необходимо указать максимально установленное количество архивов в стеке при архивации (например: "-v -d7", если при архивации был ключ "-n7"). Другие параметры запуска программы должны быть такими же, как и были при архивации. По ним программа будет знать в каком режиме происходила архивация и соответственно как восстанавливать. Степень сжатия архиватора указывать не нужно. Ключи [-p, -r, -k, -o, -s] в режиме восстановления не используются.
Ручное восстановление файлов из Инкрементного Архива:
1. Создаем конечную папку, в которую будем восстанавливать архивы.
2. Если было сжатие файлов, распаковываем первый архив "arhiv_1" в одноимённую папку (без сжатия эта папка уже есть).
3. Копируем содержимое папки "arhiv_1" в конечную папку.
4. Если было сжатие файлов, распаковываем следующий архив в одноимённую папку (без сжатия эта папка уже есть).
5. Копируем с заменой файлов содержимое этой папки в конечную папку.
6. В конечной папке запускаем скрипт "Deleted.cmd" (если он есть).
7. Повторяем пункты 4, 5, 6 до достижения архива с требуемой датой восстановления (дату и время создания всех архивных файлов/папок можно узнать по их свойствам).
8. В конечной папке удаляем скрипт "Deleted.cmd" (если он есть).
Ручное восстановление файлов из Двойного Инкрементного Архива:
-Если нужный индекс архива, из которого будем восстанавливать файлы равен максимально установленному количеству архивов при архивации, то этот архив является полным и просто распаковываем его в нужное место или копируем папку, если режим без сжатия.
-Если нужный индекс архива, из которого будем восстанавливать файлы меньше максимально установленного количества архивов, то восстановление из него такое же, как и инкрементного.
-Если нужный индекс архива, из которого будем восстанавливать файлы больше максимально установленного количества архивов, то восстановление из него такое же, как и инкрементного, только начинаем восстановление не с 1-го , а архива с индексом максимально установленного количества архивов.
Ручное восстановление файлов из Стека Полных Архивов:
1. Создаем конечную папку, в которую будем восстанавливать архив.
2. Если было сжатие файлов, то распаковываем, а без сжатия копируем полный архив с требуемой датой в эту папку.
ФАЙЛ - СПИСОК.
Во всех режимах, кроме режима "Стек Полных Архивов" в папке с архивами (в режиме "-zerkalo" рядом с конечной папкой) создаётся файл-список, в котором хранится перечень файлов в архиве и их параметры. Существуют 3 типа файлов-списков. В режиме сравнения по времени создаётся файл с расширением ".spv"; по размеру - ".spr"; по контрольной сумме - ".spk". Номер последнего архива в папке записан в первой строке файла-списка, исходя из него будет создан номер нового архива. В режиме "-zerkalo" в начале файла-списка хранится число, отображающее количество выполненных (были изменения) синхронизаций.
Можно изменить метод сравнения файлов ранее созданного (уже выполнявшегося) процесса архивации. Для этого рекомендуется выполнить последний раз архивацию с текущими параметрами (чтобы не потерять последние изменения файлов), затем изменить метод сравнения в параметрах командной строки запуска программы (ключи "-r", "-k") и запустить снова процесс архивации. В результате запуска программы с изменённым параметром будет создан только новый файл-список без архивации файлов (предполагается, что архивы актуальные). Далее процесс архивации будет проходить уже с новым методом сравнения файлов.
Особенности работы программы с АРХИВАТОРАМИ.
Для ускорения процесса создания бэкапа архиваторы "Winrar" и "Rar" при степени сжатия "1" и "2" добавляют в архив файлы без сжатия со следующими расширениями: "rar; 7z; uda; zip; cab; msi; png; jpg; jpeg; gif; mp3; wma; pdf; djvu; chm; xlsx; docx; mp4; avi; mkv; vob; mpg; mpeg; wmv; 3gp; flv; iflv; mov; ts", а при степени сжатия "3" добавляет без сжатия только файлы с расширениями "rar; 7z; uda". Приоритет процесса программ "Winrar.exe" или "Rar.exe" устанавливается низкий.
При необходимости программа создаёт файл консольного архиватора "Uda.exe" v 0.261 в своей папке и использует его как для создания архивов, так и для их распаковки. Архивы ".uda" можно распаковать так же архиватором с графическим интерфейсом WinUda v 0.271.
В режиме архивации при отсутствии архиватора "WinRar" в системе можно скопировать файл "Rar.exe" в папку нахождения "gbackup.exe" и программа подхватит его для архивации. В режиме архивации при отсутствии архиватора "7-zip" в системе можно скопировать файл "7za.exe" либо "7z.exe" + "7z.dll" в папку нахождения "gbackup.exe" и программа подхватит их для архивации. В этих случаях нельзя будет создать самораспаковывающиеся архивы.
В режиме восстановления если в системе отсутствует нужный архиватор, то он будет автоматически замещен другим: 7-zip <-> WinRar. В режиме восстановления из Rar-архива при отсутствии архиватора "WinRar" или "7-zip" в системе можно скопировать файл "Rar.exe" или "UnRAR.exe" либо "7z.exe" + "7z.dll" в папку нахождения "gbackup.exe" и программа подхватит их для распаковки архивов. В режиме восстановления из 7-zip архива при отсутствии архиватора "WinRar" или "7-zip" в системе можно скопировать файл "7za.exe" либо "7z.exe" + "7z.dll" в папку нахождения "gbackup.exe" и программа подхватит их для распаковки архивов.
Если в параметрах "gbackup.exe" выбран консольный архиватор "7-zip" или "Rar" (установлен ключ "-7z" или "-rar" и отсутствует ключ "-e") и в папке с программой есть файл архиватора "7za.exe" или "Rar.exe", то в первую очередь будет использован именно он.
При каждом создании инкрементного или двойного инкрементного архива со сжатием архиватором UDA, новые и изменившиеся файлы сначала копируются в конечную папку, а затем сжимаются архиватором, при этом атрибуты папок теряются. Такой порядок работы необходим для возможности фильтрации файлов.
ОСОБЕННОСТИ работы программы и возможные ошибки.
Если в параметрах командной строки присутствуют пробелы или подстановочные знаки "?" или "*" в параметре Путь1, то параметр должен быть заключён в кавычки. Заключённый в кавычки путь не должен заканчиваться символом "\", иначе произойдёт сбой.
Максимальный размер количества архивов в стеке до 4294967295. Если скрипт "имя.cmd" или "имя.bat" запуска архивации содержит символы кириллицы, то кодировка этого скрипта должна быть DOS-866, либо в начале скрипта должна быть команда "mode con codepage select=1251 > nul", а в конце команда "mode con codepage select=866 > nul".
В уже выполнявшемся задании архивации нельзя менять часть параметров, чтобы в конечной папке не оказались архивы с разными расширениями или режимами архивации. Изменить в параметрах можно степень сжатия архиватора, обработку подкаталогов, маску файлов и наличие отчёта. Если тип создаваемых архивов при архивации ".exe" (самораспаковывающиеся архивы), то в процессе можно поменять в параметрах командной строки ещё и имя архиватора (расширение архивов при этом не изменится), аналогично и с расширением ".zip". Можно переделать инкрементный архив в двойной инкрементный, для этого меняем в командной строке ключ "-i" на "-d" и устанавливаем размер стека архивов ключ "-n<размер>" больше, чем количество уже созданных архивов в конечной папке, но это число должно иметь такое же количество цифровых знаков, какое в именах уже созданных архивов (не забываем, что потолок количества архивов будет в 2 раза выше установленного), затем редактируем 7-ю строку скрипта "Restore.cmd": меняем ключ "-i" на "-d<размер>", где "размер" - размер стека, установленный при архивации. Кодировка файла "Restore.cmd" - DOS-866.
Чтобы скрыть окно консоли при запуске скрипта запуска "имя.cmd" архивации можно запустить его через Visual Basic скрипт "имя.vbs" следующего содержания:
Set WshShell = WScript.CreateObject("WS) и в папке с программой есть файл архиватора cript.Shell")
WshShell.Run "путь\имя.cmd",, а при степени сжатия 0, true
Так же скрыть окно консоли при запуске архивации можно в планировщике "AutoStart.exe", указав в параметрах программы "gbackup.exe" или скрипта ".cmd" её запуска ключ скрытия окна "w:0" .
(c) gv-vladimir@yandex.ru
[/more]
Скачать актуальную версию c Yandex диск: gBackup