Transmission-daemon
Основное отличие данной программы от Transmission заключается в том, что это демон, а значит работает в фоне и всегда.
Установка
sudo apt-get install transmission-daemon
Настройка
Главный минус работы с ненастроенным transmission-daemon- это невозможно им управлять, потому что по умолчанию к нему нельзя подключаться web интерфейсом или сторонними программами. При настройке необходимо помнить, что конфигурационный файл нельзя менять, пока служба transmission-daemon работает, потому что при остановке он восстановит его первоначальное (которое было при запуске) состояние и все ваши старания накроются медным тазом. Поэтому ВСЕГДА перед началом настройки необходимо остановить службу
sudo service transmission-daemon stop
Наведение «марафета»
Смысл описанных ниже телодвижений — заставить службу работать от имени пользователя, а значит и создавать скачиваемые файлы, владельцем которых сразу будет наш пользователь, что убережёт нас от последующих проблем с доступом к файлам.
Переносим папку с основными файлами в домашнюю папку пользователя
sudo cp -R /etc/transmission-daemon /home/user_name/.config/ sudo chown -R user_name /home/user_name/.config/transmission-daemon
sudo gedit /etc/default/transmission-daemon
И в строке CONFIG_DIR прописываем путь до папки с файлами настройки.
CONFIG_DIR="/home/user_name/.config/transmission-daemon"
Принуждаем работать службу от нашего пользователя:
если используется init.d
sudo gedit /etc/init.d/transmission-daemon
Меняем setuid (NAME) debian-transmission и setgid (USER) debian-transmission на имя своего пользователя.
. NAME=transmission-daemon USER=debian-transmission .
если используется systemd
sudo gedit /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
Меняем значение переменной User за свое
[Service] User=my_user
затем делаем перезагрузку юнитов
sudo systemctl daemon-reload
Настройка settings.json
Пример файла с настройками
В полях rpc-username и rpc-password задается логин и пароль соответственно, а так же в поле rpc-whitelist дописываем свой внешний IP если есть, чтобы получить доступ к Transmission на сервере. Если у Вас динамический IP, то можно отключить проверку IP. Для этого нужно в поле rpc-whitelist-enabled поставить значение false. По окончании всех настроек запускаем службу
sudo service transmission-daemon start
Transmission (Русский)
Состояние перевода: На этой странице представлен перевод статьи Transmission. Дата последней синхронизации: 2 июля 2022. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.
Transmission — это легкий и кроссплатформенный BitTorrent-клиент.
Установка
Существует несколько пакетов для установки Transmission:
- transmission-cli – демон для CLI и #Web интерфейс.
- transmission-gtk – графический интерфейс на базе GTK 3.
- transmission-qt – графический интерфейс на базе Qt 5.
- tremcAUR или tremc-gitAUR – Curses-интерфейс для демона.
- stigAUR или stig-gitAUR – Curses-интерфейс для демона.
- transmission-remote-gtk – интерфейс на базе GTK 3 для демона.
Настройка GUI версий
Обе версии GUI, transmission-gtk и transmission-qt, могут функционировать автономно без отдельно запущенного демона.
Версии с графическим интерфейсом настроены для работы из коробки, но пользователь может захотеть изменить некоторые настройки. По умолчанию путь к файлам конфигурации GUI — ~/.config/transmission .
Руководство по параметрам конфигурации можно найти в Github-репозитории Transmission.
Transmission демон и CLI
Команды transmission-cli:
transmission-daemon: запускает демон. transmission-remote: вызывает интерфейс командной строки для демона, локального или удаленного, а затем команду, которую вы хотите, чтобы демон выполнил. transmission-show: возвращает информацию о заданном торрент-файле. transmission-create: создает новый торрент. transmission-edit: добавление, удаление или замена announce URL трекера. transmission-cli: (объявлена устаревшей в пользу transmission-remote) запускает локальный экземпляр transmission для ручной загрузки торрента. tremc: (требует tremc-git AUR ) запускает curses-интерфейс для демона, локального или удаленного.
Запуск и остановка демона
Демон Transmission может быть запущен:
- Как пользователь transmission, путем запуска/включения службы transmission.service . Пользователь может быть изменен, как описано в разделе #Выбор пользователя.
- Как ваш собственный пользователь, запустив программу под своим именем:
$ transmission-daemon
При запуске демона будет создан файл начальной конфигурации. Смотрите раздел #Настройка демона.
Затем демон может быть остановлен с помощью:
$ pkill -3 transmission-daemon
Альтернативным вариантом остановки Transmission является использование команды transmission-remote:
$ transmission-remote --exit
Сокращение спама журнала
Запуск transmission-daemon может привести к появлению большого количества нежелательных записей в журнале. Вывод можно отфильтровать, запустив его с помощью небольшого скрипта-обертки. Следующий пример также предоставляет некоторые уведомления:
transwrap.sh
#!/bin/zsh killall transmission-daemon 2> /dev/null transmission-daemon --foreground --log-info 2>&1 | while read line; do echo $line | grep -v "announcer.c:\|platform.c:\|announce done (tr-dht.c:" | grep -v "Saved.*variant.c:" | while read line; do echo $line | grep -q "Queued for verification (verify.c:" && notify-send --app-name="Transmission Started" "$" echo $line | grep -q "changed from .Incomplete. to .Complete." && notify-send --app-name="Transmission Complete" "$" echo $line | systemd-cat --identifier="TransWrap" --priority=5 done 2>&1 > /dev/null done&disown
Запуск только при подключении к сети
Netctl
Может быть желательно запускать передачу только в определенных сетях. Следующий скрипт проверяет, что соединение установлено со списком разрешенных сетей, а затем запускает transmission-daemon.
/etc/netctl/hooks/90-transmission.sh
#!/bin/bash # The SSIDs for which we enable this. declare -A ssids=( ["network_1"]=y ["network_2"]=y ) if [[ $ ]]; then case $ACTION in CONNECT|REESTABLISHED) # Need to wait, otherwise doesn't seem to bind to 9091. sleep 30 systemctl start transmission ;; *) systemctl stop transmission ;; esac fi
Wicd
Создайте скрипт запуска в папке /etc/wicd/scripts/postconnect и скрипт остановки в папке /etc/wicd/scripts/predisconnect . Не забудьте сделать их исполняемыми. Например:
/etc/wicd/scripts/postconnect/transmission
#!/bin/bash systemctl start transmission
/etc/wicd/scripts/predisconnect/transmission
#!/bin/bash systemctl stop transmission
Выбор пользователя
Выберите способ запуска transmission :
- В качестве отдельного пользователя, по умолчанию transmission (рекомендуется для повышения безопасности).
По умолчанию transmission создает пользователя и группу transmission , со своими домашними файлами по адресу /var/lib/transmission/ , и запускается от имени этого «пользователя». Это мера предосторожности, благодаря которой transmission и его загрузки не имеют доступа к файлам вне /var/lib/transmission/ . Настройка, работа и доступ к загрузкам должны выполняться с привилегиями «root» (например, с помощью sudo).
- Под своим собственным пользователем.
Чтобы настроить это, создайте drop-in файл для службы и укажите в нем свое имя пользователя:
/etc/systemd/system/transmission.service.d/username.conf
[Service] User=имя_пользователя
Настройка демона
Создайте файл начальной конфигурации путём запуска демона.
- Если Transmission запущен под именем пользователя transmission , файл конфигурации будет расположен по адресу /var/lib/transmission/.config/transmission-daemon/settings.json .
- Если вы запускаете Transmission под своим именем пользователя, файл конфигурации будет расположен по адресу ~/.config/transmission-daemon/settings.json .
Настроить демон можно с помощью клиента Transmission или через веб-интерфейс, доступный через http://localhost:9091 в поддерживаемом браузере.
Примечание: Если вы хотите отредактировать конфигурацию вручную с помощью текстового редактора, сперва остановите демон, иначе он перезапишет свой файл конфигурации при закрытии.
Примечание: В качестве альтернативы можно отправить демону команду перезагрузить свою конфигурацию с помощью SIGHUP, выполнив kill -s SIGHUP $(pidof transmission-daemon) .
Для тех, кто работает под именем пользователя transmission , рекомендуется создать общий каталог загрузки с правильными разрешениями, чтобы разрешить доступ как пользователю transmission , так и системным пользователям, а затем соответствующим образом обновить конфигурационный файл. Например:
# mkdir /mnt/data/torrents # chown -R facade:transmission /mnt/data/torrents # chmod -R 775 /mnt/data/torrents
Теперь /mnt/data/torrents будет доступен для системного пользователя facade и для группы transmission , в которую входит пользователь transmission . Крайне не рекомендуется делать целевой каталог доступным для чтения/записи любым пользователям (т.е. не делайте chmod каталога на 777). Вместо этого дайте отдельным пользователям/группам соответствующие разрешения на соответствующие каталоги.
Note: Если /mnt/data/torrents расположен на съемном устройстве, например, с записью /etc/fstab с опцией nofail , Transmission будет жаловаться, что не может найти ваши файлы. Чтобы исправить это, вы можете добавить RequiresMountsFor=/mnt/data/torrents в /etc/systemd/system/transmission.service.d/transmission.conf в разделе [Unit] .
В качестве альтернативы можно добавить пользователя в группу transmission ( #usermod -a -G transmission yourusername ) и затем изменить разрешения на каталоги /var/lib/transmission и /var/lib/transmission/Downloads , чтобы разрешить доступ rwx членам группы transmission .
Белый список хостов
Если вы планируете обращаться к демону Transmission по сети, используя имя хоста сервера, вам необходимо добавить это имя хоста в rpc-host-whitelist в settings.json . В противном случае при обращении к серверу вы получите ошибку «421 Misdirected Request».
Если вы подключаетесь к демону, используя IP-адрес сервера, это не требуется.
Watch dir
Если вы хотите Автоматически добавлять .torrent файлы из папки, но обнаружите, что опции watch-dir и watch-dir-enabled , установленные в конфигурационном файле, не работают, вы можете запустить демон передачи с флагом -c /path/to/watch/dir .
Если вы используете systemd, отредактируйте блок transmission.service , как описано в разделе systemd (Русский)#Редактирование файлов юнитов.
Включение IPv6
По умолчанию демон прослушивает только соединения IPv4. Чтобы также прослушивать соединения IPv6, измените опцию rpc-bind-address на «::» в settings.json .
CLI примеры
Если вы хотите удалить все готовые торренты, вы можете использовать следующую команду с собственным именем пользователя и паролем:
# transmission-remote -n 'username:password' -l | grep 100% | awk ''| paste -d, -s | xargs -i transmission-remote -t <> -r
Seed a torrent which has already been downloaded:
# transmission-remote [HOST] --torrent=example.torrent -a example.torrent --verify --download-dir=/dir/to/folder --start
Web интерфейс
GUI способ
После установки Transmission вы можете легко настроить веб-интерфейс. Все, что вам нужно сделать, это щелкнуть меню Правка и выбрать Параметры. Перейдите на вкладку Удалённое управление и включите Разрешить удаленный доступ.
Здесь у вас есть возможность изменить порт прослушивания по умолчанию с 9091.
Установите флажок Использовать аутентификацию и введите имя пользователя и пароль, чтобы можно было использовать аутентификацию.
Для повышения безопасности вы можете ограничить доступ с любого IP-адреса, включив опцию Разрешить доступ только данным IP-адресам.
Теперь вы готовы запустить веб-интерфейс, нажав на Открыть веб-клиент, что заставит ваш веб-браузер по умолчанию открыть его, или вручную достигнув http://TARGET_IP_ADDRESS:PORT с помощью любого поддерживаемого веб-браузера.
Если вы не изменили порт прослушивания, по умолчанию используется порт 9091. В этом случае ссылка http://localhost:9091
Примечание: transmission-cli должен быть установлен.
CLI способ
Вам не нужен графический интерфейс для настройки веб-интерфейса, демон предлагает те же самые опции. Вы можете получить доступ к веб-интерфейсу, не указывая никаких флагов. Смотрите раздел #Запуск и остановка демона
Тем не менее, вы можете указать все то, что вы видите в предыдущем разделе:
$ transmission-daemon --auth --username arch --password linux --port 9091 --allowed "127.0.0.1"
$ transmission-daemon -t -u arch -v linux -p 9091 -a "127.0.0.1"
Дополнительная тема Web-интерфейса
Если пользовательский интерфейс веб-приложения по умолчанию кажется устаревшим и менее навороченным, чем ожидалось, попробуйте использовать https://git.eigenlab.org/sbiego/transmission-web-soft-theme для создания простой темы CSS.
https://github.com/ronggang/transmission-web-control также предоставляет полную замену, которая может сосуществовать с пользовательским интерфейсом по умолчанию.
Использование в качестве makepkg DLAGENT
Transmission можно использовать в качестве агента загрузки magnet для makepkg с помощью агента загрузки transmission-dlagent AUR .
Для Magnet URI необходимо изменить их префикс с magnet:? на magnet:// .
Решение проблем
Невозможно получить доступ к демону по сети
Демон запускается после инициализации network.service . Однако, если вы включите службу dhcpcd , а не службу для конкретного устройства, например, dhcpcd@enp1s0.service , может случиться так, что Transmission будет запущен слишком рано и не сможет привязаться к сетевому интерфейсу. Таким образом, веб-интерфейс окажется недоступен. Возможным решением является добавление строки Requires в файл юнита:
/etc/systemd/system/transmission.service.d/fixdep.conf
[Unit] Requires=network.target
Web-интерфейс недоступен
404: Not Found Couldn't find Transmission's web interface files! Users: to tell Transmission where to look, set the TRANSMISSION_WEB_HOME environment variable to the folder where the web interface's index.html is located. Package Builders: to set a custom default at compile time, #define PACKAGE_DATA_DIR in libtransmission/platform.c or tweak tr_getClutchDir () by hand.
Даже если вы используете графический интерфейс, вам все равно необходимо установить transmission-cli , чтобы веб-интерфейс работал.
Failed to set send/receive buffer
Transmission может отобразить любое из этих сообщений в журнале при запуске:
UDP Failed to set receive buffer: requested 4194304, got 425984 UDP Failed to set send buffer: requested 1048576, got 425984
Это можно исправить, установив net.core.rmem_max=4194304 и net.core.wmem_max=1048576 с помощью sysctl.
Смотрите также
- Transmission wiki
- Headless Usage
- Transmission wiki on GitHub
Retrieved from «https://wiki.archlinux.org/index.php?title=Transmission_(Русский)&oldid=736113»
Команда transmission-cli: опции, ключи и примеры использования
Общие команды – Общие команды, присущие различным операционным системам.
transmission-cli
A lightweight, command-line BitTorrent client. This tool has been deprecated, please see transmission-remote . More information: https://transmissionbt.com.
- Download a specific torrent:
- Download a torrent to a specific directory:
- Create a torrent file from a specific file or directory:
- Set the download speed limit to 50 KB/s:
- Set the upload speed limit to 50 KB/s:
- Use a specific port for connections:
- Force encryption for peer connections:
- Use a Bluetack-formatted peer blocklist:
Примеры кода, демонстрирующие общие подходы в программировании или же решающие небольшие прикладные задачи. Языки программирования и библиотеки, позволяющие эффективно решать задачи разработки. Объектно-ориентированное программирование, функциональное программирование и прочие подходы и …

Трюки Bash
Полезные заметки по работе с командной строкой: bash и прочие *sh. Однострочники, скрипты, позволяющие решать большие и малые задачи администрирования и настройки Юникс систем. Zsh для современного MacOS, Bash для …

Заметки о настройке различных IT-штуковин. Настройка, допиливание, полировка. Конфигурируем приложения и тюнингуем сервера. Полезные параметры и ключи запуска программ. Увеличиваем скорость, уменьшаем отклик, ускоряем работу и улучшаем результаты работы. Объясняем …

Терминал/Консоль
Команды и инструкции терминала (консоли) Linux, MacOS, Windows и прочих операционных систем. Трюки и особенности командных оболочек, скрипты для администрирования Unix. Программирование и скриптование Windows и Linux, тонкая настройка Macos. …

Также может быть вам интересно:
- Как получить дерево директорий на Bash одним однострочником
- Python: Функции
- Python: Встроенные типы данных (list, set, dict, etc)
- Python: типы данных, переменные, логическое ветвление и циклы
- Как сделать свою middleware в Django (с примерами)
Свежее на «Цифре»
MessageId или как дебажить систему с минимумом проблем
Программы, 09.09.2023
Проверочный список для выпуска промышленных приложений с иллюстрациями
Работа и управление, 30.07.2023
В Google Pixel и Windows Snipping Tool есть возможность восстановления обрезанных изображений
Новости, 23.03.2023
Два подарка «под ёлочку» от Heroes of Might and Magic
Новости, 25.12.2022
Вышел Pulsar – редактор кода на основе Atom
Новости, 25.12.2022
Ленивый backup PostgreSQL
Программы, 17.12.2022
Google анонсировала OSV-Scanner: сканер уязвимостей в программных проектах
Новости, 16.12.2022

Gitea запускает коммерческую версию, а недовольные – форк Forĝejo
На днях группа бывших разработчиков Gitea решили создать на базе хостинга кода Gitea свою версию проекта – «Forgejo». Причиной тому …

Пользователи и их создание в Django — своя регистрация на сайте
Если вашим сайтом должны активно пользоваться несколько человек, то полезно их различать, а значит — надо уметь создавать пользователей, либо …

Новый синтаксис старой команды with в Python 3.10
Как же долго моё чувство прекрасного страдало… Но в Python 3.10 появился новый парсер синтаксических конструкций Python!

Добавляем постраничную пагинацию на Django сайт
На сайтах часто встречаются многостраничные объекты: список товаров, список заметок и т.д. Поэтому важно уметь добавить навигацию по страницам на …

Новый оператор match-case в Python
В новой версии Python (3.10) появится новый оператор. Новый оператор сопоставления по шаблону (match-case).

Нет слов, одни. однострочники
На днях вышел пост со списком полезных однострочников для JavaScript программистов. Памятуя Perl-овую молодость, заглянул туда.

Добавляем переменные в контекст Django шаблонов (свой контекст-процессор)
В Django вы можете передавать данные в шаблоны посредством контекстов. Контекст передаётся из контроллера (view в терминах Django), однако, если …

Пример своей консольной команды в Django проекте
Если вы работали с Django проектом, то, скорее всего, запускали команды из консоли (manage.py). В Django есть простой способ писать …

Разграничение прав доступа на Django сайте
Почти на любом веб-сайте необходимо разделять пользователей на группы и предоставлять им разные возможности. В Django есть довольно серьёзная система …
Заметки эникейщика
Статьи и заметки об установке и настройке Windows, Linux, маршрутизаторов и т.д.
Настройка transmission-daemon в Debian 9 (Stretch)
Для Linux существует замечательный легкий BitTorrent-клиент, который называется transmission-daemon. Работает он совершенно безотказно, но вот произвести его первоначальную настройку для многих новичков является нетривиальной задачей. Самое интересное, что некоторые моменты в настройках меняются от версии к версии как самого transmission-daemon, так и дистрибутива. В данном мануале приведу пример настройки transmission-daemon под Debian 9.
Устанавливаем transmission-daemon, если он у вас еще не установлен
apt-get install transmission-daemon
Копируем конфигурационные файлы в директорию пользователя, от имени которого будет запускаться transmission-daemon
cp -r /etc/transmission-daemon /home/anykey/.config/
Меняем права доступа
chown -R anykey:anykey /home/anykey/.config/transmission-daemon
В /etc/init.d/transmission-daemon меняем USER=anykey
В /etc/default/transmission-daemon меняем CONFIG_DIR=»/home/anykey/.config/transmission-daemon»
Выполняем команду
systemctl edit transmission-daemon.service
В открывшемся окне вписываем
[Service]
User=anykey
Сохраняем изменения и выходим.
Если у вас редактор по умолчанию Nano, то для того чтобы сохранить и выйти необходимо нажать Ctrl+O, затем Ctrl+X, если же Vi, то жмем Esc, затем набираем :wq! и жмем Enter.
В /home/anykey/.config/transmission-daemon/settings.json меняем:
если компьютер, на котором будет запускаться transmission-daemon имеет статический ip, то прописываем этот ip в строку
«bind-address-ipv4»: «192.168.0.2»,
сюда вписываем директорию, в которую будут загружаться торренты
«download-dir»: «/mnt/distrib»,
если хотим указать отдельную директорию для незавершенных загрузок, то меняем значение на true
«incomplete-dir-enabled»: true,
и указываем директорию для незавершенных загрузок
«incomplete-dir»: «/mnt/temp»,
устанавливаем количество информации, выдаваемой в /var/log/syslog, значение можно менять от 0 до 9, где 0 — отсутствие записей в логи
«message-level»: 1,
чтобы обращаться к transmission-daemon через web-интерфейс, прописываем true, иначе оставляем false
«rpc-enabled»: true,
сюда прописываем ip-адрес, который указали в поле «bind-address-ipv4»
«rpc-bind-address»: «192.168.0.2»,
если хотим, чтобы запрашивался пароль для доступа через web-интерфейс, то меняем на true, иначе оставляем false
«rpc-authentication-required»: true,
если в предыдущем пункте выбрали true, то устанавливаем имя для подключения к web-интерфейсу
«rpc-username»: «any»,
в кавычки вписываем свой пароль, после перезагрузки конфигурации его значение будет хэшированно
«rpc-password»: «63e518bf450175974b02403e657357326a76452f3Io4VSG2a»,
можно поменять порт, по которому будет доступен web-интерфейс
«rpc-port»: 1419,
чтоб web-интерфейс был доступен только с определенных ip и/или подсетей, то меняем на true
«rpc-whitelist-enabled»: true,
в этой строке указываем необходимые ip и подсети через запятую и без пробела
«rpc-whitelist»: «127.0.0.1,192.168.0.*»,
Основные настройки на этом закончены. Но можно настроить еще всякие дополнительные функции, например, чтоб transmission-daemon подбирал .torrent-файлы из определенной директории и ставил их на закачку, для этого в конец конфигурационного файла дописываем строки
«watch-dir»: «/mnt/torrents»,
«watch-dir-enabled»: true
причем не забываем поставить запятую в конец строки, после которой мы добавили эти строки.
Так же владельцем директории /mnt/torrents должен быть anykey — юзер, от имени которого запускается transmission-daemon
chown -R anykey:anykey /mnt/torrents
Права на директорию /mnt/torrents и файлы в ней должны быть 775
chmod -R 775 /mnt/torrents
Если Вы настроили автодобавление .torrent-файлов из определенной директории на закачку, то по умолчанию, после того, как это автодобавление произошло, файл автоматически переименовывается из foobar.torrent в foobar.torrent.added. Чтоб файлы .torrent.added автоматически удалялись, то можно добавить соответствующую задачу в cron, а можно в /home/anykey/.config/transmission-daemon/settings.json изменить строки на
«script-torrent-done-enabled»: true,
«script-torrent-done-filename»: «/usr/sbin/transmission-rm-added.sh»,
затем создать файл /usr/sbin/transmission-rm-added.sh
touch /usr/sbin/transmission-rm-added.sh
со следующим содержимым
#!/bin/bash
rm /mnt/torrents/*.added
после чего владельцем файла /usr/sbin/transmission-rm-added.sh делаем юзера anykey
chown anykey:anykey /usr/sbin/transmission-rm-added.sh
После изменения настроек ОБЯЗАТЕЛЬНО выполняем команду
invoke-rc.d transmission-daemon reload
и только после этого
service transmission-daemon restart
Все, можно пользоваться transmission-daemon-ом через web-интерфейс по адресу http://127.0.0.1:1419 с компьютера на котором установлен transmission-daemon или по адресу http://192.168.0.2:1419 с любого компьютера в вашей локальной сети.

В левом нижнем углу можно поменять настройки transmission-daemon.
А еще transmission-daemon-ом можно управлять при помощи программы Transmission remote GUI
apt-get install transgui
Опубликовано в Linux 20.12.2017 автором AnyKey .
3 отзыва на “ Настройка transmission-daemon в Debian 9 (Stretch) ”
- Денис14.03.2019 в 13:59 Настрлил все как у вас, но после reboot не могу зайти через веб морду, демон в процессах висит, приходится в ручную перезапускать, в чем может быть проблема? Пользователя я выбрал с парольным входом, может быть из за этого. До этого пробовал по другой инструкции делать с безпарольным юзером, ситуация аналогичная, помогите пожалуйста?