Торрент-клиент Transmission-daemon

Очень часто домашний сервер удобно использовать для закачивания каких-либо файлов, фильмов, музыки. Сервер работает круглосуточно, поэтому можно ставить задачи в очередь. Для закачки торрентов я буду использовать торрент-клиент transmission-daemon, он примечателен тем что не имеет веб-интерфейс для управления закачками.

Суенарий работы торрент-клиента

Сценарий будет такой — создаем публичный каталог, куда будем складывать торрент-файлы, периодически торрет-клиент будет сканировать этот каталог (TorrenFile) и при обнаружении торрент файла будет пытаться скачать с помощью него файлы, не докачанные файлы складываются в каталог incomplete, после того как файл докачался он перемещается в каталог Download, а торрент-файл удаляется, параллельно с этим торрент файл можно будет открывать через веб-интерфейс торрент клиента и контролировать процесс закачивания файлов.

Установка пакетов торрент-клиента

Первым делом установим торрент-клиент

1
apt install transmission-daemon -y

Останавливаем клиент

1
service transmission-daemon stop

И переходим к файлу с настройками

1
nano /etc/transmission-daemon/settings.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
    "alt-speed-down": 50,
    "alt-speed-enabled": false,
    "alt-speed-time-begin": 540,
    "alt-speed-time-day": 127,
    "alt-speed-time-enabled": false,
    "alt-speed-time-end": 1020,
    "alt-speed-up": 50,
    "bind-address-ipv4": "0.0.0.0",
    "bind-address-ipv6": "::",
    "blocklist-enabled": false,
    "blocklist-url": "http://www.example.com/blocklist",
    "cache-size-mb": 4,
    "dht-enabled": true,
    "download-dir": "/var/lib/transmission-daemon/downloads",
    "download-limit": 100,
    "download-limit-enabled": 0,
    "download-queue-enabled": true,
    "download-queue-size": 5,
    "encryption": 1,
    "idle-seeding-limit": 30,
    "idle-seeding-limit-enabled": false,
    "incomplete-dir": "/var/lib/transmission-daemon/Downloads",
    "incomplete-dir-enabled": false,
    "lpd-enabled": false,
    "max-peers-global": 200,
    "message-level": 1,
    "peer-congestion-algorithm": "",
    "peer-id-ttl-hours": 6,
    "peer-limit-global": 200,
    "peer-limit-per-torrent": 50,
    "peer-port": 51413,
    "peer-port-random-high": 65535,
    "peer-port-random-low": 49152,
    "peer-port-random-on-start": false,
    "peer-socket-tos": "default",
    "pex-enabled": true,
    "port-forwarding-enabled": false,
    "preallocation": 1,
    "prefetch-enabled": true,
    "queue-stalled-enabled": true,
    "queue-stalled-minutes": 30,
    "ratio-limit": 2,
    "ratio-limit-enabled": false,
    "rename-partial-files": true,
    "rpc-authentication-required": true,
    "rpc-bind-address": "0.0.0.0",
    "rpc-enabled": true,
    "rpc-host-whitelist": "",
    "rpc-host-whitelist-enabled": true,
    "rpc-password": "{01b6a44e54397d3504447702ff4434a58fd6cec6TOoCuBAQ",
    "rpc-port": 9091,
    "rpc-url": "/transmission/",
    "rpc-username": "transmission",
    "rpc-whitelist": "127.0.0.1",
    "rpc-whitelist-enabled": true,
    "scrape-paused-torrents-enabled": true,
    "script-torrent-done-enabled": false,
    "script-torrent-done-filename": "",
    "seed-queue-enabled": false,
    "seed-queue-size": 10,
    "speed-limit-down": 100,
    "speed-limit-down-enabled": false,
    "speed-limit-up": 100,
    "speed-limit-up-enabled": false,
    "start-added-torrents": true,
    "trash-original-torrent-files": false,
    "umask": 18,
    "upload-limit": 100,
    "upload-limit-enabled": 0,
    "upload-slots-per-torrent": 14,
    "utp-enabled": true
}

Пользователь под которым будет работать transmission

1
"transmission_user": "samba",

Использую пользователя samba, чтобы у закаченных файлов были такие-же права доступа как и остальных файлов в публичном каталоге

Указываю каталог для скачанных файлов:

1
"download-dir": "/home/samba/Pubcli/Downloads",

Указываем каталог для файлов которые еще не завершили закачку:

1
"incomplete-dir": "/home/samba/Public/Downloads/incomplete",

Настраиваем удаленный доступ через web-интерфейс:

1
2
3
4
5
6
7
8
"rpc-host-whitelist": "",
"rpc-host-whitelist-enabled": true,
"rpc-password": "123456",
"rpc-port": 9091,
"rpc-url": "/transmission/",
"rpc-username": "transmission",
"rpc-whitelist": "127.0.0.1",
"rpc-whitelist-enabled": false,

«rpc-password»: «123456», — после перезапуска службы поменяется на хеш пароля, менять его не надо.
Еще отключил белый список для удаленного доступа: «rpc-whitelist-enabled»: false

Указываем каталог для автозагрузки торрент-файлов:

1
2
"watch-dir": "/home/samba/Public/TorrentFiles",
"watch-dir-enabled": true,

Удаляем торрент файл после добавления:

1
"trash-original-torrent-files": true,

Сохраняем конфигурационный файл и запускаем transmission-daemon
Назначаем права доступа в каталог /home/samba/Public/Downloads

1
2
3
4
chown samba:debian-transmission /home/samba/Public/Downloads
chown samba:debian-transmission /home/samba/Public/TorrenFiles
chmod 775 /home/samba/Public/Downloads
chmod 775 /home/samba/Public/TorrentFiles
1
service trnsmission-daemon start

Открываем браузер и переходим по адресу http://192.168.2.1:9091

Помещаем торрент файл в каталог TorrentFiles, в веб-интерфейсе должен появиться процесс закачки.

Закачка будет вестись в каталог /home/samba/Public/Downloads/incomplete и в конце переместит файл в /home/samba/Public/Downloads/
Заметил что перемещение происходит не сразу, а через несколько секунд после того как скачалось, видимо идет проверка целостности после закачки.

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.