Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Автоматизация торрент-качалки  (Прочитано 5738 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Uzul

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
    • Личный секретарь
Автоматизация торрент-качалки
« : 12 Ноября 2009, 13:22:03 »
Доброго времени суток!
Безлимитный интернет привил устойчивую любовь к торрентам, вплоть до того, что некоторое время назад даже собрал отдельную машину для этих целей (атом одноядерный, гиг памяти и 1 тб винта, все в miniITX-корпусе). Дома небольшая локалка на wifi-роутере, торрент-качалка работает круглосуточно, одновременно являясь и файлохранилищем, доступным для всех компьютеров домашней сети. Пока что под управлением оффтопика хр, все закачки ставил вручную через удаленку, что не очень удобно.
Задача - максимально автоматизировать процесс постановки торрентов на закачку, сведя к минимуму необходимость личного участия в жизни сервера. В том числе - постановка торентов на закачку извне локальной сети (удаленно из тырнета). Идея решения - у родного transmission обнаружена любопытная настройка - автоматом запускать закачки .torrent-файлов из указанной папки. У pidgin'а есть встречное свойство в виде плагина - автоматически закачивать получаемые по аське (и не только) файлы в указанную папку. Получается эдакая цепочка - будучи где угодно, я могу кинуть в аську своему торрент-серверу .torrent, он автоматом закачивается в заранее указанную папку, тут же трансмишн автоматом из этой папки запускает качаться данный торрент.
Схема не очень прямая, но не требующая никаких дополнительных средств. Тут надо заметить, что интернет у меня без статического ИП, поэтому приходится вот так изворачиваться, напрмую вэб-морду торрента не вывесить потомучто.
Пока застрял на плагине пиджина - как будто его и нету - упорно показывает диалог сохранения присылаемого файла, не хочет автоматом качать. Ubuntu 9.10, пиджин - из родного репозитория.
Прошу подсказать, что не так с плагином, может кто сталкивался. И что не так со мной :) - если придуманная схема слишком мудреная и существуют куда более эффективные способы решения поставленной задачи.
Ведь совсем неважно, от чего помрешь,
Ведь куда важнее, для чего родился.
<А. Башлачев>

akuma404

  • Гость
Re: Автоматизация торрент-качалки
« Ответ #1 : 12 Ноября 2009, 13:34:24 »

Оффлайн yatirann

  • Активист
  • *
  • Сообщений: 497
    • Просмотр профиля
Re: Автоматизация торрент-качалки
« Ответ #2 : 12 Ноября 2009, 15:19:51 »
а почему бы не расшарить папку на нас-сервере с возможностью изменения файлов и кидать торрент-файлы туда напрямую? ???
be bamboocho

Оффлайн Flay13

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Автоматизация торрент-качалки
« Ответ #3 : 13 Ноября 2009, 00:19:56 »
А если подсоединить репозитории Пиждина родные и не убунтовые? Там версия самого Пиджина гораздо свежее, думаю что и плагина тоже
Ubuntu 9.04 x86 desktop, Ubuntu 8.04.03 Server

Оффлайн Uzul

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
    • Личный секретарь
Re: Автоматизация торрент-качалки
« Ответ #4 : 13 Ноября 2009, 11:24:06 »
https://www.dyndns.com/
http://jabberworld.info/%D0%A0%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8
это избавит от динамичности ипа.сможешь спокойно повесить веб морду
Спасибо, любопытный вариант, попробую. Хотя он менее автоматизированный - все-таки руками надо ставить закачки. Но тоже вариант.


а почему бы не расшарить папку на нас-сервере с возможностью изменения файлов и кидать торрент-файлы туда напрямую? ???
Это будет работать в локалке. А извне (интернетами) - не получится. На самом деле есть вариант пользовать фтп-ресурс (есть свой сайт, могу сделать на нем папку), но придется что-то писать для регулярной проверки содержимого этой папки на предмент .torrent-файлов. Не самое элегантное решение, пока как сильно запасной вариант.

А если подсоединить репозитории Пиждина родные и не убунтовые? Там версия самого Пиджина гораздо свежее, думаю что и плагина тоже
Попробую даже дальше пойти - качны сырцы и соберу у себя - так навернякее получится, спасибо за совет! :)

Краткий ПыСы - как и многие тут присутствующие - я человек работающий, причем довольно обильно работающий, дома бываю все больше по ночам, и там семья, то есть дома на торренты время тратить даже както неприлично. А вот на работе урвать минутку, разгрести новинки и поставить качаться - было бы самое оно. Пока что я завел аську на своем НАСе, и с работы просто кидаю туда ссылки на предстоящие закачки, потом дома удаленкой ссылки открываю и из них пускаю закачки, но это тоже время. Отсюда и вот такая идея, тем более что Линукс позволяет очень многое и малой кровью, чем меня и покорил. Но так как линуксоид-убонтолог я совсем еще юный - многие очевидные для кого-то вещи остаются для меня загадкой, приходится штурмовать интернеты, ну и в сложных случаях - обращаться за помощью - подобного решения я не нашел, и проблемы своей тоже не смог найти.
Ведь совсем неважно, от чего помрешь,
Ведь куда важнее, для чего родился.
<А. Башлачев>

