В наше время практиески нет пользователей сети Интернет, которые не знали бы, что такое торренты. Это замечательная технология, которая позволяет передавать файлы не только с сервера, но и от пользователя к пользователю. За счет чего скорость может быть существенно выше. Например, множество дистрибутивов Linux распространяются именно через torrent.
И для клиентов есть множество программ, которые позволяют совершать закачку и раздачу файлов. Но есть клиенты в виде обычных десктоп-программ, а есть и клиенты-службы, то есть сервисы или демоны.
Плюсы первых - удобная графическая оболочка и настройки. Обычно так же большое количество опций.
Плюсы вторых - они, как правило, запускаются автоматически при включении компьютера без участия пользователя. Они могут использоваться на компьютерах без графических оболочек, как, например, сервера. К ним так же можно организоваться доступ через любой браузер, что позволяет использовать программу нескольким пользователям.
Теперь немного о том, как настроить сл. торрент-клиент:
Transmission-daemon
Опции transmission-daemon
123456789101112131415161718192021222324
-a --allowed Разрешенные IP адреса для просмотра статуса закачек через браузер. По умолчанию разрешен только локальный адрес 127.0.0.1
-b --blocklist Включить блок-лист
-B --no-blocklist Выключить блок-лист
-c --watch-dir Эта опция указывает директорию, откуда программа будет автоматом собирать скачанные файлы с расширением .torrent.
-C --no-watch-dir Из этой директории torrent-файлы собираться не будут
--incomplete-dir В эту директорию будут записываться незавершенные закачки.
-e --logfile Опция для того, чтобы указать в какой файл записывать состояние работы программы (логи).
-f --foreground Работа в открытом режиме
-g --config-dir Путь к конфигурационному файлу
-p --port Порт для веб-страницы
-t --auth Запрос аутентификации
-u --username Имя пользователя для аутентификации
-v --password Пароль для аутентификации
-V --version Показать версию программы
-w --download-dir директория, куда будут отправляться скачанные файлы. Учтите, что они там появяться только после завершения закачки и достижения установленного рейтинга.
--paused Не запускать закачку при включении.
-P --peerport Порт для незавершенных закачек. По умолчанию используется 51413
-L --peerlimit-global Лимит на закачку. По умолчанию 240
-l --peerlimit-torrent Максимальное количество раздающих на закачку. По умолчанию 60
-er --encryption-required Шифровать все соединения
-ep --encryption-preferred Prefer encrypted peer connections
-i --bind-address-ipv4 Соединяться только по протоколу [[Протоколы|IPv4]]
-I --bind-address-ipv6 Соединяться только по протоколу [[Протоколы|IPv6]]
-gsr --global-seedratio Завершать раздачу при достижении этого рейтинга
Настройка transmission-daemon в fedora
Итак, где можно найти файл настроек для Fedora, CentOS и других дистрибутивов, собранных на основе Red Hat? Этот файл /etc/sysconfig/transmission-daemon. Его содержимое:
1
DAEMON_USER="user" #Укажите пользователя, от имени которого будет работать программа.
Сами понимаете, то не стоит доверять это пользователю root.
1
DAEMON_ARGS="--incomplete-dir /home/user/torrents/incomplite --watch-dir /home/user/downloads --download-dir /home/user/torrents --allowed 192.168.0.* -T --blocklist -g $TRANSMISSION_HOME/.config/transmission-daemon" #здесь у нас указаны директории для закачки, разрешен доступ к веб подсети 192.168.0.0-254 и указан файл конфигурации.
И уже в папке вашего пользователя (в примере user) создайте скрипт send-mail-from-transmission следующего содержания:
12
#!/bin/[[bash]]
echo "Downloading torrent has been finished." | mail -s "YAHOO!!!" user@wikiadmin.net
Уменьшите обращение в жесткому диску
В настройках вы можете встретить такой пункт, как ‘’‘cache-size-mb’‘’. Я выставил его больше, чем в половину свободно памяти. Много занятой памяти у меня не предвидеться на этой машинке (роутер), а вот диск стал использоваться немного реже. Для SSD это, как я понимаю, не так и маловажно, учитывая ограничение на перезапись этих носителей.
Файл настроек самостоятельно возвращает настройки
Вы редактируете файл /etc/transmission-daemon/settings.json, перегружаете transmission-daemon, а настройки вдруг опять выставлены по-умолчанию. Тут все просто: ‘’‘прежде чем править конфиг, остановите службу’‘’!
К слову, в новой Ubuntu останавливаться это чудо искренне не желает. Restart и даже kill -9 не спасают, появляется новый процесс. Решается так:
редактируем /etc/default/transmission-daemon
1
ENABLE_DAEMON=0
можно кильнуть процесс и уже вдоволь поиздеваться над конфигом….
Настройка TC, чтобы торренты имели меньший приоритет и не мешали другому трафику
#!/bin/sh
ip link set ifb0 down
rmmod ifb 2> /dev/null > /dev/null
modprobe ifb
ip link set ifb0 up
tc qdisc del dev ppp0 [[root]] 2> /dev/null > /dev/null
tc qdisc del dev ppp0 ingress 2> /dev/null > /dev/null
tc qdisc del dev ifb0 [[root]] 2> /dev/null > /dev/null
tc qdisc del dev ifb0 ingress 2> /dev/null > /dev/null
tc qdisc add dev ppp0 handle ffff: ingress
tc filter add dev ppp0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0
tc qdisc add dev ifb0 root handle 1:0 htb default 11
tc class add dev ifb0 parent 1:0 classid 1:1 htb rate 160kbps
tc class add dev ifb0 parent 1:1 classid 1:11 htb rate 1kbps ceil 160kbps prio 5
tc qdisc add dev ifb0 parent 1:11 handle 11: sfq perturb 10
tc class add dev ifb0 parent 1:1 classid 1:10 htb rate 100kbps ceil 160kbps prio 0
tc qdisc add dev ifb0 parent 1:10 handle 10: sfq perturb 10
tc filter add dev ifb0 parent 1:0 protocol ip prio 0 u32 match ip sport 21 0xffff flowid 1:10
tc filter add dev ifb0 parent 1:0 protocol ip prio 0 u32 match ip sport 22 0xffff flowid 1:10
tc filter add dev ifb0 parent 1:0 protocol ip prio 0 u32 match ip sport 53 0xffff flowid 1:10
tc filter add dev ifb0 parent 1:0 protocol ip prio 0 u32 match ip sport 80 0xffff flowid 1:10
tc filter add dev ifb0 parent 1:0 protocol ip prio 0 u32 match ip sport 443 0xffff flowid 1:10
Скачивание торрентов в консоли
Используем aria2c. Смотрим, какие файлы есть в раздаче: