Описан процесс установки торрент-клиента transmission на систему freeNAS версии 8.0.3 в которой, в отличии от предыдущих версий, он не интегрирован.
"freenas, transmission, nas, nanobsd, torrent,nas,torrent,transmission
 

Установка Transmission на freeNAS 8.0.3

Февраль 2, 2012

Решил я себе на днях поставить NAS (Network Attached Storage — Сетевое хранилище). Раньше это называлось «Сервер», а теперь — «NAS». Ну да бог с ним. Причина — нехватка мощности старого сервера. Железо было что-то около Пентиум 4 1,8 ГГц с 478 сокетом и 768 мегабайт памяти. Поменял казалось бы шило на мыло — SBC IB883 Intel Atom N270 с гигабайтом памяти и с гигабитным сетевым портом. Но скажу я вам — разница даже в рамках 100 мегабитной сети заметна — аппаратный сетевой стек, поддержка SATAII на уровне чипсета — все положительно влияет на скорость. Кроме того существенно снизился шум и потребляемая пощность. Но это уже в другой статье.

Итак. Для упрощения (упрощения ли?) жизни я решил поставить на новый сервер freeNAS. Удобно, быстро, через полчаса возни в кладовке зашуршало новое хранилище для моей видео-библиотеки. Раньше на сервере стоял торрент и качал то, что было нужно. К сожалению из freeNAS 8.0.3 качающее чудо было удалено и теперь обещает быть назад аж в 8.2 релизе и его светлое будущее неопределенно. Ставить в зад freeNAS седьмой версии не хотелось, поэтому решил почудить и поставить transmission руками.

Итак, поехали.

Сначала качаем putty. Далее идем в локальную сеть, открываем шару на нашем NAS и создаем там папку Download (помните в UNIX-подобных системах имена файлов и папок чувствительны к регистру).

Теперь нам нужно попасть в Web-интерфейс управления freeNAS и разрешить SSH:

Разрешаем SSH на NAS freeNAS

Запускаем putty, в строке Host Name указываем имя или IP адрес нашего NAS, порт оставляем по умолчанию — 22:

Настройка putty для подключения к NAS на freeNAS

После нажатия Open появится черное окно (консоль) с предложением ввести имя пользователя и пароль. Введите соответственно root и freenas, если вы не меняли пароль. Если меняли, то введите новый. Обычно смена пароля к Web-интерфейсу приводит и к смене пароля в консоли. Если все верно, вы увидите нечто подобное:

login as: root
root@freeNAS's password:
Last login: Thu Feb  2 18:48:48 2012 from 192.168.33.212
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
        The Regents of the University of California.  All rights reserved.

FreeBSD 8.2-RELEASE-p6 (FREENAS.i386) #0: Wed Jan 18 17:08:54 PST 2012

        FreeNAS nanobsd (c) 2009-2010, The FreeNAS Development Team
        All rights reserved.
        FreeNAS is under the modified BSD license.

        For more information, documentation, help or support, go here:

http://freenas.org

Welcome to FreeNAS
[root@freenas] ~#

Если вы не видите этот экран, то похоже вы где-то допустили ошибку и вам придется начинать все сначала. Тильда и решетка после имени пользователя в квадратных скобках — это приглашение системы для ввода команды. Далее по тексту вам нужно набирать команды после символа решетки.

Теперь самое важное. Я угробил не один час как бороться с тем что система поставленная на Flash носитель (freeNAS может работать как с внешней флешки через USB порт, так и с внутренней, если у вас в качестве системного диска Compact Flash) автоматически создается Read Only! Я не проверял поведение системы на HDD, но даже с HDD следующая команда не будет лишней:

[root@freenas] ~# mount -uw /  

Она ничего не выводит, и если вы не видите сообщения об ошибке, значит все в порядке. Далее введите следующий текст:

[root@freenas] ~# pkg_add -r transmission-daemon  

После этого вы должны увидеть нечто подобное:

Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/Latest/transmission-daemon.tbz... Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/All/transmission-web-2.13.tbz... Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/All/curl-7.21.3.tbz... Done.
pkg_add: warning: package 'curl-7.21.3' requires 'ca_root_nss-3.12.6', but 'ca_root_nss-3.12.9' is installed
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/All/libevent-1.4.14b_1.tbz... Done.
Added group "transmission".
Added user "transmission".
pkg_add: warning: package 'transmission-daemon-2.13' requires 'ca_root_nss-3.12.6', but 'ca_root_nss-3.12.9' is installed

Если у вас нечто похожее — все в порядке. Если вы видите ошибки типа что-то не найдено или что-то запрещено, проверьте подключение NAS к интернету и убедитесь, что вы правильно вводите команды.

Далее нужно скопировать скрипт запуска из того места, куда его установил скрипт инсталлятора в каталог требуемый для запуска из freeNAS. Это связано с тем, что инталлятор transmission предназначен для системы freeBSD, а у нас nanoBSD, да и к тому же урезанная и модифицированная:

[root@freenas] ~# cp /usr/local/etc/rc.d/transmission /conf/base/etc/rc.d/

Теперь, не закрывая окно putty, его можно пока минимизировать, идем в Web-интерфейс NAS и смотрим полный путь расшаренного ресурса, в котором мы создали папку Download:

Смотрим полный путь к ресурсу шары

