Помимо стандартных средств файлообмена, мы пользуемся P2P сетью Direct Connect. На “Warehouse” был установлен хаб Verlihub, с которым соединяются все пользователи. Как его поставить и настроить я напишу чуть позже. В файлообмене активно участвуют и наши сервера, а в качестве клиентской программы я использую microdc2 — консольный клиент для DC сетей.
Сборка и установка
Сборка и установка microdc2 не занимает много времени. Скачаем архив с исходниками, распакуем его и перейдём в папку с исходниками:
warehouse:~# wget http://corsair626.no-ip.org/microdc/microdc2-0.15.6.tar.gz
warehouse:~# tar zxf microdc2-0.15.6.tar.gz
warehouse:~# cd microdc2-0.15.6
Прежде чем начать собирать программу, поставим необходимые пакеты:
warehouse:~# apt-get install libreadline5-dev libxml2-dev
После установки пакета можно запустить конфигурирование программы:
warehouse:~/microdc2-0.15.6# ./configure
Если всё прошло без ошибок, как это было в моём случае, можно скомпилировать и установить программу:
warehouse:~/microdc2-0.15.6# make && make install
Теперь программа установлена и можно переходить к её настройке.
Настройка
Запускать microdc2 я буду не от рута, а от обычного пользователя, поэтому зайдём в его каталог и создадим папку с файлом конфигурации:
remontka@warehouse:~$ mkdir .microdc2
remontka@warehouse:~$ mcedit .microdc2/config
Мой конфигурационный файл:
set filesystem_charset urf-8
set hub_charset cp1251
set log_charset utf-8
set auto_reconnect on
set filelist_refresh_interval 600
set display searchresults
set log searchresults
share /var/www/
set downloaddir /tmp/
set listingdir /tmp/
set nick Warehouse
set password MyPass
set description «Warehouse server bot»
set email remontka@local
set logfile /home/remontka/.microdc2/microdc.log
set slots 100
set speed LAN(T3)
set active on
connect dc.local
Теперь можно запускать microdc2 и она автоматически подключится к указанному в конфигурационном файле хабу.
Автозапуск microdc2 при загрузке
Сначала установим screen:
warehouse:~# apt-get install screen
Создадим скрипт запуска microdc2:
mcedit /etc/init.d/microdc2.sh
Добавим в него следующие строки:
#!/bin/sh
/usr/bin/screen -d -m su -l remontka -c «/usr/local/bin/microdc2 -c /home/remontka/.microdc2/config»
В моём случае microdc2 будет запускаться под пользователем remontka.
update-rc.d microdc2.sh defaults 90
Добавим скрипт в автозапуск. Оформлен он не по правилам, на что будет выдано предупреждение. Впрочем, взять за основу /etc/init.d/skeleton и оформить скрипт в соответствии с правилами мне не мешает ничто, кроме лени.