PRIMAS4UNO

Установка TorrentMonitor на Synology XPEnology DSM 5.2

Recommended Posts

TorrentMonitor это система слежения за трекерами, которая автоматизирует процесс скачивания торрент-файлов.

 

Это значит что TorrentMonitor позволит загружать Ваши любимые сериалы на NAS автоматически, без особых усилий и сразу в момент их публикации. Принцип Один раз настроил и забыл. Аналог CouchPotato для русских трекеров.

 

Публикации:

http://habrahabr.ru/post/210548/

http://habrahabr.ru/post/157319/

Сайт http://blog.korphome.ru/torrentmonitor/

 

Версии софта: DSM 5.2-5592 Update 4. ; TorrentMonitor v. 1.2.8 . Дело было в декабре 2015.

Дисклаймер: [spoiler=]существует множество способов установки TorrentMonitor на DSM. Этот мануал не претендует на оригинальность, исчерпывающее объяснения и даже на работоспособность :smile:. Основная идея это сделать все по максимуму из графической оболочки DSM.

 

0. Устанавливаем пакеты phpMyAdmin, PHP PEAR, MariaDB.

1. С помощью Панели управления включаем Web Station и личные веб-сайты.

3390_900.png

2. Для проверки можем перейти в браузере http://IP_ВАШЕГО_SYNOLOGY/ и любуемся на заглушку. Теперь лезем в папку \web где лежит заглушка от Synology index.html, добавляем её название BAK, что бы она нам не мешала.

926_900.png

