Transmission daemon windows что это
Многопользовательская торрент-качалка на transmission
Введение, для тех, кто не знаком с тем, что такое transmission-daemon
Одним из распространенных торрент-демонов является transmission-daemon. Для него есть множество GUI-клиентов для разных платформ, которые работают по http и могут подключаться к качалке удаленно, что очень удобно. Использование такого клиента для пользователя не будет отличатся от обычных торрент-клиентов, при этом если клиент закрыть, скачивание/раздача не прекращается, а продолжается на удаленной машине-сервере. Так же у transmission-daemon есть свой «стандартный» web-интерфейс.
Проблема:
И все было бы хорошо, но transmission-daemon хоть и предусматривает авторизацию, но только для одного пользователя. Поэтому если Вы захотите, что бы вашей торрент-качалкой пользовался кто-то еще кроме Вас, то прийдется делить один аккаунт — вы оба сможете просматривать и управлять закачками друг друга, что не очень удобно.
Способ решения
Самым очевидным простым и элегантным, на мой взгляд, решением является запуск transnmission одновременно от разных пользователей. В данном случае в качестве ОС применяется Ubuntu Server 12.10, поэтому можно создать отдельный Upstart User Job для каждого пользователя. Для других дистрибутивов вместо этого можно просто создать init.d скрипты.
Решение
Подготовим систему:
установим transmission-daemon:
sudo apt-get install transmission-daemon
Разрешим выполнение пользовательских демонов или User Jobs, для этого нужно заменить файл «/etc/dbus-1/system.d/Upstart.conf», предварительно сделав бекап старого.
sudo mv /etc/dbus-1/system.d/Upstart.conf /etc/dbus-1/system.d/Upstart.conf.save
новый файл /etc/dbus-1/system.d/Upstart.conf:
Дальше стоит выключить стандартный demon, который запускается от рута при старте системы:
Настройка конкретного пользователя:
создаем Upstart User Job
Логинимся под очередным юзером, который будет использовать transmission-daemon и выполняем скрипт:
Скрипт создаст файл
Настраиваем env user-demona:
Создаем файл настроек торрент-клиента
Не забудьте заменить pass=»*****» на свой пароль. После первого запуска transmission сам скроет пароль хешем — в открытом виде не хранит.
/downloads/incomplete, а готовые — в
и еще, наверное, желательно что бы если юзер сделал логаут — демон продолжал крутиться:
mv «$HOME/.ecryptfs/auto-umount» «$HOME/.ecryptfs/_auto-umount»
По желанию можно также сделать проксирование через nginx/apache что бы разные пользователи могли заходить на интерфейс через разные домены, например.
Торрент-клиент Transmission наконец-то вышел под Windows
Один из самых популярных торрент-клиентов Transmission спустя много лет всё-таки вышел под Windows. «У пользователей Windows в конце концов появился хороший BitTorrent-клиент», — пишет TechCrunch, намекая на деградацию uTorrent в последних версиях.
Дистрибутивы Transmission 2.92 для 32-битной и 64-битной Windows уже появились в официальном депозитории (в самом низу), наряду со стандартными версиями для Linux и OS X, хотя официально о выходе пока не объявлено.
При установке вместе со стандартным Qt-клиентом предлагается поставить демон Transmission, утилиты командной строки и веб-интерфейс, чтобы управлять клиентом через браузер или удалённо с другого компьютера.
По функциональности Transmission не уступает uTorrent. Например, здесь тоже есть планировщик с ограничением скорости по дням недели и по часам. Есть чёрный список для блокировки подключения указанных узлов. Можно сконфигурировать клиент для отслеживания определённых папок на появление новых торрент-файлов, устанавливать правила шифрования, добавлять/удалять трекеры для конкретных торрентов.
Нужно заметить, что кроме официальной версии, существует неофициальный клиент Transmission-QT.
Интерфейс Transmission для Windows предельно простой. И главное, что здесь нет рекламы.
UPD 29.03. По многочисленным просьбам открываем новое голосование с бóльшим количеством вариантов ответа.
Transmission-daemon
Содержание
Основное отличие данной программы от Transmission заключается в том, что это демон, а значит работает в фоне и всегда.
Установка
Настройка
Главный минус работы с ненастроенным transmission-daemon- это невозможно им управлять, потому что по умолчанию к нему нельзя подключаться web интерфейсом или сторонними программами. При настройке необходимо помнить, что конфигурационный файл нельзя менять, пока служба transmission-daemon работает, потому что при остановке он восстановит его первоначальное (которое было при запуске) состояние и все ваши старания накроются медным тазом. Поэтому ВСЕГДА перед началом настройки необходимо остановить службу
Наведение «марафета»
Переносим папку с основными файлами в домашнюю папку пользователя
И в строке CONFIG_DIR прописываем путь до папки с файлами настройки.
Принуждаем работать службу от нашего пользователя:
если используется init.d
Меняем setuid (NAME) debian-transmission и setgid (USER) debian-transmission на имя своего пользователя.
если используется systemd
Меняем значение переменной User за свое
затем делаем перезагрузку юнитов
Настройка settings.json
Пример файла с настройками
В полях rpc-username и rpc-password задается логин и пароль соответственно, а так же в поле rpc-whitelist дописываем свой внешний IP если есть, чтобы получить доступ к Transmission на сервере. Если у Вас динамический IP, то можно отключить проверку IP. Для этого нужно в поле rpc-whitelist-enabled поставить значение false. По окончании всех настроек запускаем службу
Настройка Transmission daemon: settings.json. Описание всех настроек.
Перед внесением изменений клиент и демон должен быть закрыт и остановлен, в противном случае параметры будут возвращены в предыдущее состояние.
Поэтому всегда перед изменении настроек в файле необходимо остановить службу transmission-daemon :
В таблице представлены расположения файлов с различными настройками Transmission:
Настройки | Где находятся |
---|---|
GTK+/Qt настройки клиента | $HOME/.config/transmission |
Настройки демона | $HOME/.config/transmission-daemon |
CLI настройки | $HOME/.config/transmission-cli |
Папка загрузки по умолчанию | $HOME/Downloads |
Примерный путь расположения конфигурационного файла settings.json :
В данном файле находится множество настроек:
jch/software/bittorrent/tcp-congestion-control.html
По окончании всех настроек запускаем службу
Домашний Сервер: Часть 4 – Настройка Transmission daemon в контейнере LXC Proxmox-VE
Приветствую, уважаемые читатели на четвертой части цикла!
Предисловие
По аналогии с предыдущей статьей, мы установим LXC контейнер и в нем установим и настроим «торрент качалку» Transmission
Официальный сайт: transmissionbt.com
Вы спросите: «А чем не устраивает торрент на обычном ПК?»
Так вот тем, что это не удобно при работе с локальным сервером. Да, варианты есть, но если честно… такое себе.
Гораздо удобнее, когда скачивание идет сразу на сервере и более того, я могу подключаться к своей системе не только через Desktop приложение, но и через мобильное приложение.
Т.е. фактически из любого места где есть интернет. А про локальную сеть я уже молчу )
Также в моей топологии сети, при этом, не задействуется Wi-Fi, все скачивание и раздача идет по кабельному каналу. (У меня тариф 500 Мбит/сек)
Be careful! Много текста и работы с терминалом!
Установка и настройка Torrent сервиса Transmission-daemon
Процесс установки контейнера я опущу т.к. он разбирался в статье: Домашний Сервер: Часть 3 – Внутренний DNS сервис на BIND9 или свои доменные имена в локальной сети
Принцип аналогичен, разве что параметры контейнера можно немного изменить:
Memory — 2.00 GiB
DNS — 192.168.88.7, 192.168.88.1 (помним, что мы запустили свой DNS)
Самый важный момент!
Нам необходимо сохранять файлы на RAID массив, который мы создали в процессе установки и настройки основной хост системы.
Но перед этим необходимо определиться со структурой хранения данных.
Для себя я определил следующую структуру:
Далее будем следовать данной структуре.
Как можно видеть, я создал специальную папку media для хранения всей мультимедиа информации.
Настройки LXC контейнеров лежат по пути:
/etc/pve/lxc/
А там уже файлы конфигураций согласно номеру контейнера 100.conf, 101.conf и т.д.
Открываем файл настроек нашего контейнера:
Номер 100.conf это наш контейнер под DNS, а новый созданный это 101.conf
Добавляем в него такую строку:
Т.е. у нас будет доступ из контейнера в файловую систему хостовой машины через точку монтирования(mp = Mount Point), при этом нам самим не нужно ничего монтировать, система сама обо всем позаботится.
В контейнере файлы мы будем сохранять по пути /mnt/data
Вы можете указать свой путь, как вам нравится.
Я же, создал базовую папку /rpoolz/data в которой будут храниться мои файлы
Запустим контейнер и перейдем к установке и настройке Transmission уже непосредственно внутри контейнера
Проверим смонтированную папку
Создадим базовые папки
Обновим контейнер и установим transmission-daemon
Остановим сервис, для изменения настроек
Производим настройки transmission-daemon
Открываем файл настроек:
Файл настроек представлен в формате JSON, необходимо поправить ряд параметров:
Сохраняем настройки и запускаем transmission-daemon
Если видим в ответе netstat слова «transmission«, значит сервис точно запущен и работает.
На этом настройку можно считать завершенной.
Дополнительная настройка nginx для Transmission
Стандартно ставим nginx
Удаляем базовый сайт
После этого можно обращаться к transmission и rpc по доменному имени.
Теперь перейдем к средствам удаленного управления.
Удаленное управление Transmission
Transmission удобен тем, что работает на сервере в виде службы и потребляет минимум ресурсов. Также основной ПК освобождается от торрента и хранимых медиа файлов )
Для управления можно использовать утилиту для Windows x86, Windows x64, Linux x86, Linux x64, Linux на ARM6L, Linux на ARM7L, MacOS (.dmg пакет)
Для Android и iOS также существуют приложения разработанные сторонними разработчиками
Даже на мощных роутерах таких компаний как Asus иногда можно встретить Torrent качалку на базе Transmission.
Т.е. это говорит о высокой интеграции данного сервиса во все известные системы и эта кроссплатформенность дает нужное удобство.
Рассмотрим приложения на базе Windows и Android. С остальными системами полагаю будет аналогично.
Применение Transmission Remote GUI
Теперь перейдем к мобильной части…
Применение приложения на Android, iOS
Я опишу одно приложение, которым пользуюсь сам и т.к. у меня телефон на дройде, то прошу владельцев iOS не переживать. Полагаю для яблочных систем должно быть аналогично.
Оно так и называется Transmission Remote.
Чтобы не ошибиться, вот ссылка на приложение: Transmission Remote
Вот немного скриншотов
Мне достаточно зайти на нужный сайт, скачать торрент файл и запустить его выбрав это приложение. Сервер далее уже сам все сделает.
Можно спокойно закрыть приложение, по окончании скачивания придет push уведомление об окончании.
За время скачивания можно налить чаю, устроиться поудобнее и запустить кино/сериал на просмотр 🙂
Скрипты обработки торрентов для Transmission-daemon
А теперь настала пора автоматизации.
Скажите, вам ведь не хочется самостоятельно раскладывать каждый файл фильма или сериала по папкам? Если не хочется, то вы можете либо свалить все в кучу и тогда в один прекрасный день будет такая же история, как у многих с музыкой в начале 2000х 🙂
Было бы здорово, чтобы фильмы хранились с определенной иерархией. В начале статьи мы определили иерархию для хранения фильмов в 2D, в 3D и сериалов, но как заставить Transmission самостоятельно их переносить в нужные папки сразу после окончания и при этом не переставать раздавать в самой программе?
Как заставить торренты удаляться после наступления определенных условий, скажем рейтинг скачал/отдал был бы равен 2, а если рейтинг никогда не доберется до значения 2, то удалить торрент через 7 дней после добавления?
Как видим задач для автоматизации не много. Приступить к созданию автоматической обработки торрентов меня подтолкнула строка в настройках transmission-daemon
«script-torrent-done-filename»: «»
Тут мы можем указать путь к файлу, который transmission-daemon исполнит по окончании загрузки торрента, при этом он передаст скрипту некоторые переменные, чтобы в скрипте ими можно было пользоваться.
Скажу сразу, мой скрипт можно дорабатывать, возможно с некоторыми пунктами в нем вы будете не согласны, но написание красивого кода я своей целью не ставил, целью было выполнение нужных функций и скрипт с этим прекрасно справляется.
Я загрузил файлы на Github. Там вы можете скачать последние версии данных файлов.
Вот ссылка: https://github.com/GregoryGost/Transmission
Кратко опишу, какой файл, что делает:
Скрипт torrentdone.sh
Данный скрипт необходимо поместить в папку /etc/transmission-daemon
После скачивания разрешаем файл на выполнение.
Скрипт определяет, что мы скачиваем, файл или папку с файлами и переносит файл(файлы) по месту их хранения.
Из определений, есть определение сериал это или фильм. И для фильмов есть разделение 2D или 3D фильм.
Скрипт также создает все необходимые пути согласно принятой мной системе хранения.
Замечательно, фильмы и сериалы сами складываются в нужные папки, скачивание идет, мы можем удаленно управлять всем этим.
Осталось сделать так, чтобы торренты сами еще и удалялись, но конечно без удаления самого скачанного файла!
Для этого мы используем старый добрый Cron
Скрипт torrentclear
Файл необходимо положить в папку Cron /etc/cron.hourly, где он будет выполняться каждый час.
После скачивания разрешаем файл на выполнение.
Проверка каждого торрента проводится с помощью консольной утилиты transmission-remote
Вот мы и закончили с автоматизацией обработки торрентов.
Теперь торренты будут удаляться автоматически и у нас не будет болеть голова об этом. Просто добавили и все.
Ротация логов logrotate.d/transmission
Дополнительно можно автоматизировать обработку создаваемых лог файлов. Т.е. обеспечить их ротацию.
Скачиваем файл с настройками
logrotate будет следить за тем, чтобы лог файл не превышал размер 10 Mb. А если и превысит, то он создаст отдельный файл со старым логом.
А еще позже будет уже сжимать совсем старые логи в архивы.
Заключение
Что хотелось бы сказать в заключении — а сказать особо и нечего, я все постарался описать в самой статье.
С помощью функционала Proxmox я реализовал торрент качалку в LXC контейнере, в которую можно добавлять торренты по дороге домой с работы, чтобы вечером с женой/детьми/родственниками/друзьями сесть за хороший фильм или сериал.
Такое решение сильно упрощает управление скачиванием и сохранением медиа файлов. Она работает автоматически в том числе на распределение файлов по нужным папкам, чистит торренты, чтобы они не занимали ресурсы системы.
В общем и целом я считаю, что своей цели в этой статье я достиг. Буду ждать от вас интересных идей для развития данной системы, в особенности скриптов по автоматизации 😉
Ну и конечно делитесь своими фишками, хаками, способами использования Transmission в комментариях!
Благодарю за ваше время!
Всего хорошего на просторах Интернета 😉
UPD 21.03.2020:
Изменен раздел «Скрипты обработки торрентов для Transmission-daemon» т.к. были обновлены скрипты.
- Translator что это за программа
- transmission windows 10 что это