Библиотека сайта 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
На этом все.