3. Скачиваем актуальную версию TorrentMonitor ( http://korphome.ru/torrent_monitor/tm-latest.zip ). Для этого можем использовать Download Station в самой Synology.

1029_900.png

4. Распаковываем и копируем содержимое \tm-latest.zip\TorrentMonitor-master на Synology в \web (этот каталог DSM должен был создать автоматом). Это можно сделать с помощью File Station сначала извлечь tm-latest.zip, а потом переместить в его содержание в папку \web .

1407_900.png

1760_900.png

5. Теперь займемся базой данных. Мы переместили ее исходник на Synology в каталог \web\db_schema . Нам нужно переименовать файл sqlite.sql в tm.sqlite .

Это можно сделать из File Station самой Synology.

 

УПС! Мануал дополнен. Альтернативный путь с MySQL и с Postgres пока без картинок [spoiler=]У многих Синоводов не работает . Если не сработало:

 

1. Проверьте права. Группа http должна иметь права читать и писать везде в каталоге web

 

 

2. Поменяйте базу данных SQLite tm.sqlite на другую. Соотвественно закомментировать/раскомментировать в config.php. Два рабочих рецепта от пользователей.

 

2.1.1 с MySQL через PHPMyAdmin от Sepro

Зашел в PHPMyAdmin (root пароль по умолчанию пустой) и создал пустую бд.

потом сделал импорт. в конфиге раскомментил строки для mysql, порт не менял, поменял только название бд, логин и пароль.

 

2.1.2 с MySQL через PHPMyAdmin от kms

Устанавливаем пакет phpMyadmin, запускаем. По умолчанию логин root, пароль пустой.

Выбираем сверху "Пользователи" потом "Добавить пользователя".

Имя пользователя - torrentmonitor

Хост - Локальный

Пароль - torrentmonitor

Подтверждение - torrentmonitor

Ставим галочку на - Создать базу данных с таким же именем и предоставить на неё все привилегии.

Ставим галочку на - Глобальные привилегии Отметить все

Жмем кнопку Вперед

Для проверки что все нормально выходим из phpMyadmin и логинимся уже под пользователем torrentmonitor

Если все нормально то выбираем слева созданную базу torrentmonitor, жмем "Импорт", выбираем базу mysql.sql, жмем Вперед....

И в принципе все.

PS: Возможно и не нужно выставлять все привилегии а выбрать только те что нужны, но я в этом не разбираюсь и выбрал все.

Без этого доступа к базе не было. Так что если кто прояснит этот пункт буду благодарен.

 

2.2 с Postgres от tsygam, через консоль(SSH). В последней команде конечно нужно путь до базы свой указать.

Пример после распаковки в /volume2/Web/TorrentMonitor

DS> /usr/syno/pgsql/bin/createuser -P torrentmonitor -U postgres

DS> /usr/syno/pgsql/bin/createdb -O torrentmonitor torrentmonitor -h localhost -U postgres

DS> cat /volume2/Web/TorrentMonitor/db_schema/postgresql.sql | psql -h localhost torrentmonitor torrentmonitor

 

 

2034_900.png

6. Аналогично переименовываем config.php.example в config.php . Исходник этого файла лежит на Synology \web\config.php.example .

2155_900.png

7. Нам нужно внести изменения в свеже переименнованый config.php . Открываем его в Текстовом редакторе Synology. Там мы раскомментируем строки для SQLite и правим путь к базе данных. Для этого убираем решетки # с начала двух строк.

Теперь нам нужно указать абсолютный путь до базы данных. Его можно посмотреть в свойствах tm.sqlite .

2527_900.png

2597_900.png

2884_900.png

8. Момент истины переходим в браузере http://IP_ВАШЕГО_SYNOLOGY/

3075_900.png

Если что-то не взлетело сразу, то перезагружаем Synology и чистим кэш браузера.

 

9. Радуемся и идем настраивать расписание запуска.

Скрипт запуска с логгирование ошибок /usr/bin/php -q /volume1/web/engine.php >> /volume1/web/torrent_monitor_error.log 2>&1 . Скормить его cron можно через Панель управления, Планировщик задач. Нужно создать новую задачу и настроить в ней скрипт и расписание.

 

5593_900.png

 

Если TorrentMonitor встал, то переходим к установке Transmission и прокси.

 

Если что-то не взлетело сразу, то перезагружаем Synology и чистим кэш браузера.

 

10. Устанавливаем с помощью Центра пакетов transmission . В стандартном репозитарии его нет поэтому подключаем репозитарий сообщества synocommunity http://packages.synocommunity.com/ . Нужно разрешить установку пакетов выпущенных Любым разработчиком. Внутренний параноик говорит, что возможно хватит доверенных разработчиков и по завершению установки эту настройку нужно вернуть.

 

4432_900.png

4709_900.png

5988_800.png

 

11. В принципе можно использовать публичные прокси. Список можно посмотреть https://hideme.ru/proxy-list/ . Однако если на Synology у вас есть Docker и 35 мегабайт памяти... Устанавливаем Docker. Ищем в реестре toronsyno, качаем и устанавливаем. В общем единственная настройка проброс порта 9150.

6233_800.png

3755_800.png

3905_600.png

 

 

12. Тонкая настройка.

Если у вас 5 раздач и все работает, как часы, не спешите радоваться, как слоны и добавлять 30+ раздач и заворачивать их в toronsyno, а лезьте в консоль править в файле php.ini параметр max_execution_time. Мы должны привести его к такому виду max_execution_time = 300.

Это можно сделать разными способами (перед всеми лучше сделать бекап файла, но мы это опустим). В частности из под Win с помошью WinSCP, из консоли с помощью MC, через консоль командами. Файл должен быть в etc/php/php.ini или в /usr/syno/etc/php.ini

Учитывая что встроенный редактор vi, а не nano. То мне проще поставить из репозитария сообщества MC.

Рассмотрим из консоли MC:

NAS> cd /etc/php

NAS> mc

радуемся синеньким окошкам :smile:

Выбираем файл php.ini (правая кнопка мыши) и правим его Edit (внизу окна мышкой тыкаем в Edit)

Находим строчку max_execution_time = и акккуратно меняем значение на 300.

внизу окна мышкой тыкаем в Save и потом в Quit

Перезагружаем NAS, радуемся.

 

P.S.: Работать в браузере и использовать DSM не обязательно. Все можно сделать из под Windows, если у вас настроена Samba на Synology. Под Windows может пригодится putty http://www.chiark.greenend.org.uk/~sgta ... nload.html и Notepad++ https://notepad-plus-plus.org/), а может и не пригодится. Если проводник Windows настроен так, что при изменении имени не дает менять расширение, то можно открыть файл в Notepad ++ и оттуда Сохранить как под новым именем. Править файлы рекомендую в Notepad++ .

 

Attention! В зависимости от структуры и настроек вашей сети и DSM, есть вариант, что сервис будет торчать в Интернет. Сами решайте плюс это или минус.

 

Спасибо ElizarovEugene (KorP) и др. создателям TorrentMonitor за софт, и leshkakrash, 2gusia за мануалы.

P.S.: отписывайтесь плиз завелось или нет.

Edited by Guest

Share this post


Link to post
Share on other sites

Лучше использовать mysql, c sqlite возникнут проблемы при обновлении, я за 2 года использования обновлял его кучу раз.

Share this post


Link to post
Share on other sites

Я еще DSM не обновлял поэтому прибываю в блаженном неведении. Я честно говоря даже до конца не определился буду ли я XPEnology вообще обновлять... sqlite показалось просто проще настроить для TM. Пробовал делать пользователя torrentmonitor с личным сайтом /synoIP/~torrentmonitor там пришлось mysql и вообще брать бубен побольше. Как именно ломалось при обновлении с sqlite?

Share this post


Link to post
Share on other sites

Я имел в виду обновление самого TorrentMonitor, обновления и дополнения выходят довольно часто. Как будет происходить обновление базы данных?

Share this post


Link to post
Share on other sites

Одно обновление прошло гладко. Сейчас есть автообновление. Может быть была болезнь роста...

Share this post


Link to post
Share on other sites

Всегда пожалуйста. Если у кого-то не завелось пишите, подумаем чем помочь. У кого-нибудь через публичный прокси работает?

Share this post


Link to post
Share on other sites

Сделал все точно как выше написано, не завелось. Не могу понять почему, может быть https мешает?

Share this post


Link to post
Share on other sites

Давайте попробуем разобраться. Я так понимаю что на 8 пункте застряли? IP адрес у Synology постоянный? Заглушка Synology работала? (2 пункт). Перезагружать Synology и заходить с др. браузера пробовали? Как браузер ругается при попытки открыть? По поводу https у меня заходит и так и так, но система сильно юзанная и может из коробки это не норма. Пример для адреса Synology http://192.168.1.3 или https://192.168.1.3 . При https ругается на сертификат, но под принуждением заходит.

Share this post


Link to post
Share on other sites
Лучше использовать mysql, c sqlite возникнут проблемы при обновлении, я за 2 года использования обновлял его кучу раз.

 

а почему не postgresql который уже есть в DSM? у меня взлетело легко.

 

ps: спрашиваю т.к. не знаю, а не чтобы поспорить.

Share this post


Link to post
Share on other sites
Лучше использовать mysql, c sqlite возникнут проблемы при обновлении, я за 2 года использования обновлял его кучу раз.

 

а почему не postgresql который уже есть в DSM? у меня взлетело легко.

 

ps: спрашиваю т.к. не знаю, а не чтобы поспорить.

 

Расшифруйте плиз. У вас по этому мануалами с картинками завелось? Базу данных какую использовали?

Share this post


Link to post
Share on other sites

Отпишитесь пожалуйста если у кого нибудь взлетит (?взлетело) по инструкции с картинками. Если не взлетело тем более отпишитесь. А то есть товарищи у которых не работает, мне понять это проблема в инструкции или косяки DSM у отдельных товарищей.

Share this post


Link to post
Share on other sites

c SQLLite не влетело. Забыл какая ошибка, но у вас на форуме она обсуждалась - не создавалась база.

 

с Postgres, после распаковки в /volume2/Web/TorrentMonitor :

 

DS> /usr/syno/pgsql/bin/createuser -P torrentmonitor -U postgres

DS> /usr/syno/pgsql/bin/createdb -O torrentmonitor torrentmonitor -h localhost -U postgres

DS> cat /volume2/Web/TorrentMonitor/db_schema/postgresql.sql | psql -h localhost torrentmonitor torrentmonitor

 

все взлетело.

Share this post


Link to post
Share on other sites

По поводу того что не влетело...

Айпи у дсм статика. Заглушка работала, проверил. После всего выше описанного перезагружался. Как результат: Просто не пустая страница. Захожу по айпи как 192.168.1.5 а в ответ тишина. И хттп в начале адреса прописывал, тишина. С другого браузера то же самое, с планшета и телефона тоже. Такое ощущение что косяк с правами на файлы.

Кстати, пробовал в адресе прописывать адрес на конкретные пхп файлы, но реакция нулевая. С работы приеду, буду еще копать, вещь хорошая, надеюсь что все заработает)

