====== rTorrent.Заметки ====== * Для чего: программа командной строки для закачки торрентов * Порт: /usr/ports/net-p2p/rtorrent * Доп. информация: http://ru.wikibooks.org/wiki/RTorrent * Веб-морды: * rutorrent: http://code.google.com/p/rutorrent/ * rtgui: порт /usr/ports/net-p2p/rtgui/ ===== Подробнее ===== **1.** Итак, rtorrent и rtgui установлены. Сверяем httpd.conf (обратите внимание на первые две опции): LoadModule scgi_module libexec/apache22/mod_scgi.so SCGIMount /RPC2 127.0.0.1:5000 Listen *:80 Alias /torrents "/usr/local/www/rtgui/" Options none DirectoryIndex index.php AllowOverride Limit Order Deny,Allow Allow from all DirectoryIndex index.php index.html index.htm index.shtml index.php3 AddType application/x-httpd-php .php .php3 Action application/x-httpd-php /cgi-bin/php-cgi Alias /rutorrent "/var/www/rutorrent/" Options none AllowOverride Limit Order Deny,Allow Allow from all **2.** Для rtgui выполняем: mv /usr/local/www/rtgui/config.php.example /usr/local/www/rtgui/config.php Обращаем внимание на $downloaddir. **3.** Копируем стандартный конфиг rtorrent в ~/.rtorrent.rc: min_peers = 40 max_peers = 100 min_peers_seed = 10 max_peers_seed = 50 max_uploads = 20 # Global upload and download rate in KiB. "0" for unlimited. download_rate = 9600 upload_rate = 0 # Default directory to save the downloaded torrents. directory = /var/download/Complete # Default session directory. Make sure you don't run multiple instance # of rtorrent using the same session directory. Perhaps using a # relative path? session = /var/download/sessions/ # Watch a directory for new torrents, and stop those that have been # deleted. # check every 5 sec folder schedule = watch_directory,5,5,load_start=/var/download/Auto/*.torrent schedule = untied_directory,5,5,stop_untied= # Port range to use for listening. port_range = 6890-6891 check_hash = yes use_udp_trackers = yes encryption = allow_incoming,try_outgoing,enable_retry,prefer_plaintext dht = auto dht_port = 6881 peer_exchange = yes scgi_port = 127.0.0.1:5000 log.execute = /var/log/rtorrent.log session_save = yes **4.** Запускаем: # rtorrent Выходим: Ctrl + Q. **5.** Делаем автозапуск rtorrent (сделал через /etc/rc.local, нужен установленный [[http://www.wiki.itcall.ru/doku.php/doc/sysadmin/free_os/screen|screen]]): #!/bin/sh # rt - screen name # -d - detach su - root -c "screen -S rt -d -m -p rt-X rtorrent" Но лучше написать скрипт запуска/завершения rtorrent в /гsr/local/etc/rc.d: #!/bin/sh # # rtorrent RCng startup script # by Emanuele Cipolla (mail at emanuelecipolla dot net) # Shamelessly ripped off the aMule startup script by Gabriele Cecchetti (amule.org forum) # # PROVIDE: rtorrent # REQUIRE: NETWORKING SERVERS # BEFORE: DAEMON # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable rtorrent at startup # rtorrent (bool): Set to "NO" by default. # Set it to "YES" to enable rtorrent # rtorrent_user (str): Set to user running rtorrent # (default 'p2p') # rtorrent_home (str): Set to home directory of user running rtorrent # (default /home/${rtorrent_user}) . /etc/rc.subr name="rtorrent" rcvar=`set_rcvar` load_rc_config $name [ -z "$rtorrent_enable" ] && rtorrent_enable="NO" [ -z "$rtorrent_user" ] && rtorrent_user="root" [ -z "$rtorrent_home" ] && rtorrent_home="/${rtorrent_user}" required_dirs=${rtorrent_home} required_files="${rtorrent_home}/.rtorrent.rc" start_cmd="${name}_start" stop_cmd="${name}_stop" rtorrent_start() { if [ ! -f /var/run/${name}.run ] then cd ${rtorrent_home} su ${rtorrent_user} -c "/usr/local/bin/screen -dmS rtorrent_init /usr/local/bin/rtorrent" touch /var/run/${name}.run echo "Started ${name}." echo `date` : "Started ${name}." >> /var/log/${name}.log else echo "${name} seems to be already running -- remove /var/run/${name}.run manually if needed." fi } rtorrent_stop() { if [ -f /var/run/${name}.run ] then killall -INT $(echo -n 'ps aux | grep rtorrent | grep -v rtorrent_init') 2>>/var/log/${name}.log >>/var/log/${name}.log rm -f /var/run/${name}.run echo "Stopped ${name}." echo `date` : "Stopped ${name}." >> /var/log/${name}.log else echo "${name} doesn't seem to be running -- create /var/run/${name}.run if needed." fi } run_rc_command "$1" Скрипт проверяет наличие rtorrent_enable="YES" в rc.conf **6** Некоторые Hotkeys Enter — добавить новый torrent файл. Для упрощения ввода имени файла, можно пользоваться клавишей Tab. ^T — обновить трэкер ^Q — отключает программу, повторное нажатие закрывает программу не посылая трэкеру стоп сигнал ^N|<стрелка вниз> — выбор следующего торрента/адреса ^P|<стрелка вверх> — выбор предыдущего торрента/адреса ^F|<стрелка вправо> — просмотр состояния загрузки/аплоуда торрента ^B|<стрелка влево> — возвращает на предыдущий экран A|S|D — увеличить скорость загрузки на 1/5/50 кб Z|X|C — уменьшить скорость загрузки на 1/5/50 кб a|s|d — увеличить скорость отдачи на 1/5/50 кб z|x|c — уменьшить скорость отдачи на 1/5/50 кб 1—9 — переключение между различными группами (по состоянию загрузки) ^S — начать закачку ^D — остановить закачку (повторное нажатие удаляет торрент-файл. Данные остаются) ^K — закрыть торрент и его файлы ^E — пересоздать все файлы торрента ^R — перечитать хэш торрента ^O — изменить директорию на загрузку (торрент должен быть закрыт) +|- — увеличить уменьшить приоритет загрузки торрента — добавить URL или путь к торренту L — просмотреть лог (чтобы выйти нужно нажать пробел) ^X — вызвать команду или поменять настройку TAG: {{tag> rtorrent FreeBSD}} ~~DISCUSSION~~