Установка Transmission на FreeBSD

Transmission — простой BitTorrent-клиент c открытым исходным кодом.

Установка

cd /usr/ports/net-p2p/transmission-daemon/
make install clean

Настройка

Создаю папки

mkdir -p /mnt/torret/Uploads
mkdir -p /mnt/torret/Downloads
mkdir -p /mnt/torret/Incomplete

Устанавливаю права на папки

chown -R transmission:transmission /mnt/torret

Добавляю в /etc/rc.conf

transmission_enable="YES"
transmission_conf_dir="/usr/local/etc/transmission/home" #Где лежит конфиг
transmission_watch_dir="/mnt/torret/Uploads" #папка для ручного добавления торрентов
transmission_user="transmission"  # Пользователь под которым работает демон.
# Если задан пустой, то пускается под root'ом, что не рекомендуется.
# Если параметр не задан, то запускается под transmission
transmission_download_dir="/mnt/torrent/Downloads"  # папка для скаченых торрентов
transmission_flags="-e /usr/local/etc/transmission/transmission.log"

Перехожу в папку с установленным transmission, создаю лог файл, запускаю и останавливаю transmission

cd /usr/local/etc/transmission
cat >> transmission.log
ctrl+d
chown transmission:transmission transmission.log
/usr/local/etc/rc.d/transmission start
/usr/local/etc/rc.d/transmission stop

Перехожу а папку /usr/local/etc/transmission/home и правлю файл settings.json. Данный файл нужно редактировать только при остановленном демоне transmission, иначе при остановке он перезапишет конфиг с текущеми настройками его работы.

cd  /usr/local/etc/transmission/home

Планировщик позволяет ограничивать скорость по расписанию

cat settings.json
{
  "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": 8,
  "dht-enabled": true,
  "download-dir": "/mnt/torrent/Downloads",
  "download-queue-enabled": true,
  "download-queue-size": 5,
  "encryption": 1,
  "idle-seeding-limit": 30,
  "idle-seeding-limit-enabled": false,
  "incomplete-dir": "/mnt/torrent/Incomplete",
  "incomplete-dir-enabled": true,
  "lpd-enabled": false,
  "message-level": 2,
  "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,
  "pidfile": "/var/run/transmission/daemon.pid",
  "port-forwarding-enabled": true,
  "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": "{65135b46e1a9b2d99256d1ab85b3734c321d3912EIsk8Oa9",
  "rpc-port": 29091,
  "rpc-url": "/transmission/",
  "rpc-username": "kaktus",
  "rpc-whitelist": "127.0.0.1",
  "rpc-whitelist-enabled": false,
  "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-slots-per-torrent": 14,
  "utp-enabled": true,
  "watch-dir": "/mnt/torret/Uploads",
  "watch-dir-enabled": true
}