Настраиваем qBittorrent + MiniDLNA на Ubuntu

Сегодня в статье поговорим о том, как установить и настроить совместную работу медиацентра MiniDLNA и клиента сети торрент – qBittorrent на ОС Ubuntu 18.0420.0422.04.






Устанавливать и настраивать будем на Ubuntu Server 20.04. Для Debian подобных систем инструкция будет тоже справедлива.




Для того, чтобы клиенты видели DLNA-сервер, они должны находились в одной подсети.




Подготовка системы:




Обновляемся систему до актуального состояния:




sudo apt update && sudo apt dist-upgrade




Создаем системного пользователя с отключенным шелом и одноименной группой.




sudo useradd qbittorrent -b /home/ -m -U -s /bin/false  




Задаем пароль для нашего пользователя




sudo passwd qbittorrent




qBittorrent




Установка qBittorrent




Давайте теперь установим наш торрент клиент без GUI интерфейса. На Ubuntu Server 20.04 LTS команда будет выглядеть так:




sudo apt install qbittorrent-nox




Настройка qBittorrent




Настраиваем автостарт демона с помощью systemd




Создаём и открываем файл qbittorrent-nox.service




sudo nano /etc/systemd/system/qbittorrent-nox.service




Добавим следующее содержимое:




[Unit]
Description=qBittorrent Command Line Client
After=network.target

[Service]
#Do not change to "simple"
Type=forking
User=qbittorrent
Group=qbittorrent
UMask=007
ExecStart=/usr/bin/qbittorrent-nox -d --webui-port=8080
Restart=on-failure

[Install]
WantedBy=multi-user.target




Автостарт демона с помощью init.d





Если настраивали автостарт при помощи systemd, то выполнять настройку с помощью init.d не надо.




Скачаем скрипт демона и оправим его в автозагрузку.




wget -O /etc/init.d/qbittorrent https://launchpadlibrarian.net/38905385/qbittorrent 
sudo chmod 755 /etc/init.d/qbittorrent
sudo update-rc.d qbittorrent defaults




Для удаления набираем следующую команду:




sudo update-rc.d -f qbittorrent remove 




Откроем содержимое скрипта:




sudo nano /etc/init.d/qbittorrent




Отредактируем в соответствии с листингом:




DAEMON_ARGS="--webui-port=8080" 
USER=qbittorrent




Команды для управления демоном:




sudo service qbittorrent start 
sudo service qbittorrent stop 
sudo service qbittorrent restart 
sudo service qbittorrent status




Для запуска наберите в терминале:




qbittorrent-nox




Конфигурационный файл qbittorrent-nox




Если необходимо изменить настройки qbittorrent через терминал, то откройте на редактирование следующий файл.




sudo nano /home/qbittorrent/.config/qBittorrent/qBittorrent.conf




Настройка сети и загружаемых файлов




BitTorrent]
SessionDefaultSavePath=/home/qbittorrent/video
SessionExcludedFileNames=
SessionInterface=ens18
SessionInterfaceAddress=10.5.1.100
SessionInterfaceName=ens18
SessionPort=54218
SessionQueueingSystemEnabled=false
SessionTempPath=/home/qbittorrent/video/temp




Установка разрешенных сетей




Установка разрешенных сетей для подключения к qbittorrent без ввода логина и пароля




WebUIAuthSubnetWhitelist=10.5.1.0/24, 10.1.1.0/24




Включаем поддержку HTTPS




Для включения протокола HTTPS c помощью самоподписанного сертификата.




sudo mkdir /home/qbittorrent/.config/qBittorrent/ssl

sudo openssl req -x509 -nodes -days 1095 -newkey rsa:2048 -keyout /home/qbittorrent/.config/qBittorrent/ssl/sert.key -out /home/qbittorrent/.config/qBittorrent/ssl/sert.crt




*.key и *.crt должны быть в одну строчку.
Также их можно прописать в настройках веб-интерфейса.




