Здравствуйте, tors, Вы писали:
T>Есть два хостинга под никсами.
Какая именно ОС и версия?
T>Нужно между ними(междуопределенными папками
T>назовем их ./licenses/lickeys) через каждые 20 минут
T>совершать синхронизацию
T>(новые файлы, измененные файлы)
Лучше не каждые 20 минут, а отслеживать изменения (например, inotify(7)).
T>Я полагаю нужно делать это через ftp
А я не полагаю. Нужно через sftp. FTP не умеет нормальное шифрование.
T>(прямого доступа к lickkeys нет и быть не должно).
Что такое «прямой доступ»?
T>Полагаю делать это через cron и rsync
T>Я в линухах не очень.
T>Может посоветуете доки по сабжу
T>или даже приведете пример как это сделать?
Лучше Unison, это rsync в обе стороны. (Если речь о shared hosting (о чем было бы хорошо сразу упомянуть), то придется просить админов установить.)
~/.unison/licenses.prf: (если не в ~/.unison, то нужно передавать путь в переменной окружения UNISON)
root = /some/path
root = ssh://other.host//corresponding/path
sshargs = -i /path/to/SSH/key
log = true
Запуск:
unison licenses -batch -silent -log -logfile /path/to/logfile
Для надежности можно предусмотреть таймаут:
timeout -15 600 unison licenses -batch -silent -log -logfile /path/to/logfile
На Linux можно использовать inotify (отслеживание изменений):
while inotifywait -qq -e create,modify /path/to/licenses
do
timeout -15 600 unison licenses -batch -silent -log -logfile /path/to/logfile
done
А дальше rtfm unison(1), timeout(1), inotifywatch(1), ssh-keygen(1).