Оффлайн kostryukov

  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: Автоматизация торрент-качалки
« Ответ #5 : 13 Ноября 2009, 11:36:02 »
Цитировать
На самом деле есть вариант пользовать фтп-ресурс (есть свой сайт, могу сделать на нем папку), но придется что-то писать для регулярной проверки содержимого этой папки на предмент .torrent-файлов. Не самое элегантное решение, пока как сильно запасной вариант.

ну есть incron для проверки содержимого директории
Цитировать
Идея решения - у родного transmission обнаружена любопытная настройка - автоматом запускать закачки .torrent-файлов из указанной папки. У pidgin'а есть встречное свойство в виде плагина - автоматически закачивать получаемые по аське (и не только) файлы в указанную папку. Получается эдакая цепочка - будучи где угодно, я могу кинуть в аську своему торрент-серверу .torrent, он автоматом закачивается в заранее указанную папку, тут же трансмишн автоматом из этой папки запускает качаться данный торрент.
непонятно только зачем проверять, если трансмишен проверяет?


Пользователь решил продолжить мысль 13 Ноября 2009, 11:38:43:
используйте dyndns, затем настройте и используйте фтп, скидывайте по фтп торрент файлы, трансмишн проверит папку на наличие новых торентов, добавит и закачает.
« Последнее редактирование: 13 Ноября 2009, 11:38:43 от kostrukov »
у меня можно спросить=)

Оффлайн SureGOOD

  • Активист
  • *
  • Сообщений: 724
  • suregood.ru
    • Просмотр профиля
    • suregood.ru
Re: Автоматизация торрент-качалки
« Ответ #6 : 13 Ноября 2009, 21:15:02 »
rtorrent

Оффлайн amd3000

  • Любитель
  • *
  • Сообщений: 67
    • Просмотр профиля
    • Спамчик...
Re: Автоматизация торрент-качалки
« Ответ #7 : 13 Ноября 2009, 22:32:30 »
дык у transmission уже давно присутствует веб-клиент (вариант полутьше чем rtorrent - ненужно ставить LAMP), через dynDNS настрой себе клиентское имя, например home.homeip.net, активируй веб интерфейс трансмиссии и  дай доступ по логину-паролю из всех ip адресов, и можеш спокойно подключатся к своему торрент-клиенту через браузер  
http://home.homeip.net:9091



если у тебя dsl модем или роутер нужно будет сделать проброс порта 9091 на твой сервер, порт также можна поменять...

Пользователь решил продолжить мысль 13 Ноября 2009, 20:46:15:
или еще так (чтоб примонтировать к своему ПК файловую систему сервера, и естественно работать в обычном файл-менеджере) если рабочий ПК с линухом можна попробывать схему с sftp
ставиш на сервачке open-shh server, настраиваеш dynDNS, опять же, если роутер, делаеш проброс 22 порта, и в адресной строке заходим на свой сервер sftp://home.homeip.net
« Последнее редактирование: 13 Ноября 2009, 22:50:12 от amd3000 »
Desktop: Ubuntu 8.04.3LTS // Laptop: Lubuntu 10.04

Оффлайн Uzul

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
    • Личный секретарь
Re: Автоматизация торрент-качалки
« Ответ #8 : 16 Ноября 2009, 10:29:49 »
Поставил 9.10 на сервер, все настроил, вывесил морду трансмиссии, запустил ssh, разрешил входящие vnc. Приволок домой, пробросил 9091 и 22 порты, настроил dyndns. И вот сюрприз - ни вэб-морды, ни vnc не видать, пускает только по ssh. Пока не было времени монитор-клаву-мышу подключить-посмотреть, плюс любопытно все починить руками из консоли (если это возможно). Сам сервер исправно работает, на шару пускает без проблем.
Если оно так и дальше будет капризничать - окончательо перееду сервер в консоль, буду ботать консольные торренты (rtorrent, кажется, советовали). Тем более что скорость работы vnc, мягко говоря, удручает.
Ведь совсем неважно, от чего помрешь,
Ведь куда важнее, для чего родился.
<А. Башлачев>

Оффлайн Uzul

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
    • Личный секретарь
Re: Автоматизация торрент-качалки
« Ответ #9 : 21 Ноября 2009, 12:25:22 »
Итак, окончательное решение принято, реализовано и устраивает в целом. В ходе экспериментов даже vpn через мост построил, но в конце пришел к такой конфигурации:
1. контроль работоспособности и управление сервером - через ssh, через него же - доступ к остальным компьютерам в локалке при необходимости
2. rTorrent без морды, настройка вот такая:

min_peers = 1
max_peers = 1000
max_uploads = 100
download_rate = 0
upload_rate = 0
directory = /home/uzul/downloads/
session = /home/uzul/torrents/.rtsession
schedule = watch_directory_1,5,10,"load_start=/home/uzul/torrents/comedy/*.torrent,,d.set_directory=/home/uzul/downloads/comedy"
schedule = watch_directory_2,5,10,"load_start=/home/uzul/torrents/doc/*.torrent,,d.set_directory=/home/uzul/downloads/doc"
schedule = watch_directory_3,5,10,"load_start=/home/uzul/torrents/games/*.torrent,,d.set_directory=/home/uzul/downloads/games"
schedule = watch_directory_4,5,10,"load_start=/home/uzul/torrents/kino/*.torrent,,d.set_directory=/home/uzul/downloads/kino"
schedule = watch_directory_5,5,10,"load_start=/home/uzul/torrents/mult/*.torrent,,d.set_directory=/home/uzul/downloads/mult"
schedule = watch_directory_6,5,10,"load_start=/home/uzul/torrents/music/*.torrent,,d.set_directory=/home/uzul/downloads/music"
schedule = watch_directory_7,5,10,"load_start=/home/uzul/torrents/serie/*.torrent,,d.set_directory=/home/uzul/downloads/serie"
schedule = watch_directory_8,5,10,"load_start=/home/uzul/torrents/soft/*.torrent,,d.set_directory=/home/uzul/downloads/soft"
schedule = watch_directory_9,5,10,"load_start=/home/uzul/torrents/oth/*.torrent,,d.set_directory=/home/uzul/downloads/oth"
port_range = 6881-6881
port_random = no
check_hash = yes
peer_exchange = yes
dht = auto
dht_port = 6881

Соответственно, загрузки можно сортировать еще до запуска, пока хватает девяти категорий.
3. На сервере в кроне каждые 5 минут выполняется скрипт:

#!/bin/sh
#
# get .torrents from ftp dirs & clear ftp
#
#########################################
echo "Init"
ftpserver=ftp-srv1.ru
ftpuser=srv_user
ftppassword=srv_pass
path=/home/uzul/torrents
cd $path
#########################################
echo "Get files from ftp"
echo "connect"
ftp -in $ftpserver<<_EOF_
user $ftpuser $ftppassword
passive
bin
mget comedy/*.torrent
mdel comedy/*.torrent
mget doc/*.torrent
mdel doc/*.torrent
mget games/*.torrent
mdel games/*.torrent
mget kino/*.torrent
mdel kino/*.torrent
mget mult/*.torrent
mdel mult/*.torrent
mget music/*.torrent
mdel music/*.torrent
mget oth/*.torrent
mdel oth/*.torrent
mget serie/*.torrent
mdel serie/*.torrent
mget soft/*.torrent
mdel soft/*.torrent
quit
_EOF_
#########################################
echo "Done."


4. Соответственно на любом компе втыкаю флешку, там есть каталог с такой же структурой папок, в эти папки при необходимости распределяю .torrent-файлы для загрузки, когда партия для загрузки готова - запускаю на локальном компьютере скрипт:

#!/bin/sh
#
# Put .torrents to ftp dirs & clear local
#
#########################################
echo "Init"
ftpserver=ftp-srv1.ru
ftpuser=srv_user
ftppassword=srv_pass
path=/home/uzul/torrents
#########################################
echo "Uploading files..."
echo "connect"
ftp -in $ftpserver<<_EOF_
user $ftpuser $ftppassword
passive
bin
mput comedy/*.torrent
mput doc/*.torrent
mput games/*.torrent
mput kino/*.torrent
mput mult/*.torrent
mput music/*.torrent
mput oth/*.torrent
mput serie/*.torrent
mput soft/*.torrent
quit
_EOF_
#########################################
echo "Cleaning local torrents directory..."
rm comedy/*.torrent
rm doc/*.torrent
rm games/*.torrent
rm kino/*.torrent
rm mult/*.torrent
rm music/*.torrent
rm oth/*.torrent
rm serie/*.torrent
rm soft/*.torrent
#########################################
echo "Done."

Преимущества метода - относительная простота, и в то же время автоматизация загрузок, с учетом сортировки, да и жене объяснить, куда скачать ,torrent и потом запустить какой скрипт, остальное пойдет работать само. К тому же, метод не требует прямого соединения между сервером и удаленным компом, то есть не обязательно иметь прямой ip или dyndns, не надо держать открытые порты в интернет и т.п. - относительно автономно и безопасно все. Из недостатков - полагаю, что визуально, через вэб-морду комфортнее управлять своими загрузками, да и необходимо иметь доступ к ftp-папке.

PS - между делом разобрался с автоприемом файлов в пиджине. Оказывается, недостаточно просто включить плагин. Надо для каждого пользователя правой мышкой определить поведение плагина, по-умолчанию - спрашивать, можно также автоматом отвергать и автоматом принимать. Впрочем, получившаяся схема без аськи мне больше симпатична :)
« Последнее редактирование: 23 Ноября 2009, 16:05:22 от Uzul »
Ведь совсем неважно, от чего помрешь,
Ведь куда важнее, для чего родился.
<А. Башлачев>

 

Страница сгенерирована за 0.035 секунд. Запросов: 23.