“Все админы делятся на две категории: те, кто делают бэкап, и те, кто пока ещё ничего не потерял.”
Решение задачи под Windows – забираем данные с общих ресурсов файлового сервера Samba и складываем их на жесткий диск Windows 2003.
Собственно, здесь вместо баз 1C 7.7 могло быть все, что угодно – любые папки и файлы.
Возможно, вариант с cron’ом вместо Task Sheduler был бы более близким по духу к эхотагу – но, в своей задаче, я рассматривал, в первую очередь, встроенные средства операционной системы.
Какой тип архива всегда был родным для Microsoft? Я считаю, что это – CAB (и, по-минимуму, ZIP также открывался Проводником сразу после первого логина в ОС).
К сожалению, насколько я понял, утилита makecab в составе XP не умеет “забирать” данные из сети и не принимает в качестве параметра папки. Не знаю, умееет ли она сжимать в один архив несколько файлов. Другая утилита входит в состав MSDN и называется cabarc, но, несмотря на ее возможности, мне быстрее удалось достать IZArc. Утилита IZArc Command Line бесплатна (скачать)
Идеально бэкапы хранить так
Можно создать батник с командой для архивации определенной папки, либо же эту команду сразу поместить в Task Sheduler:
1 |
"C:\Program Files\IZArc\izarcc.exe" -a -r -cb -w -p C:\Backup1C7\accountant_USN_%DATE%.cab "\\BIGFILESERVER\1Cv7Bases\Bookkeeping_USN\*" |
Здесь:
a – добавить файлы в архив;
r – рекурсивно (включая подпапки);
cb – максимальный уровень сжатия;
w – включить в архив скрытые и системные файлы;
p – пути сохранять относительные,
затем – путь к архиву – destination и после – источник (source).
%DATE% – добавить в имя файла дату в формате ДД.ММ.ГГГГ.
NB: Для английской версии Advanced Server 2000 батник был таким:
1 2 |
FOR /F "TOKENS=2* DELIMS= " %%A IN ('date/t') DO SET shortdate=%%A "C:\Program Files\IZArc\izarcc.exe" -a -r -cb -w -p C:\Backup1C7\accountant_usn_%SHORTDATE%.cab "\\BIGFILESERVER\1Cv7Bases\Bookkeeping_USN\*" |
Добавлю, что с русскими именами проблем нет. Остается только добавить в Task Sheduler задание выполнять батник.
Чтобы распаковать cab архив из командной строки, вы можете использовать утилиту expand, входящую в состав Windows:
1 |
expand c:\Backup1C7\accountant_USN_12.12.2009.cab -F:* C:\Temp\ |
P.S. Кроме cabarc можете еще взглянуть на PowerArchiver Command Line.
26.01.2015
26.01.2015
26.01.2015