Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве

Бэкап с помошью WinRAR

2014-01-07 · Posted in WinRAR

Дано: Сервер с Win2003 и Samba шарой. 10 пользователей.
Задача: Бэкапить данные. Желательно каждую неделю. Желательно автоматически.

Вот такая задача возникла передо мной. Я решил использовать WinRAR через командную строку ибо привык к линуксу. Проштудировав мануалы по винрару я пришёл к этому:

Где команда a это создание архива, а ключи:

-r – добавление вложенных файлов и папок
-u – добавление в архив новых файлов и обновление изменённых
-as – удаление из архива файлов, которых нет в источнике
-os – сохранение потоков NTFS (не знаю что делает, но рекомендуется)
был ещё ключ -ow – сохранение информации о правах доступа. В моём случае оказался бесполезен.

Таким образом в архиве получается копия текущих пользовательских папок, и при ежедневном обновлении архивируются только обновлённые файлы. Но появилась проблемка – очень долго делался первоначальных архив, плюс если добавлялась куча видео или фоток, то обновление занимало очень долго. А для ежедневного бэкапа степень сжатия не столь важна, как незагруженный сервер в начале рабочего дня. Плюс я использовал абсолютные пути и хотел бы убрать c:\sharedDocs\ из путей в архиве. И на всякий случай я решил добавить инфу для восстановления Поэтому:

Где:
-m2 – степень сжатия. Число изменяется от 0 до 5, 5 максимальное, 3 по умолчанию.
-ep1 – исключить общий путь из имён файлов
-ms[тип] – не сжимать следющие расширения. Архивы, фото и видео и так сжаты, поэтому степень их сжатия обычно 1-3%, что в моём случае пустая трата времени. Добавляем без сжатия.
–rr5p – 5% информации для восстановления добавляется после создания архива. По умолчанию 1%.

Этим уже можно было пользоваться, но были некоторые вещи которые я хотел бы исправить.

  1. Информация для восстановления добавлялась очень долго на архивах в 20-30 Гб.
  2. Если фотографии не менялись, то постоянно менялись Thumbs.db, которые создавали пользовательские ОС. Если их запретить то пользователям было бы дольше ожидать превьюшек фото в папках. Надо было исключить их из архива
  3. Хотелось получать лог об ошибках.

Поэтому я ещё раз прочитал документацию и пришёл к этому:

Ежедневно:

Еженедельно:

Где:
-x – исключение файлов из обработки, для рекурсивного исключения надо использовать *\filename
-ilog – лог ошибок
ch – команда для изменения архива

Таким образом у меня ежедневно сохранялись новые и обновлённые файлы и удалялись удалённые. А раз в неделю к архивам добавлялась информация для восстановления. В дальнейшем я всё это завернул в *.cmd файлы, о которых расскажу позднее.

ЗЫ. rar – консольное приложение, winrar – окошечко. Оконное приложение также принимает все эти ключи. С ним можно испльзовать ключ -ibck – запускаться минимизированным в трей.

ЗЗЫ. Для самых маленьких – в скрипте надо писать:

One Response

  1. Sergjej says:

    Важное условие – нужна ЛИЦЕНЗИЯ!!

Leave a Reply