Установка и настройка Transmission в Zuxel NSA220.

Эта статья продолжение первой статьи - Альтернативная «прошивка» Zyxel NSA220. Запускаем Debian Lenny на NSA220, где я описал установку и настройку «сборки» основанной на дистрибутиве Debian Lenny под сетевой накопитель Zyxel NSA220. В этой статье (можно судить из заголовка статьи) я расскажу как установить торрент-клиент transmission и медиа-сервер Mediatomb. Итак начнем:
Подключаемся к ssh серверу сетевого накопителя. В Windows это можно сделать с помощью клиента Putty(проверьте, чтобы кодировка терминала в Putty была выставлена UTF8), в Linux с помощью утилиты ssh.

# ssh root@192.168.1.3

Скачиваем исходники актуальной версии transmission( посмотреть и получить ссылку последней стабильной версии можно на официальном сайте transmissionbt.com).

# wget http://download.m0k.org/transmission/files/transmission-2.01.tar.bz2

Для распаковки архива нам понадобится утилита bzip2( хотя очень странно, что упаковщик tar из коробки «не осилил» архив сжатый bzip2).

# apt-get install bzip2

Распаковываем:

# tar xjvf transmission-2.01.tar.bz2

Переходим в директорию с исходниками:

# cd transmission-2.01

Устанавливаем необходимые зависимости:

# apt-get install build-essential automake autoconf libtool pkg-config libcurl4-openssl-dev intltool libxml2-dev libglib2.0-dev checkinstall

Сразу добавляем пользователя от которого будет работать transmission:

# adduser --disabled-password transmission

Устанавливаем еще одну необходимую библиотеку без которой конфигурирование пакета невозможно:

# cd ..
# wget http://ftp.us.debian.org/debian/pool/main/libe/libevent/libevent-1.4-2_1.4.13-stable-1_armel.deb
# dpkg -i libevent-1.4-2_1.4.13-stable-1_armel.deb

Теперь запускаем саму сборку:

# cd transmission-2.01
 
# ./configure -q --disable-gtk --disable-nls

Запускаем компиляцию:

# make -s

Создаем и устанавливаем deb пакет под наш NSA220:

# checkinstall -D 
 
checkinstall 1.6.1, Copyright 2002 Felipe Eduardo Sanchez Diaz Duran 
         Эта программа распространяется на условиях GNU GPL 
 
The package documentation directory ./doc-pak does not exist. 
Should I create a default set of package docs?  [y]: y 
 
Готовится документация к пакету...OK 
 
Пожалуйста напишите описание пакета. 
Закончите ваше описание пустой строкой или EOF. 
>> transmission 
>> 
 
***************************************** 
**** Debian package creation selected *** 
***************************************** 
 
Этот пакет был создан с использованием данных значений: 
 
0 -  Maintainer: [ root@NSA-220 ] 
1 -  Summary: [ transmission ] 
2 -  Name:    [ transmission ] 
3 -  Version: [ 2.01 ] 
4 -  Release: [ 1 ] 
5 -  License: [ GPL ] 
6 -  Group:   [ checkinstall ] 
7 -  Architecture: [ armel ] 
8 -  Source location: [ transmission-2.01 ] 
9 -  Alternate source location: [  ] 
10 - Requires: [  ] 
11 - Provides: [ transmission ]

Теперь, чтобы создать все конфигурационные файлы стартуем transmission от одноименного пользователя, которого мы создали несколькими абзацами выше, для этого сначала переключемся в консоль пользователя transmission:

# su transmission
 
$ transmission-daemon -f

Останавливаем работу transmission-daemon нажатием Ctrl+C. Для обеспечения доступа к каталогам, куда торрент-клиент будет складывать скаченный контент, нам нужно сделать пользователя transmission владельцем данных каталогов ( сhown transmission:transmission /путь/к/каталогу) или поступить как я, создав необходимые директории от самого transmission.

$ mkdir /mnt/md0/transmission
$ mkdir /mnt/md0/transmission/downloads 
$ mkdir /mnt/md0/transmission/inkomplete

Переходим к редактированию конфигурационного файла:

$ nano /home/transmission/.config/transmission-daemon/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, 
    "dht-enabled": true, 
    "download-dir": "/mnt/md0/transmission/Downloads",  # Директория для скаченных файлов
    "encryption": 1, 
    "incomplete-dir": "/mnt/md0/transmission/inkomplete", # Директория недокаченных файлов
    "incomplete-dir-enabled": true, 
    "lazy-bitfield-enabled": true, 
    "lpd-enabled": false, 
    "message-level": 2, 
    "open-file-limit": 32, 
    "peer-limit-global": 240, 
    "peer-limit-per-torrent": 60, 
    "peer-port": 9090,                      # Порт входящих соединений
    "peer-port-random-high": 65535, 
    "peer-port-random-low": 49152, 
    "peer-port-random-on-start": false, 
    "peer-socket-tos": 0, 
    "pex-enabled": true, 
    "port-forwarding-enabled": true, 
    "preallocation": 1, 
   "proxy": "", 
     "proxy-auth-enabled": false, 
    "proxy-auth-password": "", 
    "proxy-auth-username": "", 
    "proxy-enabled": false, 
    "proxy-port": 80, 
    "proxy-type": 0, 
    "ratio-limit": 2.0000, 
    "ratio-limit-enabled": false, 
    "rename-partial-files": true, 
    "rpc-authentication-required": true,     # Аутентификация удаленных подключений
    "rpc-bind-address": "0.0.0.0",          # IP адрес на котором сервер ждет подключений
    "rpc-enabled": true,           # Включить удаленное управление