subversion как система резервного копирования

Понадобилось легко и непринуждённо иметь резервную копию директории с 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 и т.п.)… Ну да ладно – велосипед собранный своими руками милее (и прозрачнее в работе).

08.12.11  |  , ,  | стань первым

Всегда в курсе событий


Захотелось несколько “скрасить” суровые будни в богопротивной винде.
А именно – захотелось красивой нотификации в систрее о разного рода событиях, за которыми приходиться заглядывать в кучу открытых консолей.
У маководов для этого есть growl. Дома, в KDE, есть kdialog. А как быть виндузятникам?
Этот вопрос был задан одному знакомому поисковику. Делюсь зёрнами:

Герой заметки – Snarl. Это собственно аналог Growl.
Ну и утилитка для отправки сообщений из командной строки – sncmd (входящая в состав snarl утилитка сделана как консольное приложение со всеми вытекающими выскакивающими последствиями).

Результат можно узреть на скриншоте. Теперь нет нужды без конца следить за вялотекущими процессами – по окончании появиться гламурное сообщение о боевой готовности (ну или о провале всей операции).
Единственный “недостаток”, который пока встретился – кириллица. Её засунуть в сообщение я так и не смог.

P.S.
Я вот наслышан о том, что оригинал умеет принимать сообщения по сети. Хочу такой же, но с перламутровыми пуговицами. О порте под win слышны только скриншоты. Быть может вы знаете что я ищу?
А ещё быть может вы ещё и знаете консольку под win, которая умеет выводить ANSI-colors? Одолела серость… Буду рад любым наводкам.

20.05.08  |  ,  | 2 comments

Performance Optimization WordPress Plugins by W3 EDGE