Автоматическое резервное копирование папок с помощью Microsoft SyncToy
Почему это полезно
Если у вас есть критичные каталоги, в которые пользователи или клиенты регулярно сохраняют данные, делать полные образы системы каждый час нерационально. Гораздо проще и быстрее автоматически синхронизировать только важные папки — это экономит дисковое пространство, пропускную способность и время восстановления.
Коротко о терминах
- Пара папок — связка «Источник ↔ Копия», которую создаёт SyncToy. Один из режимов зеркалирует изменения, другой — синхронизирует обе стороны.
Что вам нужно подготовить
- Windows 7/8/10/11 (SyncToy совместим с этими системами при корректной установке).
- Microsoft SyncToy 2.1 (бесплатно). Убедитесь, что программа установлена в стандартный каталог Program Files.
- Учётная запись с правами на запуск Планировщика заданий и доступ к папкам.
- Место назначения для резервных копий (локальный диск, сетевой ресурс или внешний диск).

Как работает SyncToy — в двух словах
- Echo — зеркалирование: все изменения слева (источник) копируются направо (копия). Удобно для односторонних бэкапов.
- Synchronize — двусторонняя синхронизация: изменения обеих сторон применяются к противоположной стороне.
Когда нужен Echo: если вы хотите получить точную копию каталога и предотвратить изменение резервной копии пользователями. Когда нужна Synchronize: если рабочие файлы могут изменяться на обеих сторонах и нужна согласованность.
Шаг 1 — создание пар папок в SyncToy
- Запустите SyncToy и нажмите Create New Folder Pair.
- Укажите левую (From) папку — откуда будут копироваться данные.
- Укажите правую (To) папку — куда будут сохраняться копии.
- Выберите Echo (если нужен односторонний бэкап) или Synchronize (если нужен двусторонний).
- Повторите для всех директорий, которые хотите бэкапить.
Примеры имён пар
- MorningFiles — бэкап папки, где собираются утренние отчёты.
- NoonFiles — дневные рабочие документы.
- MailArchives — архивы почты.
- EveningFiles — итоговые файлы дня.
Совет: выбирайте описательные имена без пробелов или с подчёркиванием — это упростит вызов через командную строку.
Шаг 2 — скрипт автоматизации (WSF + VBScript)
Мы используем WSF-файл, потому что он удобно запускается Планировщиком и может содержать VBScript. Скрипт определяет текущий час и запускает соответствующую пару через SyncToyCmd.exe.
Сохраните следующий код в файл databackup.wsf (в кодировке ANSI или UTF-8 без BOM):
Пояснения к скрипту
- Hour(Now()) — возвращает текущий час по системному времени.
- ExpandEnvironmentStrings(“%PROGRAMFILES%”) — позволяет корректно найти каталог Program Files на 32/64-битной системе.
- Флаги SyncToyCmd.exe: «-R
» запускает указанную пару по имени.
Важно: проверьте фактический путь к SyncToyCmd.exe. На некоторых системах папка может называться «SyncToy 2.1» или отличаться с учётом локализации.
Шаг 3 — настройка Планировщика заданий Windows
- Откройте Панель управления → Администрирование → Планировщик заданий.
- Нажмите Create Task.
- На вкладке General задайте имя, например “SyncToy Automated Backup”.
- На вкладке Triggers выберите New → On a schedule → Daily. Укажите время начала, например 03:00. Внизу поставьте Repeat task every: 6 hours, for a duration of: Indefinitely.
- На вкладке Actions добавьте действие Start a program и укажите путь к wscript.exe или cscript.exe с аргументом к вашему файлу databackup.wsf, либо напрямую укажите путь к WSF-файлу (Windows сам выберет интерпретатор).
- На вкладке Conditions и Settings отключите опцию, которая останавливает задачу при работе от батареи, если это важно для серверов/ноутбуков.
Пример параметров планировщика
- Start at: 03:00
- Repeat every: 6 hours
- Occurs: Daily
Это обеспечит запуск скрипта в 03:00, 09:00, 15:00 и 21:00 — каждый запуск будет запускать ту пару, которая соответствует текущему часу.
Мониторинг и логи
SyncToy ведёт лог в профиле пользователя. По умолчанию путь следующий:
C:\Users\<ИмяПользователя>\AppData\Local\Microsoft\SyncToy\2.0\SyncToyLog.log
Файл лога показывает, какая пара запускалась, когда закончилась синхронизация, сколько файлов обработано и общий размер.
Частые проблемы и как их решать
- SyncToy не запускается из Планировщика: укажите полный путь к WSF и запустите от пользователя с правами на доступ к папкам. Проверьте, запускается ли SyncToy вручную.
- Путь к SyncToyCmd.exe другой: найдите SyncToyCmd.exe и измените строку strProgFiles или используйте прямой полный путь.
- Сетевой ресурс недоступен: укажите учётные данные в Планировщике (Run whether user is logged on or not) и используйте UNC-пути (\server\share).
- Лог пустой: убедитесь, что задача действительно запускается и что скрипт не завершается с ошибкой. Включите запись ошибок в простой файл через WshShell.Exec и перенаправление вывода (дополнительно).
Когда этот подход не подходит
- Если вам нужно точное версионирование файлов или точные снимки системы — используйте системные образы и решения для дедупликации.
- Если требуется централизованный контроль и отчётность в масштабе предприятия — лучше выбрать корпоративные системы бэкапа с агентами и шифрованием.
Альтернативы и расширения
- Robocopy с расписанием — для точного контроля параметров копирования и фильтров.
- Rsync через Cygwin/WSL — при необходимости синхронизации с Linux-серверами.
- Коммерческие решения (Veeam, Acronis) — для корпоративного уровня.
Безопасность и конфиденциальность
- Шифрование: SyncToy не шифрует данные. Для чувствительных данных храните копии на зашифрованных томах (BitLocker, VeraCrypt).
- Учётные записи: Планировщик должен использовать аккаунт с минимально необходимыми правами на доступ к источникам и целям.
- GDPR/локальные требования: если бэкапите персональные данные граждан ЕС/страны, убедитесь, что места хранения и политика доступа соответствуют регуляциям.
Мини‑методология для внедрения (быстрый SOP)
- Определите критичные папки и требования RTO/RPO (время восстановления/период потери данных).
- Создайте пары в SyncToy (Echo для ванильного бэкапа).
- Положите databackup.wsf в защищённый каталог, проверьте запуск вручную.
- Настройте одну задачу в Планировщике с повторением каждые 6 часов.
- Проверьте логи после трёх циклов, откатите пару на машине теста.
- Документируйте процесс и права доступа.
Таблица — пример расписания и пар
| Время запуска | Диапазон часов | Имя пары | Описание |
|---|---|---|---|
| 03:00 | 00:00–06:59 | MorningFiles | Утренние отчёты и логи |
| 09:00 | 07:00–12:59 | NoonFiles | Текущие рабочие документы |
| 15:00 | 13:00–18:59 | MailArchives | Архив почты и обмена |
| 21:00 | 19:00–23:59 | EveningFiles | Итоги дня, резервные склады |
Матрица рисков и смягчения
- Недоступность назначения (сеть): хранить локальную промежуточную копию; настроить оповещения.
- Коррупция файлов в источнике: добавить периодические контрольные точки и отдельный архив с версионированием.
- Неправильная настройка Echo (удаление файлов): протестировать на тестовой паре перед применением в проде.
Проверки при приёмке
- Скрипт запускается вручную и через Планировщик.
- Логи SyncToy регистрируют успешное выполнение для каждой пары.
- Данные доступны на целевом хранилище и корректно открываются.
- Права доступа и шифрование настроены по политике.
Чеклист для ролей
- Системный администратор: установить SyncToy, разместить WSF, настроить Планировщик.
- Бэкап-оператор: мониторить логи, проверять объёмы и уведомлять о сбоях.
- Владелец данных: подтверждать критичность папок и тестировать восстановление.
Дерево решений для выбора режима синхронизации
flowchart TD
A[Начало] --> B{Нужно ли, чтобы резервная копия оставалась нетронутой?}
B -- Да --> C[Выбрать Echo]
B -- Нет --> D{Файлы изменяются и на источнике и на копии?}
D -- Да --> E[Выбрать Synchronize]
D -- Нет --> C
C --> F[Тестирование на тестовой паре]
E --> F
F --> G[Готово к развёртыванию]Краткий список тест-кейсов
- Запустить WSF вручную: в логе появится соответствующая запись.
- Запустить задачу Планировщика: задача стартует в запланированное время.
- Откат одной пары: убедиться, что файлы копируются и открываются.
- Проверить поведение при недоступности сети: задача логирует ошибку и не ломает другие пары.
Краткая справка (глоссарий)
- RTO — Recovery Time Objective, допустимое время восстановления.
- RPO — Recovery Point Objective, допустимый период возможной потери данных.
- Echo — режим SyncToy, зеркалирует изменения с источника на копию.
- SyncToyCmd.exe — командная утилита SyncToy для запуска пар по имени.
Итог
Этот подход даёт простую, дешевую и предсказуемую систему автоматического резервного копирования выбранных папок с использованием только Microsoft-инструментов. Он хорошо подходит для небольших сетей, рабочих станций и отделов, где нежелательно вводить сторонний софт. Для крупных сред стоит оценить возможности корпоративных систем бэкапа.
Важно: протестируйте восстановление данных регулярно — резервная копия полезна только тогда, когда из неё можно восстановить работоспособный набор файлов.
Поделитесь в комментариях — какие папки вы автоматизируете и какие у вас были сложности.
Image Credit: Shutterstock
Похожие материалы
Автоперезагрузка Windows 11 раз в неделю
Как включить историю уведомлений в Android
Автоматическая смена темы в Windows 11
Играть в SteamVR на Meta Quest через Steam Link
Синхронизация в Google Chrome: включение и отключение