Последние записи в блоге

OS X синхронизация с сервером fswatch + rsync

Для начала нужно закинуть ключ на удаленный сервер:

ssh-keygen -t rsa

Далее, ставим ssh-copy-id ( в Mac OS: bew install ssh-copy-id ) и с его помощью заливаем наш сгенерированный ключ:

ssh-copy-id -i ~/.ssh/id_rsa user@remote.ru

Теперь ставим fswatch и rsync:

brew install fswatch
brew install rsync

Создаем файл sync.sh 
 
#!/bin/bash

watch() {
    fswatch -0 $1 | while read -d "" event
    do
        rsync -avzutr --timeout=10 $1 $2
    done
}

watch "local/path/" "login@server:path/" 

exit 0

Первым параметром передаем, что будем отслеживать и откуда брать изменения, вторым – куда их отправлять.
 
Нужно только иметь в виду, что такой подход дает возможность односторонней синхронизации. Для двусторонней, в частности, предлагается в sync.sh добавить еще одну строчку с обратным урлом: 
 
#!/bin/bash

watch() {
    fswatch -0 $1 | while read -d "" event
    do
        rsync -avzutr --timeout=10 $1 $2
        rsync -avzutr --timeout=10 $2 $1
    done
}

watch "local/path/" "login@server:path/" 

exit 0

 

Агрегатор фриланс бирж FreelanceGrab, искать заказы на фрилансе стало еще проще.
8 крупных бирж, удобный поиск и фильтрация по проектам,
моментальное обновление ленты без перезагрузки страницы