Настройка microdc2 для домашнего сервера под управлением Gentoo Linux


Задался вопросом установки на домашний сервер DC++ command-line клиента microdc2, причем запускаться он должен как демон при старте системы. В ebuild для microdc2 не входит init-скрипт, но решение было найдено путем чтения man’а, google’ния, и спрашивания lightoze.

Установка необходимых пакетов и создание пользователя:

emerge -av microdc2
emerge -av screen
adduser -m -s /sbin/nologin dconnect

Файл конфигурации microdc2 (/home/dconnect/.microdc2/config):

share /home/ftp/public
set log connections download upload
set log_charset UTF-8
set logfile /var/log/dconnect
set nick SampleNick
set password SamplePassword
set description DC++ Client on Home Server
set auto_reconnect on
set filelist_refresh_interval 3600
set active on
set email sample@email
set speed LAN(T3)
set slots 10
set hub_charset cp1251
connect SampleHub

Скрипт для запуска в качестве демона (/home/dconnect/run):

#!/bin/sh
 
cd ${HOME}
/usr/bin/screen -S microdc2 -d -m microdc2
exit 0

Init-скрипт (/etc/init.d/dconnect):

#!/sbin/runscript
 
depend() {
  need net
}
 
checkconfig() {
  HOME="/home/dconnect"
  return 0
}
 
start() {
  checkconfig || return 1
  ebegin "Starting Direct Connect server"
  start-stop-daemon --start --quiet --chuid dconnect --exec ${HOME}/run
  eend 0
}
 
stop() {
  checkconfig || return 1
  ebegin "Stopping Direct Connect server"
  start-stop-daemon --stop --quiet --user dconnect --retry 5 --signal 9 --exec microdc2
  eend $?
}

Для использования активного режима необходимо также настроить iptables.
И последний штрих:

rc-update add dconnect default

,

blog comments powered by Disqus