Скрипты архивации

"Все пользователи делятся на две категории:
первые - это те, которые пережили потерю своих данных,
вторые - которым это еще только предстоит."

(слоган якобы принадлежал APC, но достоверных подтверждений этому у меня нет)

Содержание:

  • Копирования и архивация + шаблоны
  • WebDAV

UNC-пути в скриптах архивации

Существует ряд случаев, когда:

  •  файлы размещены в разделе без литеры
  •  имеют зарезервированные имена
  • используют слишком длинный путь

В таких случаях может оказаться полезным использование unc-пути:

  • \\.\Volume{98fc8064-566a-11d9-82a2-806d6172696f}\...\file.txt - обращение к диску через точку монтирования
  • \\?\C:\...\file.txt - путь с отключением контроля имени в т.ч.
    • запрещенные символы
    • резервированные имена
    • неограниченная длина

Шаблон архивации ROBOCOPY

Утилита robocopy входит в состав систем начиная с Windows Vista, а также может быть добавлена с помощью пакета  Windows Resource Kit.

Резервное копирование архивов на дополнительное зеркало:

Создание точной копии актуальных папок и файлов профиля:

Назначение использованных ключей robocopy:

  • /e - копировать вложенные папки, включая пустые
  • /zb - режим с возобновлением; если доступ запрещен, используется режим архивации
  • /MIR - создать зеркало дерева папок (эквивалентно /E с /PURGE)
  • /COPYALL - копировать все сведения о файле (эквивалентно /COPY:DATSOU)
  • /A - копировать только файлы с установленным атрибутом "Архивный"
  • /M - копировать только файлы с атрибутом "Архивный" и сбросить его
  • /XF file [файл] - исключить файлы, соответствующие заданным именам, путям и подстановочным знакам
  • /XD dirs [папки] - исключить папки, соответствующие заданным именам и путям
  • /XJ – очень важно! не следовать точкам соединения NTFS  (в Users есть много символьных ссылок).

Успешное выполнение копирования подтверждается значением 0 в колонке FAILED журнала.

Шаблон архивации XCOPY

Резервное копирование архивов на дополнительное зеркало:

Резервное копирование документов на зеркало с подкаталогами и перезаписью без вопросов при ошибках:

Назначение использованных ключей xcopy:

  • /d[:m-d-y] заменять измененные [не ранее даты]
  • /m - архивные со сбросом атрибута
  • /a - архивные без сброса атрибута
  • /k - копирует атрибуты
  • /s - копирование только непустых каталогов
  • /r - перезапись файлов "для чтения"
  • /y - без интерактивных запросов
  • /c - продолжение копирования при ошибках
  • /n - использует короткие имена

Архивация xCopy возможна только для файлов, полный путь которых (включая литеру диска, путь и расширение) не превышает 260 символов! Поскольку способ обойти это ограничения пока не найден? предпочтительнее использовать RoboCopy.

Архивация RAR

Утилита архивации управляемой в командной строке штатно размещается в
c:\Program Files\WinRAR\Rar.exe
Команда предусматривает следующий порядок использования:
rar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>

выполняет функцию заданную командой в первом параметре:

  • a (Add) добавляет все файлы в архив
  • u (Update) добавляет новые файлы и обновляет изменившиеся
  • f (Freshen) обновления изменившиеся файлы присутствующие в архиве
  • m (Move) аналогично a, но после добавления исходные файлы будут удалены
  • e (Extract) извлекает файлы из архива игнорируя путь
  • x (eXtract) files from an archive with full paths
  • t (Test) archive files
  • r (Repair) a damaged archive
  • d (Delete) files from archive
  • s[name] (Self-extracting) конвертирует архив в само-распаковывающийся
  • s- (Self-extracting) удаляет из архива модуль само-распаковки
  • c (Comment) add an archive comment
  • ch change archive parameters
  • cv convert archives

Ключи команд

Ключи оказывают влияние на характер выполнения команды и применяются в той же последовательности, в которой указаны, так ключ из той же группы подавляет предшествовавший ключи и задает новый характер. Некоторые ключи применимы

  • -f обработка только изменившихся (freshen) файлов, применимо к командам a, m, x и e
Добавления и обновления
  • -m (method) метод сжатия от -m0 (без сжатия) до -m5(максимальное)
  • -r (recurse) рекурсивный обход вложенных папок
    • -r- disable recursion
    • -r0 recurse subfolders for wildcard names only
  • -dh обработка совместно используемых (открытых) файлов

Ключи имени и пути хранимого в архиве
  • -ep полностью исключить пути из имен
  • -ep1 исключить базовый путь, сохранить вложенный путь при -r
  • -ep2 сохранить путь без литеры устройства
  • -ep3 сохранить путь с литерой устройства
  • -sc ключ кодировки в файлах списков
    • -sca списки в кодировке ANSI (Windows)
    • -sco списки в кодировке OEM (DOS)
    • -scu списки в кодировке Unicode
  • -c  пара ключей позволяет преобразовать регистр имен
    • -cl to lower case
    • -cu to upper case
Ключи динамического имени архива

