Гид по технологиям

Автоматическая синхронизация FTP с Windows с помощью WinSCP

6 min read Backup Обновлено 23 Nov 2025
Синхронизация FTP с Windows через WinSCP
Синхронизация FTP с Windows через WinSCP

Схема резервного копирования FTP на локальный ПК

Зачем это нужно

Резервное копирование данных — базовая страховка от потери информации. FTP и SFTP остаются удобным способом хранения файлов на удалённом сервере. Если ваш хост не предоставляет автоматических резервных копий или вы не хотите платить за облачные сервисы — простая синхронизация через WinSCP решает задачу бесплатно.

Ключевые преимущества:

  • Полный контроль данных на своей стороне.
  • Автоматизация без сторонних платных сервисов.
  • Лёгкая настройка и гибкие опции трансфера.

Важно: FTP передаёт данные в открытом виде. Если есть возможность, используйте SFTP (шифрованный канал). SFTP работает через порт 22, FTP — обычно через порт 21.

Требования

  • FTP или SFTP сервер и учётные данные (адрес, логин, пароль).
  • Компьютер с Windows.
  • Установленный WinSCP (Windows).

Подготовка WinSCP

  1. Скачайте и установите WinSCP с официального сайта.
  2. Запустите WinSCP и создайте новую сессию: укажите хост, порт, логин и пароль.
  3. Выберите тип протокола: FTP или SFTP. Если доступен SFTP — предпочтите его.
  4. Нажмите “Save” (Сохранить), дайте профилю понятное имя.
  5. Откройте сохранённый профиль, чтобы проверить соединение.

Создание профиля WinSCP: ввод хоста и учётных данных

Вход в сохранённую сессию WinSCP для проверки подключения

Создание скрипта синхронизации

Мы создадим простой скрипт для WinSCP, который подключится к серверу, перейдёт в нужную директорию, синхронизирует файлы в бинарном режиме и запишет лог.

  1. Откройте Блокнот (Notepad).
  2. Скопируйте шаблон и сохраните как файл sync.txt в удобной папке на локальном диске (например, f:\backup\sync.txt).
option batch on
option confirm off
open patrickbisch@ftp.howtogeek.com
cd backups
option transfer binary
get /testremote* f:\backups\testlocal\*
synchronize local f:\backups\testlocal testremote
exit

Пояснение команд (одно предложение на каждую):

  • option batch on — отключает интерактивные запросы, чтобы скрипт не останавливался.
  • option confirm off — автоматически подтверждает перезапись файлов.
  • open user@host — открывает сессию; при сохранённом профиле можно указать его имя вместо user@host.
  • cd backups — смена удалённой директории на сервере.
  • option transfer binary — бинарный режим передачи (рекомендуется для любых двоичных файлов).
  • get /testremote f:\backups\testlocal\ — пример команды загрузки отдельных файлов.
  • synchronize local f:\backups\testlocal testremote — синхронизирует удалённую папку testremote с локальной.
  • exit — завершает работу WinSCP.

Совет: сначала протестируйте на тестовых папках, как описано ниже. Это предотвратит случайную потерю данных.

Рекомендации по структуре директорий для теста

  • На сервере создайте папку testremote (в корне или в нужном месте).
  • На компьютере создайте папку f:\backups\testlocal.
  • Поместите в testremote один текстовый файл типа thisisatest.txt и запустите скрипт вручную или через WinSCP для проверки.

Автоматизация через Планировщик задач Windows

Мы будем запускать WinSCP с аргументами: укажем режим консоли, путь к скрипту и путь к лог-файлу.

  1. Откройте Панель управления → Система и безопасность → Администрирование → Планировщик задач.

Планировщик задач Windows

  1. Нажмите “Create Basic Task” (Создать простую задачу).

Кнопка создания новой задачи

  1. Дайте задаче имя и описание, затем Next.

Имя и описание задачи в Планировщике

  1. Выберите триггер: при входе в систему, при запуске компьютера, ежедневно/еженедельно и т. д. Для частых обновлений можно выбрать “At startup” (При запуске).

Выбор расписания запуска задачи

  1. В качестве действия выберите “Start a program” (Запустить программу). В поле Program/Script укажите путь к WinSCP.exe, обычно “C:\Program Files\WinSCP\WinSCP.exe”. В поле Add arguments введите:
/console /script=f:\backup\sync.txt /log=f:\backup\log.txt

Замените пути на свои, если вы сохранили файлы в другом месте. Параметр /console запускает консольную версию, /script указывает файл со списком команд, /log сохраняет лог выполнения.

Настройка аргументов для WinSCP в Планировщике задач

  1. Сохраните задачу и запустите её вручную для проверки (в Планировщике выберите задачу → Run).

Запуск тестовой задачи в Планировщике

После выполнения проверьте локальную папку. Если файл появился — настройка успешна. При ошибках откройте указанный лог-файл и изучите сообщения.

Критерии приёмки

  • Скрипт запускается без интерактивных запросов.
  • Файлы из testremote копируются в локальную папку полностью и корректно.
  • В лог-файле отсутствуют критические ошибки.
  • Скрипт выполняется по расписанию (проверено минимум два запуска).

Тестовые сценарии и контроль качества

  • Положите файл размером 1 КБ, запустите задачу, проверьте наличие и целостность.
  • Измените файл на сервере — убедитесь, что локальная копия обновилась.
  • Удалите файл на сервере — при синхронизации локальная копия должна остаться (synchronize local по умолчанию копирует удалённое содержимое в локальную папку; настройте поведение, если нужен зеркальный режим).
  • Проверьте поведение при сетевой ошибке: должен быть записан лог с описанием проблемы.

Безопасность и приватность

  • По возможности используйте SFTP вместо FTP, чтобы шифровать логин, пароль и данные.
  • Никогда не храните учётные данные в открытом виде в скриптах; используйте сохранённые сессии WinSCP с настроенными ключами или менеджер паролей.
  • Ограничьте права доступа к локальной папке с бэкапами (NTFS разрешения).
  • Если вы работаете с персональными данными пользователей, проверьте требования локального законодательства и политику хранения данных.

Important: если ваш FTP-сервер открыт в интернет, удостоверьтесь, что доступ к нему ограничен по IP или защищён сильными паролями.

Когда этот метод не подойдёт (ограничения)

  • Большие объёмы данных (несколько сотен гигабайт) — перенос по FTP может быть медленным и ненадёжен; рассмотрите rsync, облачные решения или специализированные бэкап-агенты.
  • Требования к дедупликации и сохранению истории версий — WinSCP синхронизация только копирует файлы, она не хранит версионность.
  • Необходимость шифрования «на диске» — WinSCP не шифрует локальные файлы.

Альтернативные подходы

  • rsync (через Cygwin или WSL) для более эффективной синхронизации дельт.
  • Rclone — для синхронизации с облачными провайдерами.
  • Специализированные решения бэкапа (Veeam, Duplicati, Duplicacy) для датасторов и версионных бэкапов.

Руководство по отладке (короткий чеклист)

  • Шаг 1: Запустите WinSCP вручную с тем же профилем и посмотрите, работает ли соединение.
  • Шаг 2: Запустите sync.txt вручную через WinSCP (двойной клик по WinSCP -> Session -> Execute script) или командно.
  • Шаг 3: Проверьте лог-файл, указанный в параметре /log.
  • Шаг 4: Убедитесь, что Планировщик задач запускается от пользователя с правами доступа к указанным папкам.
  • Шаг 5: Если используются сетевые диски, убедитесь, что задача выполняется после подключения сетевых томов (может потребоваться запуск от входа пользователя).

Примеры настроек для частых сценариев

  • Только загрузка новых и изменённых файлов: use synchronize local.
  • Зеркальное копирование (удаление локальных файлов, которых нет на сервере): используйте synchronize remote или дополнительные параметры, но применяйте с осторожностью.

Чек-лист для администратора

  • Проверить доступность SFTP/FTP и портов (21/22).
  • Создать тестовые папки и файлы.
  • Настроить и протестировать профиль в WinSCP.
  • Написать и протестировать sync.txt локально.
  • Настроить Планировщик задач и проверить запуск.
  • Настроить ротацию логов (по необходимости).
  • Проверить права доступа к локальным бэкап-папкам.

Итоги

Вы получили простую и бесплатную схему для автоматической синхронизации файлов с FTP/SFTP на Windows с помощью WinSCP и Планировщика задач. Это практичное решение для регулярных резервных копий небольших и средних наборов файлов. Для производства и больших объёмов данных рассмотрите более мощные инструменты.

Summary:

  • Настройте профиль в WinSCP и протестируйте соединение.
  • Создайте скрипт sync.txt и проверьте его вручную.
  • Запланируйте запуск через Планировщик задач с аргументами /console /script=… /log=….

Notes: всегда тестируйте на контрольных данных и храните критичные бэкапы в нескольких независимых местах.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство