Windows: Резервное копирование на Яндекс.Диск штатными средвами
Недавно появилась задача организовать резервное копирование критичных данных на какой-нибудь облачный сервис. Так как установка на сервер клиентского приложения для синхронизации данных -- процесс весьма сомнительный, решил организовать копирование на Яндекс.Диск через раширение http-протокола WebDAV, благо и яндекс и windows это умеют.
ВНИМАНИЕ!! В механизмах работы ЯндекДиска что-то поменялось и копирование по webDAV работает крайне плохо.. Инструкция по настройке приложения ЯндексДиск для резерного копирования тут: Резервное копирование на ЯндексДиск через приложение.
Для копирования набросал простенький батник вида:
chcp 1251
net use v: /delete
net use v: \\webdav.yandex.ru@SSL\DavWWWRoot /user:<имя пользователя (почта без @yandex.ru)> <пароль>
"C:\Program Files\7-Zip\7z.exe" a -tzip -ssw -mx7 -r0 V:\backup_%date%.zip @listfile.txt
Скрипт сначала удаляет, потом подключает сетевой диск V, содержимое которого и есть содержимое яндекс диска. После этого архиватором 7zip туда копируются файлы из списка listfile.txt.
Ввиду ограниченности места на Яндекс.Диске, после net use можно выполнить удаление старых резервных копий командой
подробнее про удаление тут: Windows: удаление устаревших резервных копий
В итоге получилось резервное копирование на бесплатный облачный сервис по защищенному соединению без установки дополнительных программ.
Подробнее про webdav можно почитать тут.
Скачать костыль скрипта можно отсюда.
P.S. На серверных версиях Windows webdav-клиент входит в состав компонента "Возможности рабочего стола"(Desktop Experience), который нужно устанавливать отдельно.
Комментарии
Да, если в планировщике поставить точку выполнять вне зависимости от регистрации пользователя и ввести пароль. На windows server 2008 r2 точно работает.
По поводу файла listfile.txt, должно работать и с папками. Пример:
C:\Test\
C:\Test2\test.txt
RSS лента комментариев этой записи