Резервное копирование файлов – то, о чём человек вспоминает редко, но как правило тогда, когда уже поздно…

А я уже давно не вспоминаю про это. Один раз настроил оптимальным образом nnBackup, и пребываю в полном спокойствии.

На русскоязычной страничке nnBackup Вы найдёте подробное описание функций утилиты резервного копирования. Долго расписывать там нечего. Скажу только, что эта утилита позволяет делать резервное копирование ЛЮБЫМ известным распространённым методом. При этом данные могут сохраняться в сжатом формате – gz или zip.

Утилиту удобнее всего запускать с помощью nnCron. Ниже приведу скрипт nnCron, который по нажатию горячей клавиши Win+X запускает резервное копирование, а по завершении его (копирования) выключает компьютер:

#( Hot_key_PowerOFF
AsLoggedUser
WatchHotKey: "$x"
Action:
StartIn: "D:\Program Files\nnBackup"
ShowNormal HighPriority
START-APPW: D:\Program Files\nnBackup\nnbackup.exe -f daily_job.txt
POWEROFF
)#

Как видно, nnbackup.exe запускается с параметром -f. Это означает, что параметры резервирования нужно считать из указанного текстового файла (в данном случае – daily_job.txt).

Файл задания daily_job.txt может содержать следующие записи:

dump %WD%
-i "C:\Мои документы\"
-o E:\BAK\
-tc
-s

Расшифровывая строки скажу, что происходит инкрементное резервное копирование из Моих документов в E:\BAK\. При этом учитывается не только время последней модификации файла, но и время его создания (-tc). И кроме того, всё это происходит учётом вложенных каталогов (-s).

Инкрементное копирование (с параметром %WD% – день недели) означает, что в понедельник будет сохранён архив с именем 1_2005-07-11.zip, во вторник – 2_2005-07-12.zip и т.д. При этом последующий архив будет содержать не полную копию, а только изменения – добавленные и/или изменённые файлы. (Важно! До 1-го уровня нужно создать файл уровня 0, который будет содержать в себе все файлы.)

В конце недели имеем файлы 0_2005-07-11.zip … 7_2005-07-17.zip. Тогда же (в конце недели) можно выполнить nnBackup с такими параметрами:

ver -n 50
-i E:\BAK\
-o E:\BAK\weeks\

В результате в каталоге weeks будет сохраняться стек каталогов с номерами 1, 2, 3 … 50. При этом каталог «1″ всегда будет самым «свежим», каталог «2″ – недельная давность, а в каталоге «50″ сохранятся данные, которые резервировались почти год назад. При заполнении стека старые данные будут затираться, а новые записываться так, что «1″ будет содержать копию последней недели.

Таким образом в E:\BAK\ у нас будут сохраняться данные почти за весь год. И мы сможем восстановить содержимое Моих документов на любую дату в пределах 50 последних недель.

На указанной выше русской страничке проекта есть ссылка на страничку загрузки. Программа бесплатна только для жителей бывшего СССР при условии некоммерческого использования.

Другие интересные бесплатные программы можно найти на страничке Бесплатные программы, которые мы выбираем.