пятница, 14 января 2011 г.

Устанавливаем torrent клиент transmission

Основным вопросом устанавливающих дополнительное програмное обеспечение на роутер является "Как прикрутить торрент клиент на роутер?"  Давайте попробуем это сделать. Мы уже подключили флешку (жесткий диск к роутеру) , установили поддержку OPKG, подмонтировали третьей раздел нашей флешки к папке /mnt/share/media/  и создали самба шару этой папки, дело осталось за малым - установить transmission











Подключаемся к роутеру с помощью putty и набираем
opkg update
opkg install transmission-web


после этого запускаем transmission-daemon чтобы создались первоначальные конфигурационные файлы:
transmission-daemon
ждем десять секунд и потом
killall transmission-daemon
удаляем автоматически созданный файл настроек
rm /mnt/root/.config/transmission-daemon/settings.json
и создаем свой файл
nano /mnt/root/.config/transmission-daemon/settings.json
примерно с таким содержимым:
{
"download-dir": "\/mnt\/share\/media",
"peer-port": 51413,
"port-forwarding-enabled": 0,
"download-limit": 500,
"download-limit-enabled": 1,
"upload-limit": 500,
"upload-limit-enabled": 1,
"encryption": 1,
"max-peers-global": 120,
"peer-limit-per-torrent": 30,
"rpc-port": 9091,
"rpc-whitelist": "192.168.1.*",
"rpc-whitelist-enabled": 1,
"rpc-authentication-required": 1,
"rpc-username": "username",
"rpc-password": "pass"
}

в нем выделены красным имя и пароль пользователя для доступа к вебинтерфейсу transmission, их  замените на любые, которые придумаете. Про значения переменных в файле settings.json можно почитать тут


Кратко расшифрую  некоторые из параметров, используемые в нашем примере:
peer-port - какой будет порт для входящих соединений
download-limit/upload-limit- ограничение скорости загрузки и раздачи, измеряется в KB/s
encryption - 0 = отключить, 1 = включить шифрование трафика. 2 = использовать только шифрованные соединения.  Если заметите очень большая загрузка процессора роутера, измените на 0.
max-peers-global - максимально разрешенное количество подключаемых пиров
peer-limit-per-torrent - то же самое, но для 1 торрента
rpc-port - порт, на котором будет доступен вебинтерфейс transmission
rpc-whitelist - айпишники, для которых он будет доступен
rpc-username/rpc-password - имя пользователя и пароль для вебморды
так же обратите внимание на переменную preallocation, выставление ее в 0 хоть и повысит фраментацию записываемого файла, но тоже скорее всего уменьшит нагрузку на процессор роутера



теперь давайте посмотрим как выглядит веб интерфейс transmission . Cначала укажем к нему путь
export TRANSMISSION_WEB_HOME='/opt/usr/share/transmission/web/'
теперь запускаем transmission
transmission-daemon -g /mnt/root/.config/transmission-daemon/
открываем браузер и открываем веб страницу по этой ссылке http://192.168.1.1:9091
веб страница сначала запросит имя пользователя и пароль (их мы придумывали сами и добавляли в /mnt/root/.config/transmission-daemon/settings.json )
и после их правильного ввода мы увидим веб-морду transmission
теперь осталось создать скрипт автозагрузки transmission
nano /opt/etc/init.d/S80transmission
такого содержания
source /mnt/root/.profile
killall transmission-daemon
sleep 2
transmission-daemon -g /mnt/root/.config/transmission-daemon/

и сделать его испольняемым
chmod a+x /opt/etc/init.d/S80transmission
и добавить одну строку  в /mnt/root/.profile чтобы transmission  пссле перезапуска роутера знала где искать свой вебинтерфейс
nano /mnt/root/.profile
и добавляем туда такую строку
export TRANSMISSION_WEB_HOME='/opt/usr/share/transmission/web/'

Открываем порт  51413  для входящих подключений.
Заходим в вебморду роутера , на страницу Administration/Commands , вводим в окошке  Command Shell/Commands вот такую строчку
iptables -I INPUT  -p tcp --dport 51413 -j ACCEPT
и после этого  нажимаем кнопочку Save Firewall

Вебинтерфейс у transmission не слишком удобный и наглядный,   упростить работу с этим торрент клиентом нам поможет  transmisson-remote-gui