Динамическое включение текущих даты и времени в имя архива:

  • -ag-YYYYMMDDHHMM создание текущего слепка на текущую дату и время
  • -ag-DD циклическое обновление архива дня месяца (восстановление дня до 28-31)
  • -ag-YYYY-WW обновление недельного архива (недельный архив)
  • -ag-YYYYMM обновление месячного архива (месячный архив)
Ключи сохранение версий

Сохранение в архиве версий обновляемых файлов:

  • -ver сохраняет все версии
  • -ver[n] сохраняет n версий

Шаблон архивации ИБ 1С 7.7

шаблон файла включений *.include

шаблон файла исключений *.exclude

Шаблон архивации файла ИБ 1С 8.x

Шаблон выгрузки 1С 8.x

Старый способ

Выгрузка файловой 1C 8.x ИБ

Выгрузка серверной 1C 8.x ИБ

Для выгрузки ИБ должна быть свободна (не использоваться ни одним пользователем).

Современный способ

Скрипт выполняет 3 операции:

  1. Завершает работу всех пользователей ИБ
  2. Запрещает работу с ИБ и выгружает данные в файл .dt
  3. Разрешает работу с ИБ

Архивация MS SQL Server

Шаблон скрипта архивации:

Шаблон скрипта автоматической архивации с динамическим именем архива:

Веб-папки WebDAV

Облачные сервисы Google Drive, Microsoft OneDrive, DropBox поддерживают работу с папками пользователя через расширение WebDAV.
Как получить халявные гигабайты в облачных хранилищах?

  • Box.com https://dav.box.com/dav
  •  OpenDrive.com – https://webdav.opendrive.com
  •  Files.fm (5GB бесплатно)
    • https://webdav.files.fm
  •  Yandex Disk (15GB бесплатно, 42GB по акции)
    • https://webdav.yandex.com
    • https://webdav.yandex.ru
  • Microsoft OneDrive - https://docs.live.net/ ()
  • Google Drive (15GB) http://dav-pocket.appspot.com/docso (протокол WebDAV уже не поддерживается)
  • Dropbox (платный) https://dav.dropdav.com/.
  •  Otixo.com (2GB бесплатно) https://dav.otixo.com/

При использовании штатной утилиты синхронизации задается путь к папке отображаемой в облаке. Такая функциональность может оказаться недостаточной при использовании сложной структуры дисков и локальных папок. Помочь может применение ссылок, подробней описанное в статье "Ссылки NTFS".

Подключение

Подключение сетевого диска выполняется командой Подключить сетевой диск в меню Компьютер

В качестве источника "Папка:" следует указать:

  • для Яндекс Диск: https://webdav.yandex.ru
  • для OneDrive: https://docs.live.net/<id>
    • <id> несложно найти в URL открытого профиля на onedrive.live.com, где он находится сразу за "&cid="

Подключение в командной строке

Пример подключение корневой папки Яндекс.Диск протоколом WebDAV:

Пример подключение произвольной папки Яндекс.Диск:

Подключение и взаимодействие с папками WebDAV осуществляется через WebFldrs. Ошибки в его работе исправляются пакетом webfldrs.msi (подробнее).

Непосредственная архивация в WebDAV

Подключенная в системе Windows папка WebDAV доступна для файловых операций архиваторами в т.ч. из командной строки, но на практике запись файлов с размером даже 1MB нередко завершается ошибкой отложенной записи. Практика показала, что при архивации томами 64KB запись выполняется стабильно, хотя скорость архивации существенно снижается.

Дополнительные ключи rar-архивации из командной строки:

  • непрерывный многотомовый архив
  • многотомовый архив по 64Кб
  • добавление 10% данных для восстановления

Архивация конфиденциальных данных в публичных и уязвимых хранилищах требует шифрования с паролем:

  • пароль для распаковки данных
  • пароль для получения списка файлов и распаковки данных

Использование клиентом Windows файлов больше 50MB

Источник: You cannot download more than 50 MB or upload large Files when the upload takes longer than 30 minutes using Web Client in Windows 7 //support.microsoft.com

Предельный размер файла web-клиента устанавливается в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
ключом FileSizeLimitInBytes (DWORD), значение которого может быть изменено.

Инструменты

Mountain Duck

Позволяет монтировать сервер и облачное хранилище как диск в Windows.
Цена $39 за лицензию.
Официальный сайт //mountainduck.io

Серверы архивации

Резервное копирование приложений

The Bat!

The Bat! прекрасно справляется с задачей архивации собственным штатными средствами, однако после восстановления из архива почтового ящика с включенной опцией "Оставлять письма на сервере" TheBat начинает повторно загружать все письма доступные на сервере так, будто никогда их не получал.

Это происходит по причине отсутствия в штатном архиве .tbk списка сообщений, которые TheBat уже загрузил. Этот список хранится в корне каждого ящика в файле ACCOUNT.M_R и представляет из себя текстовый файл с двумя колонками:

  1. вероятно, хранит день получения сообщения с 1.01.1970
  2. ID сообщения.

Скрипт архивации:

 

Leave a Reply