P.S. базу на чем запускали и как? Или не надо ничего помимо инструкции? Скачивать и настраивать для бд надо что?

Share this post


Link to post
Share on other sites

базу на чем запускали и как? Или не надо ничего помимо инструкции? Скачивать и настраивать для бд надо что?

 

У меня система сильно юзанная. Проблема в том что TM у меня стоял. Я его для проверки мануала аккуратно сбекапил, перед публикацией на форуме по инструкции чистенький ТorrentMonitor для проверки поставил. Но поддержка БД и все права на папку WEB у меня уже могли быть из предыдущих опытов с XPEnology.

 

Однако специально для SQLite вроде нечего не ставил.

 

У кого с БД проблемы так обычно ругань типа:

Fatal error: Call to a member function bindParam() on a non-object in /volume1/web/class/Database.class.php on line 86

или вариации не на Synology:

Fatal error: Call to a member function prepare() on a non-object in /var/www/html/torrentmonitor/class/Database.class.php on line 67

Edited by Guest

Share this post


Link to post
Share on other sites

У меня TorrentMonitor стоит очень давно, но я точно помню, что при установке приходилось менять права вручную. Как только появится возможность залогиниться в веб интерфейс, там есть функция теста, результаты подскажут на какие файлы права не правильно установлены.

Единственное я делал отдельную папку в web для torrentmonitor. А базу использовал mysql, для удобства есть phpMyAdmin

