Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Простая синхронизация файлов с bitpocket

Оригинал: Easy File Sync with Bitpocket
Автор: Dmitri Popov
Дата публикации: 28 марта 2012 года
Перевод: А. Кривошей
Дата перевода: 10 сентября 2012 г.

Нуждаетесь в синхронизации файлов и документов на нескольких компьютерах с Linux? Bitpocket обеспечивает решение данной проблемы. Этот небольшой скрипт оболочки использует мощную программу rsync для выполнения синхронизации, причем вы можете иметь одну машину в качестве "главного репозитория" и несколько машин в качестве "клиентов", которые будут синхронизироваться с главной машиной. Ниже будет описано, как настроить такую конфигурацию.

Вы можете использовать любой Linux-компьютер с установленными OpenSSH и rsync в качестве хаба синхронизации. Единственное, что от вас потребуется - создать директорию, которая будет содержать мастер-копии файлов, что можно выполнить с помощью двух команд (замените user@remotehost на реальное имя пользователя и IP-адрес или доменное имя удаленной машины).

$ ssh user@remotehost 
$ mkdir ~/bitpocketmaster 

Настройка

Для запуска bitpocket на клиентских машинах, вам необходимы как rsync,так и curl. Поэтому для начала установим их:

$ sudo apt-get install rsync curl

Вам понадобится закрытый ключ для клиента:

$ ssh-keygen -t dsa

Вам также будет необходимо поместить свой открытый ключ в файл authorized_keys на удаленной машине, чтобы иметь возможность авторизоваться с использованием пары открытый/закрытый ключ:

$ ssh-copy-id -i .ssh/id_dsa.pub user@remotehost 

(Замените user@remotehost на реальное имя пользователя и IP-адрес или доменное имя удаленной машины). Теперь просто установите Bitpocket (то есть скачайте его с GitHub, сделайте исполняемым и установите):

$ curl -sL https://raw.github.com/sickill/bitpocket/master/bin/bitpocket > ~/bitpocket
$ sudo mv ~/bitpocket /usr/bin/
$ cd /usr/bin/
$ chmod +x /usr/bin/bitpocket

И, наконец, теперь вы можете создать директорию для bitpocket и активировать его:

$ mkdir ~/bitpocket
$ cd ~/bitpocket
$ bitpocket init user@remotehost ~/bitpocketmaster

Скрипт для установки

Для ускорения процесса вы можете использовать простой скрипт, который выполняет все вышеприведенные операции:

Скопируйте вышеприведенный код и вставьте его в новый текстовый файл. Замените user@remotehost на реальное имя пользователя и IP-адрес или доменное имя удаленной машины, затем сохраните скрипт как installbitpocket.sh. В терминале сделайте скрипт исполняемым и запустите его.

$ chmod +x installbitpocket.sh
$ ./installbitpocket.sh 

Он установит требуемые пакеты и сам bitpocket, сгенерирует и скопирует ключи шифрования, создаст папку bitpocket в домашней директории пользователя, и инициализирует созданную папку для ее использования с bitpocket.

Запуск

Чтобы проверить, правильно ли все работает, поместите несколько файлов в директорию bitpocket, затем перейдите в эту директорию в терминале и выполните синхронизацию:

$ cd ~/bitpocket bitpocket sync 

Должна выполниться синхронизация с директорией bitpocketmaster на удаленной машине. Чтобы автоматизировать синхронизацию, выполните команду crontab -e и добавьте следующую задачу для cron (модифицируйте пример, если это требуется):

*/5 * * * * cd ~/bitpocket && nice /usr/bin/bitpocket cron 

На этом все.