Мини how-to :: Установка и настройка BitTorrent клиента Transmission как демона с Web-интерфейсом
Потребовалось установить качалку торрентов на сервер без графики, монитора, ... e.t.c. с удаленным управлением,
и забирать закачанные файлы по ftp/smb...
1. Обновляем порты
2. Устанавливаем трансмиссию и web-интерфейс к ней
Код: Выделить всё
cd /usr/ports/net-p2p/transmission-daemon
make install clean
cd /usr/ports/www/transmission-web
make install clean
rehash
Код: Выделить всё
# adduser
Username: transmission
Full name: transmission daemon
Uid (Leave empty for default):
Login group [transmission]:
Login group is transmission. Invite transmission into other groups? []:
Login class [default]:
Shell (sh csh tcsh nologin) [sh]: nologin
Home directory [/home/transmission]: /nonexistent
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]: no
Lock out the account after creation? [no]:
Username : transmission
Password : <disabled>
Full Name : transmission daemon
Uid : 1002
Class : default
Groups : transmission
Home : /nonexistent
Home Mode :
Shell : /usr/sbin/nologin
Locked : no
OK? (yes/no): yes
Код: Выделить всё
cd /usr/local/etc/rc.d
touch transmission
chmod +x /usr/local/etc/rc.d/transmission
Позже пофиксю, пока дам ссылку на правильную часть в этой же теме (вторая страница) http://forum.lissyara.su/viewtopic.php? ... 25#p221453
Код: Выделить всё
# cat /usr/local/etc/rc.d/transmission
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: transmission
# REQUIRE: DAEMON
#
# Add the following lines to /etc/rc.conf to enable this service:
#
# transmission_enable: Set to NO by default.
# Set it to YES to enable the tracker.
# transmission_watch_dir: A folder for torrent files to download
# automatically.
# transmission_conf_dir: The directory where transmission configuration
# data is stored
# transmission_user: The user account transmission should run as.
# This will be root if unset -- you probably don't
# want that!
#
. "/etc/rc.subr"
name=transmission
rcvar=`set_rcvar`
command=/usr/local/bin/transmission-daemon
load_rc_config ${name}
: ${transmission_enable:="NO"}
: ${transmission_pidfile:=/var/run/${name}.pid}
transmission_flags="${transmission_watch_dir:+-c ${transmission_watch_dir}} ${transmission_conf_dir:+-g ${transmission_conf_dir}} ${transmission_flags}"
run_rc_command "$1"
5. Запускаем демона из под рута с флагом -f, прерываем командой CTRL+C и получаем файлы с настройками в папке /root/.config/transmission-daemon/
Код: Выделить всё
# /usr/local/bin/transmission-daemon -f
[16:12:26.215] Couldn't create socket: Protocol not supported
[16:12:26.219] RPC Server: Adding address to whitelist: 127.0.0.1
[16:12:26.220] RPC Server: Serving RPC and Web requests on port 9091
[16:12:26.220] RPC Server: Whitelist enabled
[16:12:26.220] Transmission 1.61 (8385) started
[16:12:27.208] Port Forwarding (NAT-PMP): Port Forwarding (NAT-PMP)
sendto: Permission denied
[16:12:27.221] Port Forwarding: Port Forwarding
[16:12:27.221] Port Forwarding: Port Forwarding
[16:12:27.221] Couldn't create socket: Protocol not supported
[16:12:27.221] Port Forwarding: Port Forwarding
^C
[16:12:36.319] Saved "/root/.config/transmission-daemon/settings.json"
[16:12:37.219] Port Forwarding: Port Forwarding
[16:12:37.219] Port Forwarding: Port Forwarding
Closing transmission session... done.
Код: Выделить всё
mkdir /transmission
mkdir /transmission/uploads
mkdir /transmission/downloads
mkdir /transmission/config
downloads - папка для скачанных файлов
config - папка для хранения настроек
Переносим содержимое /root/.config/transmission-daemon в /transmission/config
Задаем права на папки и файлы
Код: Выделить всё
chown -R transmission:transmission /transmission
Код: Выделить всё
transmission_enable="YES"
transmission_watch_dir="/transmission/upload"
transmission_conf_dir="/transmission/config"
transmission_user="transmission"
transmission_download_dir="/transmission/downloads"
Редактируем файл /transmission/config/settings.json
Формат файла настроек подробно описан на офф-сайте http://trac.transmissionbt.com/wiki/EditConfigFiles
Кое-что из него
Код: Выделить всё
"peer-port" : 51413,
...
"download-dir": "\/transmission\/downloads",
...
"rpc-authentication-required": true,
"rpc-bind-address": "192.168.0.1",
"rpc-enabled": true,
"rpc-password": "12345",
"rpc-port": 9091,
"rpc-username": "admin",
Гм...
http://www.lissyara.su/?id=1127
10. Запускаем трансмиссию
Код: Выделить всё
cd /usr/local/etc/rc.d
./transmission start
http://192.168.0.1:9091/
(здесь 192.168.0.1:9091 - rpc-bind-address:rpc-port в настройках)
Обращаем внимание на кнопку "Фильтры". Для добавления нажимаем кнопку Open. Новые добавленные торренты иногда в паузе по-умолчанию...
12. Еще можно использовать удаленного клиента для управления (сам не пробовал, хватает веб-инта, хоть он и торозной местами)
Лежит здесь http://code.google.com/p/transmisson-remote-gui/