BitTorrent Sync and Share

В интернетах появилась весьма занимательная штука для синхронизации папок на двух разных компьютерах в локальной сети по защищенному протоколу P2P — BitTorrent Sync. Чем примечательна эта штука? Мне лично понравилось следующее: простая установка, простая настройка, веб интерфейс, отличное качество работы, безопасность и сама идея. Для домашнего использования мне кажется очень даже удобно. В чем фишка? Приведу пример, я ездил заграницу, все фотки отклацанные на фотик складывал в папку в DropBox что-бы они синхронизировались на устройства и на сервер, что самое важное. Эта прога позволяет закидывать все в папку и через защищенный протокол синхронизировать данные в локальной сети. Для удаленной работы двух компов как все понимают тут нужны l2tp или vpn туннель. В общем разберемся по ходу дела.

Установка BitTorrent Sync

Для установки клиента-сервера вам даже не нужен графический интерфейс.
Качаем прогу:

wget http://btsync.s3-website-us-east-1.amazonaws.com/btsync_i386.tar.gz
wget http://btsync.s3-website-us-east-1.amazonaws.com/btsync_i386.tar.gz

Или с сайта: http://labs.bittorrent.com/experiments/sync/get-started.html

Распаковываем и запускаем:

tar xvf btsync_i386.tar.gz
chmod +x btsync
./btsync
tar xvf btsync_i386.tar.gz
chmod +x btsync
./btsync

Вся прелесть в том, что вам даже не нужны права администратора.
Помощь по функциям проги:

./btsync --help
./btsync --help

Остановить программу:

killall btsync
killall btsync

Работа BitTorrent Sync

Еще раз, запускаем прогу так:

./btsync
./btsync

Если вы используете Ubuntu\Debian то логично думать, что ваша система надежно защищена файрволлом, так что не забудьте открыть порт:

Для UFW:

sudo ufw allow 888
sudo ufw allow 888

Для IPtables:

-A INPUT -p tcp --dport 8888 -j ACCEPT
-A INPUT -p tcp --dport 8888 -j ACCEPT

Далее откройте браузер и перейдите по адресу http://localhost:8888/gui/

BitTorrent Sync - Google Chrome_001

Следующий шаг это выбор каталога для синхронизации и генерирование 21-битного Base32 защищенного ключа.
BitTorrent Sync - Google Chrome_002

Теперь на другом устройстве в сети скайчайте программу и запустите, как мы уже делали выше, введите IP-адрес устройства в браузере и добавьте каталог для синхронизации, а в строку с ключем вставте ранее сгенерированный ключ. И все! Синхронизация каталогов начнется.
BitTorrent Sync - Google Chrome_003

Вот сам процесс:
BitTorrent Sync - Google Chrome_004

Как и обещал все оказалось просто.
Полазте в настройках веб-интерфейса, но там не много опций, если хотите чуть больше, то нужно сделать дамп стандартного конфига программы:

./btsync --dump-sample-config > sync.conf
./btsync --dump-sample-config > sync.conf

Далее поправить его и запустить прогу с новым конфигом:

./btsync --config sync.conf
./btsync --config sync.conf

Что интересного в конфиге?

  • — Настроить авторизацию по логину и паролю
  • — Настройить скорость download & upload
  • — Настроить папки которые нужно синхронизировать

Что в итоге?

Программа отлично работает без прав рута, что только радует. Ею можно удаленно управлять через удобный и простой веб-интерфейс. Программа предназначенна для синхронизации крупных файлов >10GB. Программа стабильна и не ест ресурсы. Многие говорят, что ее главный минус это закрытый код, но давайте не будем :) про теории заговора и прочие штуки. Мне лично она очень понравилась своей надежностью и простой.