По разным причинам может понадобиться консольный клиент DC++ на unix. В статье я опишу установку и настройку клиента microdc2.
Установка из портов стандартным образом:
cd /usr/ports/net-p2p/microdc2 make install clean
Запускать DC++ из под рута не очень хорошая идея. Нужно хоть немного беспокоится о безопасности. Поэтому создадим нового пользователя специально для DC++ клиента.
pw useradd dc -d /home/dc -s /usr/local/bin/bash
Создадим домашнюю директорию и изменим владельца на dc:
mkdir /home/dc chown dc /home/dc
Затем необходимо создать файл конфигурации для нашего dc++ клиента. Файл конфигурации необходимо сохранить в /home/dc/.microdc2/config (именно от туда microdc2 будет пытаться загрузить файл конфигурации).
set filesystem_charset koi8-r set hub_charset cp1251 set log_charset koi8-r set auto_reconnect on set filelist_refresh_interval 600 set display download searchresults upload set log download searchresults upload share /var/samba/soft/ share /var/samba/video/ set downloaddir /home/dc/download set listingdir /home/dc/.microdc2 set nick mylogin set password mypassword #пароль к нику (опционально) set description "its me" set email mymail@google.com set logfile /home/dc/microdc.log set slots 15 set active on set speed 100 connect dc.hub.ru
С таким файлом конфигурации microdc2 можно спокойно запускать и оно будет работать. Но запускать нужно от имени dc, который был создан ранее. Поэтому предлагаю использовать скрипт, который следует положить, по логике вещей, в /usr/local/etc/rc.d/dc (для freebsd).
#!/bin/sh case "$1" in start) echo -n "Starting microdc2..." su - dc -c '/usr/local/bin/screen -S dc -d -m /usr/local/bin/microdc2' ps axc | grep microdc2 | awk '{print $1}' > /var/run/microdc2.pid ;; stop) echo -n "Stopping microdc2..." /usr/bin/killall -9 microdc2 rm -f /var/run/microdc2.pid ;; *) echo "Usage: `basename $0` {start|stop}" >&2 exit 64 ;; esac exit 0
Скрипт нужно будет добавить в crontab (crontab -e):
@reboot /usr/local/etc/rc.d/dc start
0 Комментарии。