Понадобилось легко и непринуждённо иметь резервную копию директории с windows-сервера.
***
Первой попыткой было использование wget –mirror с ftp-сервером:
#!/bin/sh -e unset url="ftp://server.tld/path/to/dir/" backup="/tmp/local-copy" wget --no-cache -nH -c -t0 --mirror -P$backup -i- <<EOF $url/subfolder1 $url/subfolder2 $url/subfolderN EOF
Первоначальный бэкап вроде как получился, но последующие попытки синхронизироваться ничем не завершались – wget уходил в себя от бесконечных потуг скачать некоторые файлы, размер которых не сходился с ожидаемым.
Вина ли тут ftp-сервера или проблема во wget разбираться не захотелось. Кроме того обнаружилось, что файлы с кириллицей в названии в процессе перекачки потеряли часть былых имён. wget вычёркиваем.
***
Попытался найти аналог rsync для windows, первые несколько страниц поиска содержали какие-то gui-приложения, форумы предлагали использовать cygwin и массу других тяжеловесных комбайнов…
В итоге всё решилось импортом директории в svn и добавлением в “Scheduled tasks” следующего bat-файла:
cd \path\to\dir for /f "tokens=2*" %%i in ('\path\to\bin\svn status . ^| find "?"') do \path\to\bin\svn add "%%i" for /f "tokens=2*" %%i in ('\path\to\bin\svn status . ^| find "!"') do \path\to\bin\svn delete "%%i" \path\to\bin\svn commit -m "Automatic backup" .
***
Дописывая эти строки подумалось – а ведь можно было использовать dropbox (asus webstorage, ubuntu one и т.п.)… Ну да ладно – велосипед собранный своими руками милее (и прозрачнее в работе).