Скачиваем версию для своей операционной системы, устанавливаем у себя на компьютере и запускаем, при первом запуске появится окошко настройки параметров
заполняем
узел - локальный айпишник нашего роутера - 192.168.1.1
порт - порт на котором доступна вебморда  transmission, в нашем случае 9091
пользователь - имя, которое мы придумали для доступа к вебинтерфейсу transmission, в нашем примере - username
пароль - пароль , который мы придумали для доступа к вебинтерфейсу transmission, в нашем примере - pass
нажимаем кнопку ОК, после загрузки дополнительных модулей расширения, transmisson-remote-gui готов к использованию

11 комментариев:

  1. внесены небольшие исправления, в связи с тем что был создан пост про использовании самбы, ссылка на папку под скачивамые торренты в settings.json изменена с /mnt/share/torrents на /mnt/share/media

    ОтветитьУдалить
  2. У вас какой провайдер? Какова скорость скачивания торрентов клиентом transmisson на usb-накопитель? А на компьютер? Скорость локалки и смогли ли настроить?

    ОтветитьУдалить
  3. Павел
    Скорость скачивания установленной transmission на USB накопитель у меня максимум 1.2 - 1.5 мегабайта в секунду, при этом начинает тормозить веб-интерфейс роутера и даже консоль... Но во первых я не пробывал сильно разбиратся в настройках transmission, а во вторых у меня флешка, хоть и довольно быстрая но.. Cкорость записи на самба шару на ней - 2-4 мегабайта в секунду, скорость чтения - 12-14. Так что есть подозрения что лишние тормоза еще и из-за нее.

    ОтветитьУдалить
  4. Есть альтернативное мнение, говорящее о общей нецелесообразности dd-wrt в России:
    "Насчёт низких скоростей DD-WRT. Я конечно не шибко разбираюсь в никсах, и DD-WRT недавно пользую, так что на роль эксперта не претендую. В DD-WRT не реализован accel-pptp, и не будет реализован. Насколько я понял, такова позиция авторов. Просто ввиду нецелесообразности и малораспространённости VPN-подключений у буржуинов. При подключении с PPTP или L2TP, ресурсы жрутся только так. accel-pptp позволяет существенно разгрузить тот же процессор. В томате и других прошивках он реализован, насколько я знаю.
    К примеру я в сижу через VPN с PPTP, и на DD-WRT даже без всяких трансмишшенов, если запустить несколько раз speedtest.net или тупо прокачать большой файл пару раз, то в течении нескольких минут скорость падает с 14мбит до 3мбит, и уже не восстанавливается пока не ребутнёшь роутер. В прошивке от mirwifi.org(у меня linksys wrt610n v1), никаких проблем нет. Там accel-pptp встроен.
    Да, transmission грузит роутер, но не настолько. Потом, там в пакетах вроде были ещё другие клиенты."

    ОтветитьУдалить
  5. Павел - wrt610n насколько я помню на бродкоме, под бродком несколько другая ситуация с альтернативными прошивками.. Помидор, прошивка последователей Олега, опять же DD-WRT и Openwrt.. + несколько репозитариев под эту платформу, а не один openwrtшный как под Atheros.. Так что у Вас есть возможность выбора.. под Atheros же есть только Openwrt/DD-WRT, правда на Atherosе например гораздо грамотнее реализован USB порт, и скоростью чтения 15 мегабайт в секунду с прицепленного к роутеру диска никого не удивишь, а на броадкоме насколько я в курсе 5 мегабайт в секунду это вообще супер результат

    ОтветитьУдалить
  6. Ещё одну неутешительную вещь в инете обнаружил - скорость usb порта просто ужасная! Запись от силы 2-3 мбайта даже через Гбитный ethernet на родной прошивке! DD-WRT ничего не меняет?

    ОтветитьУдалить
  7. Этот комментарий был удален автором.

    ОтветитьУдалить
  8. затык на шаге запуска transmission-daemon
    судя по тому, что потом killall не находит, что убивать, он тупо не стратует...
    есть варианты?

    ОтветитьУдалить
  9. Драсьте, при попытке запуска transmission-demon'a выводит ошибку 'Segmentation fault'.Что это может быть?

    ОтветитьУдалить
  10. Подскажите, почему при перезапуске роутера не стратует Transmission? Он установлен, из консоли запускается transmission-daemon. В init.d есть скрипт S80transmission, но при его запуске ругается Permission denied. cmod a+x сделал. Что может быть не так?

    ОтветитьУдалить
  11. как установить torrent на NetGear WNDRMAC-100RUS?

    ОтветитьУдалить