sudo nano /home/qbittorrent/.config/qBittorrent/qBittorrent.conf




WebUIHTTPSEnabled=true 

WebUIHTTPSCertificate="@ByteArray(-----BEGIN CERTIFICATE-----n Cert n-----END CERTIFICATE-----n)" 

WebUIHTTPSKey=@ByteArray(-----BEGIN PRIVATE KEY-----n Key n-----END PRIVATE KEY-----n)




MiniDLNA




Установка MiniDLNA




Давайте теперь установим наш медиацентр minidlna




sudo apt install minidlna




Настройка MiniDLNA




Автостарт сервиса с помощью init.d




Настроим демон minidlna на запуск от нашего пользователя qbittorrent




sudo nano /etc/init.d/minidlna




Находим строчки




USER=minidlna
GROUP=minidlna




Меняем их значение:




USER=qbittorrent
GROUP=qbittorrent




Автостарт с помощью systemd




На сегодня автоматом создается сервис в systemd. Для редактирования открываем следующий файл:




sudo nano /etc/systemd/system/multi-user.target.wants/minidlna.service




Также как и выше меняем User и Group с minidlna на qbittorrent.




[Unit]
Description=MiniDLNA lightweight DLNA/UPnP-AV server
Documentation=man:minidlnad(1) man:minidlna.conf(5)
After=local-fs.target remote-fs.target autofs.service

[Service]
User=qbittorrent
Group=qbittorrent

Environment=CONFIGFILE=/etc/minidlna.conf
Environment=DAEMON_OPTS=-r
EnvironmentFile=-/etc/default/minidlna

RuntimeDirectory=minidlna
LogsDirectory=minidlna
PIDFile=/run/minidlna/minidlna.pid
ExecStart=/usr/sbin/minidlnad -f $CONFIGFILE -P /run/minidlna/minidlna.pid -S $DAEMON_OPTS

[Install]
WantedBy=multi-user.target




Обновляем настройки сервисов




Пересчитываем настройки systemd




sudo systemctl daemon-reload




Меняем группу и владельца директории /var/cache/minidlna




sudo chown -R qbittorrent:qbittorrent /var/cache/minidlna/




Настроем конфигурационный файл minidlna:




sudo cp /etc/minidlna.conf{,.bkp} && sudo nano /etc/minidlna.conf




user=qbittorrent
media_dir=P,/home/qbittorrent/pictures
media_dir=V,/home/qbittorrent/video 
media_dir=A,/home/qbittorrent/music
db_dir=/var/cache/minidlna
log_dir=/var/log/minidlna
log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn
root_container=B
#network_interface=eth0
port=8200
friendly_name=MiniDLNA
serial=1234567890
model_number=1234
inotify=yes
album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg
album_art_names=AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg
album_art_names=Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
notify_interval=60
max_connections=10




Создадим наши каталоги:




sudo mkdir /home/qbittorrent/{music,pictures,video,torrent} 




Устанавливаем права




sudo chown -R qbittorrent:qbittorrent /home/qbittorrent/




Перезагружаем демон если настраивали minidlna с помощью init.d




sudo /etc/init.d/minidlna restart




Перезагружаем демон если настраивали minidlna с помощью systemd




systemctl restart minidlna.service




Перечитываем кэш




minidlnad -R




Правим sysctl.conf иначе будет ругаться в логах на эту настройку.




sudo nano /etc/sysctl.conf




Добавим в конце файла.




# MiniDLNA 
fs.inotify.max_user_watches = 100000




Применим настройку




sudo sysctl -p




Проверяем логи и смотрим статистику:




sudo cat /var/log/minidlna




Сброс кэша minidlna




Если возникает ситуация, когда необходимо сбросить кэш minidlna, можно воспользоваться командами:




sudo service minidlna stop




Удаляем кеш файл




sudo rm -rf /var/cache/minidlna/files.db




запускаем службу:




sudo service minidlna start



[endtxt]




. . . .







2020-11-23T17:33:58
torrents