В моем случае это /mnt/Raid — возвращаемся в putty и вводим следующую команду:

[root@freenas] ~# cd /mnt/Raid/Download

Замените здесь /mnt/Raid на то, что у ваc. Если возникает ошибка — проверьте не создали ли вы папку Download в другой подпапке или используете ли вы заглавную букву D? Далее вводим следующую команду:

[root@freenas] ~# mkdir transmission watch incomplete finished

Эта команда создаст 4 подкаталога в папке Download: transmission, watch, incomplete, finished. В папке transmission мы будем хранить настройки, в папке watch Transmission будет искать файлы торрентов для скачки, в папке incomplete будут незавершенные закачки, тогда как в finished — завершенные.

И в заключении даем пользователю www права на эти каталоги:

[root@freenas] ~# chown -R www:www transmission watch incomplete finished

Теперь у нас есть установленный, но пока еще не сконфигурированный Transmission. Следующий шаг — обеспечение запуска transmission после рестарта системы. Открываем в редакторе следующий файл:

ee /conf/base/etc/rc.conf

Должен открыться файл rc.conf в редакторе ee, к счастью он есть в системе:

#!/bin/sh

# This file is explicitly in the public domain.  You may do with it
# anything you like.

# Fallback settings for FreeNAS.  This file is read in first and is
# then overidden by the values in the database.

# XXX need to clean this up

hostname="freenas"
sshd_enable="YES"

sendmail_enable="NONE"  # Run the sendmail inbound daemon (YES/NO).

dumpdev="NO"            # Device to crashdump to (device name, AUTO, or NO).
background_fsck="NO"

harvest_interrupt="NO"  # Entropy device harvests interrupt randomness
harvest_ethernet="NO"   # Entropy device harvests ethernet randomness
harvest_p_to_p="NO"     # Entropy device harvests point-to-point randomness

synchronous_dhclient="YES"      # Start dhclient directly on configured
file "/conf/base/etc/rc.conf", 48 lines, read only

Стрелкой вниз проматываем до конца и после последней строки печатаем следующий текст:

transmission_enable="YES"
transmission_conf_dir="/mnt/Raid/Download/transmission"
transmission_watch_dir="/mnt/Raid/Download/watch"
transmission_download_dir="/mnt/Raid/Download/finished"
transmission_user="www"

После завершения нажмите Esc, как указано в последней строке редактора и, в открывшемся меню выберите a) leave editor путем нажатия клавиши a, и затем меню a) save changes путем нажатия клавиши a еще раз. Если вдруг вы ввели что-то неверно — нажмите последовательно клавиши Esc, a и b и начните редактировать файл сначала.

Осталось перезагрузить NAS. Это можно сделать либо через Web-интерфейс, либо нажав клавишу 9 на сервере если там есть клавиатура.

После перезагрузки нужно через Web-интерфейс открыть список запущенных процессов (Display System Processes):

Список запущенных процессов

И убедиться что в списке присутствует процесс transmission-daemon. Если его нет, то что-то пошло не так. проверьте еще раз правильно ли вы отредактировали файл /conf/base/etc/rc.conf. Теперь открываем браузер на любой машине в сети и вводим http://<IP адрес или Имя freeNAS сервера>:9091, например у меня этот адрес выглядит так: http://freeNAS:9091 и вы должны увидеть следующий текст:

403: Forbidden Unauthorized IP Address. Either disable the IP address whitelist or add your address to it. If you're editing settings.json, see the 'rpc-whitelist' and 'rpc-whitelist-enabled' entries. If you're still using ACLs, use a whitelist instead. See the transmission-daemon manpage for details.

Не стоит расстраиваться — так и должно быть. Осталось лишь выключить опцию rpc-whitelist-enabled в файле настроек settings.json

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

[root@freenas] ~# /conf/base/etc/rc.d/transmission stop

После этой команды вы увидите следующий текст (PID может отличаться):

Stopping transmission.
Waiting for PIDS: 1990.
[root@freenas] ~#

И теперь можно приступать к редактированию настроек:

ee /mnt/Raid/Download/transmission/settings.json

Найдите эти параметры и измените их на следующие значения

"incomplete-dir": "/mnt/Raid/Download/incomplete",
"incomplete-dir-enabled": true,
"rpc-whitelist-enabled": false,

Если хотите, чтобы вход в Web-интерфейс был с паролем, это например для случая если у вас порт 9091 проброшен через роутер, то можно управлять закачками через интернет, то можно указать пользователя и пароль:

"rpc-authentication-required": true,
"rpc-username": "user",
"rpc-password": "password",

после запуска transmission он поменяет текст пароля на его хэш.

Осталось запустить transmission:

[root@freenas] ~# /conf/base/etc/rc.d/transmission start

Заходим в Web-интерфейс и видим следующую картину — уже можно добавлять торрент-файлы на закачку: :)

Transmission Web-интерфейс

А если войти через Transmission-GUI, то и вообще все очень удобно:

Transmission-GUI

Этот интерфейс еще не так давно был только для Windows, но теперь он кросс-платформенный и со станицы загрузки сайта можно загрузить программу установки для Windows, Mac OS и Linux.

тэги: , , ,
написал creasysee в рубрике

 
Все права защищены. Копирование информации без разрешения автора блога - запрещено.
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org
Яндекс.Метрика Яндекс цитирования Счетчик PR-CY.Rank