Edited by Guest

Share this post


Link to post
Share on other sites

Делал по инструкции, вылезает такая ошибка :

Fatal error: Call to a member function bindParam() on a non-object in /volume1/web/class/Database.class.php on line 86

Подозреваю, что sqllite нужно как то ставить дополнительно, но в центре пакетов нужного не нашел, мб плохо искал...

Share this post


Link to post
Share on other sites
У меня TorrentMonitor стоит очень давно, но я точно помню, что при установке приходилось менять права вручную. Как только появится возможность залогиниться в веб интерфейс, там есть функция теста, результаты подскажут на какие файлы права не правильно установлены.

Единственное я делал отдельную папку в web для torrentmonitor. А базу использовал mysql, для удобства есть phpMyAdmin

 

У меня даже морды логина нету. Просто чистая белая страница

Share this post


Link to post
Share on other sites

выполни и покажи как сейчас выставлены права

ls -la /volume1/web/torrentmonitor/

Share this post


Link to post
Share on other sites
Делал по инструкции, вылезает такая ошибка :

Fatal error: Call to a member function bindParam() on a non-object in /volume1/web/class/Database.class.php on line 86

Подозреваю, что sqllite нужно как то ставить дополнительно, но в центре пакетов нужного не нашел, мб плохо искал...

 

Хм... Должен признаться, что я не волшебник, я просто палочку с гуглом нашел. Поэтому грамотного и точного ответа я дать немогу.

У меня просьба. Давайте, перед тем как попробовать другую базу данных попробуем проверить права доступа на tm.sqlite . Я как ненастоящий Линуксоид прошу показать скриншот прав на файл базы web/db_schema/tm.sqlite.

7010_900.png

Share this post


Link to post
Share on other sites

Что касается файла tm.sqlite

6f65033b5c7fba9bded9a767a6b20657.png

 

А точно нужно включать "Личный сайт"? а то там в описании про папку www говорится...

 

Бред какой-то. Все удалил, выключил web, перезагрузился. Включил, скопировал все по новой, переименовал бд, поправил конфиг. Ноль реакции! Просто белая страничка и ничего, даже ошибки нет

Edited by Guest

Share this post


Link to post
Share on other sites
Что касается файла tm.sqlite

6f65033b5c7fba9bded9a767a6b20657.png

 

А точно нужно включать "Личный сайт"? а то там в описании про папку www говорится...

 

Работать должно без "Личного сайта". Хотя вреда от него не будет. Не вижу где советуют его включить.

Если я правильно понимаю, то у вас по скриншоту получается что группа http отвечающая за web службы в Synology писать в Базу данных не может. А надо что бы могла...

Share this post


Link to post
Share on other sites
Что касается файла tm.sqlite

6f65033b5c7fba9bded9a767a6b20657.png

 

А точно нужно включать "Личный сайт"? а то там в описании про папку www говорится...

 

Работать должно без "Личного сайта". Хотя вреда от него не будет. Не вижу где советуют его включить.

Если я правильно понимаю, то у вас по скриншоту получается что группа http отвечающая за web службы в Synology писать в Базу данных не может. А надо что бы могла...

 

Есть там про личный сайт, но не отмечено на скрине

Сейчас без него пробовал и ничего. Что касательно прав к дб: тогда бы морда появилась бы, а дальше ошибки связанные с бд были. У меня же вообще ничего

 

UPD: поправил права, выставил доступ к бд, реакция та же: пустая страница. На заглушку выходит без проблем, а вот просто на synology_ip пустая страница

Share this post


Link to post
Share on other sites
а PHP включен?

и проверь PHP extension

 

Сейчас поковырялся, не знаю почему, но: удалил все файлы, разархивировал в /web/tm и после этого появилась ошибка: Error!: open_basedir prohibits opening /volume1/homes/ххх/www/tm/db_schema/tm.sqlite

 

Понимаю что надо в сторону пхп писать, но не могу понять куда? в extensions что нужно убрать/добавить?

Share this post


Link to post
Share on other sites