Изображение Натана Е и Авиада Равива
Если вы еще этого не сделали, будьте уверены и ознакомьтесь с предыдущими статьями в серии:
- Превратите свой домашний маршрутизатор в супермощный маршрутизатор с DD-WRT
- Как установить дополнительное программное обеспечение на вашем домашнем маршрутизаторе (DD-WRT)
- Как удалить рекламу с помощью Pixelserv на DD-WRT
Предполагая, что вы знакомы с этими темами, продолжайте читать. Имейте в виду, что это руководство является немного более техническим, и новички должны быть осторожны при модификации своего маршрутизатора.
Прелог
Хотя передача не является единственным клиентом BiTorrent, который может быть установлен из репозитория OpenWRT OPKG, из-за того, что он является стандартом De facto для всех основных дистрибутивов Linux (например, Ubuntu и Mint), он стабилен, активно поддерживается и очень универсальна. В рамках своей универсальности его можно дистанционно контролировать с помощью ряда программ, в том числе, по крайней мере, двух Windows и веб-интерфейса.
В этом руководстве мы: Установите передачу на маршрутизаторе, загрузите ее автоматически при загрузке маршрутизаторов и сделайте ее удаленно контролируемой в локальной сети с помощью Windows-машины и веб-интерфейса.
Предпосылки и предположения
- Предполагается, что вы не попали в эту статью наугад и что вы уже следовали процедурам, описанным в разделе «Как установить дополнительное программное обеспечение на вашем домашнем маршрутизаторе (DD-WRT)», выполняя предпосылки этого руководства в этом процессе.
- это сильно рекомендуется подключить HardDrive (HD) к маршрутизатору, а для приведенных ниже инструкций предполагается, что у вас есть.
- Предполагается, что указанный HD уже отформатирован. Примечание: при разделении и форматировании (1, 2) HD выходит за рамки данного руководства, поскольку DD-WRT от версии 17798 поддерживает все распространенные файловые системы, такие как FAT32 + ext2 / 3 и NTFS, вам не нужно делать что-нибудь особенное.
С этим с дороги …
Давайте взломать
Включить UPnP
UPnP - это механизм, с помощью которого программы в вашей сети могут запрашивать у маршрутизатора автоматическое переадресацию портов. это позволит вам освободить вас от открытия / пересылки портов вашего маршрутизатора на демона передачи самостоятельно.
Для этого перейдите на веб-интерфейс маршрутизатора:
- Перейдите в «NAT / QoS» - «UPnP».
- Для «UPnP Service» выберите переключатель «enable».
-
При желании выберите переключатель «включить» для «Очистить порт вперед при запуске».
- Сохранить и применить настройки.
Установите HardDrive (HD)
Если вы еще этого не сделали, подключите HD, используя веб-интерфейс маршрутизатора. Для этого перейдите на веб-интерфейс маршрутизатора:
- На вкладке «Службы» перейдите на вкладку «USB».
-
Выберите «Включить радиокнопки» для «Поддержка основного USB», «Поддержка USB-хранилища» и «Автоматическая установка привода».
- Сохранить и применить настройки.
Установка пакета
Мы установим пакет daemon, выпустив с терминала:
opkg update; opkg install transmission-daemon
Конфигурация пакета
Теперь, когда установлена передача, запустите демон один раз, чтобы создать для нас шаблон файла настроек по умолчанию. Мы запустим его на переднем плане (флаг «-f»), поэтому его легче увидеть, когда он стабилизируется и уходит, как только он появится. Выпуск:
transmission-daemon -f
Как только программа будет работать около 10 секунд, она должна быть готова выйти из нее, нажав «Ctrl + C».
Справочники
Создайте каталоги, в которых будут храниться указатели, части, конфигурации и загрузки торрентов. Для моей настройки это:
mkdir -p /mnt/sda_part1/torrents/parts/ mkdir -p /mnt/sda_part1/torrents/config/
Примечание. Вышеприведенное предполагает, что один HD подключен к маршрутизатору и что он имеет разметку раздела с файловой системой в первом разделе. Хотя это очень распространенная настройка по умолчанию, в соответствии с вашим разделением и форматированием вашего HD, это может быть изменено.
Скопируйте файл конфигурации, созданный при первом запуске демона:
cp /tmp/root/.config/transmission-daemon/settings.json /mnt/sda_part1/torrents/config
Примечание: несмотря на представление, это одна линия продолжения.
Команда ниже добавит сеть 192.168.11. * К параметру rpc-whitelist. Это позволит нам подключиться с любого компьютера в локальной сети (используя удаленную программу gui) к демону маршрутизатора.
sed -i 's/127.0.0.1/127.0.0.1,192.168.11.*/g' /mnt/sda_part1/torrents/config/settings.json
Примечание1: несмотря на представление, это одна линия продолжения. Примечание2: Если ваша сетевая подсеть отличается, вам придется соответствующим образом отрегулировать.
Выполните демон снова, на этот раз направьте его на использование альтернативного каталога конфигурации (флаг «-g»).
transmission-daemon -f -g /mnt/sda_part1/torrents/config
Вы должны увидеть, что демон запущен, и если вы посмотрите внимательно, вы должны увидеть, что пути, используемые программой, также изменились на новый. Оставьте демон открытым на данный момент, мы будем нуждаться в нем и работаем для сегмента графического интерфейса.
Удаленный графический интерфейс пользователя
Для управления демоном есть две программы Windows: Transmisson-remote-gui & Transmission-remote-dotnet. Оба кажутся полностью признанными и активно поддерживаются.Хотя вы можете выбрать любой из них, мы будем использовать «передачу-удаленный-dotnet» ради этой статьи, потому что другие, чем косметические различия, они практически идентичны.
Мы будем устанавливать клиент, а затем использовать его для изменения настроек на сервере, так как это проще, чем вручную редактировать файл настроек.
Настройка локальных настроек
- Загрузите последнюю версию Transmission-remote-dotnet с сайта проекта и установите ее как обычно.
-
Запустите программу и перейдите в «Локальные настройки» либо из меню «Параметры», либо с помощью значка гаечного ключа.
-
Перейдите на вкладку «Настройки серверов».
- Нажмите «Добавить сервер».
- Затем нажмите только что добавленное имя «Server 0», чтобы мы могли изменить его настройки.
- В поле хоста введите IP-адрес вашего маршрутизатора.
-
Нажмите «Сохранить».
-
Подключитесь к демону, запущенному на вашем маршрутизаторе, нажав «Файл» -> «Подключиться» или значок подключения.
Настройка удаленного демона
-
Нажмите «Параметры». Выберите «Удаленные настройки».
- В поле скачать в текстовое поле поставьте: «/ mnt / sda_part1 / торренты»
- Установите флажок «Неполная загрузка в».
- В незавершенном текстовом поле поставьте: «/ mnt / sda_part1 / торренты / части»
-
Измените раскрывающийся список Шифрование, чтобы выбрать «Предпочтительный».
- Нажмите «Сохранить».
Вот и все, вы должны иметь возможность использовать программу, как и любой другой клиент BiTorrent, который вы установили бы на свой компьютер.
Включить веб-интерфейс (необязательно)
Хотя использование одной из вышеперечисленных программ удаленного gui было бы достаточно, вы можете захотеть, чтобы получить доступ к демонам, не будучи привязанным к программе на конкретном устройстве. Это связано с тем, что с сегодняшней плеврой персональных устройств становится сложной задачей следить за тем, что доступно там, и просто указывать веб-браузер на маршрутизатор (если вы являетесь лояльным пользователем DD-WRT) второй характер к вам к настоящему времени. Кроме того, наличие веб-интерфейса позволяет легко добавлять закачки, пока вы «в дороге». Несмотря на то, что доступ к общедоступному веб-графическому интерфейсу выходит за рамки настоящего руководства, мы покажем, как установить и настроить веб-интерфейс, и вы можете более подробно разрешить публичную доступность.
Установите пакет, выпустив в терминал:
opkg update; opkg install transmission-web
Передача автоматически ищет веб-интерфейс в нескольких местах по умолчанию. Мы выполнили передачу в режиме «переднего плана» (флаг -f) на последнем шаге, чтобы вы могли видеть эти местоположения, если пытаетесь получить доступ к веб-интерфейсу. Хотя сейчас вы потерпите неудачу, вы увидите, что одно из этих мест - «/tmp/root/.local/share/transmission/». К счастью для нас, это местоположение находится в RAM-роутере, который доступен для чтения. Таким образом, все, что нам действительно нужно сделать, создает символическую связь между этим местоположением в ОЗУ и местоположением, в котором веб-интерфейс был установлен как часть пакета на JFFS. Для этого создайте местоположение (вручную на данный момент), выпустив:
mkdir -p /tmp/root/.local/share/transmission/
Создайте символическую ссылку, еще раз вручную, выпуская:
ln -s /jffs/opt/usr/share/transmission/web/ /tmp/root/.local/share/transmission/web
Примечание: несмотря на представление, это одна линия продолжения.
Попробуйте снова получить доступ к веб-интерфейсу по адресу: https:// your-router's-ip-or-dns: 9091. Для моей настройки это было бы, с IP: «https://192.168.11.1:9091» или с локальным именем DNS: «https://buffalo.aviad.lan: 9091».
Если все пошло хорошо, и вы добавляете что-то для загрузки, вы должны увидеть что-то вроде:
Создание и использование файла свопинга (необязательно)
«Файл свопинга» подобен «файлу страницы Windows», а на самом деле в прошлом Microsoft также называла его «своп-файлом». При написании этой статьи я нашел одну ситуацию, в которой демона столкнулась с утечкой памяти и сбоем (см. Раздел замечаний). Чтобы попытаться решить эту проблему, я настроил Swap (как в виде раздела, так и в виде файла). Хотя это только продлевало неизбежное в отношении утечки памяти, потому что я уже вложил в это усилия, чтобы сделать это простой процедурой, я не вижу причин, чтобы не передавать информацию. С учетом сказанного, как указано в заголовке, этот шаг необязательный, и я могу поручиться, что демон работает нормально уже более недели подряд и без перерывов, работая хотя бы на 5 разных торрентах. Но опять же, мой маршрутизатор имеет 128 МБ ОЗУ (что считается большим в кругах маршрутизатора), поэтому вам, возможно, придется выполнить этот шаг, если ваш маршрутизатор голоден. Также не должно быть штрафа, если вы решите внедрить Swap, несмотря на то, что не нуждаетесь в нем, поскольку Linux не должен пытаться использовать Swap только потому, что он есть (в отличие от Windows).
Хотя в Linux принято использовать раздел «Swap», для этого потребуется один раз выполнить разбиение перед рукой или, что еще хуже, изменить текущий макет. Поскольку это может быть неудобно, если у вас уже есть данные на HD, использование файла в уже существующем формате диска намного проще. Более того, я не обнаружил существенных различий в производительности при сравнении двух схем использования Swap.
Мы создадим файл размером 256 МБ для работы. Чтобы сделать это, «DD» - файл, созданный в терминале:
dd if=/dev/zero of=/mnt/sda_part1/swap.page bs=1M count=256
ПРЕДУПРЕЖДЕНИЕ: Эта команда («DD») чрезвычайно мощна и потенциальноразрушительный, Директива «Выходной файл» (из) не должна восприниматься легко, так как неправильный параметр может привести к потере данных.
Установите пакет, который позволит нам создавать свопы, выпуская:
opkg update; opkg install swap-utils
После установки swap-utils создайте файл подкачки, выпуская:
mkswap /mnt/sda_part1/swap.page
Теперь проверьте, что система может подразумевать файл подкачки, изучая использование памяти с помощью «свободной» команды.
free
Обратите внимание, что параметры в строке «Swap» - это все нули.
Теперь активируйте файл подкачки, выпуская:
swapon /mnt/sda_part1/swap.page
И снова выпустите бесплатную команду:
free
Теперь вы должны увидеть, что параметры в строке «Swap» изменились, чтобы отразить, что в настоящее время имеется всего 256 МБ доступного пространства подкачки.
Запуск автоматического запуска
Для того, чтобы демон передачи был автоматически запущен с перезагрузкой маршрутизатора, нужно только добавить его к скрипту «geek-init», который был установлен в статье OPKG. Откройте скрипт geek-init в редакторе по вашему выбору:
vi /jffs/geek/etc/geek-init.sh
Если вы выполнили все шаги этого руководства (включая дополнительные), вы можете добавить приведенный ниже фрагмент сценария к концу файла geek-init:
logger_general 'transmission setup-er: setting 'home'' export HOME='/tmp/root' logger_general 'transmission setup-er: Creating the directory and symbolic-link for the web interface' mkdir -p /tmp/root/.local/share/transmission/ [ ! -L /tmp/root/.local/share/transmission/web/web ] && ln -s /jffs/opt/usr/share/transmission/web/ /tmp/root/.local/share/transmission/web logger_general 'activating swap' swapon /mnt/sda_part1/swap.page logger_general 'transmission setup-er: Starting the transmission-daemon with the alternate configuration directory.' /opt/usr/bin/transmission-daemon -g /mnt/sda_part1/torrents/config logger_general 'transmission executed'
Однако, если вы пропустили необязательные шаги, в то время как не должно быть никаких проблем с тем, чтобы оставить вышеуказанный «код» как есть, вы можете захотеть извлечь что-либо лишнее. Фактически, если вы пропустили оба дополнительных шага и отказались от комментариев, вам нужно будет только добавить:
/opt/usr/bin/transmission-daemon -g /mnt/sda_part1/torrents/config
Заключительные замечания
- Хотя это может быть просто FUD, лучше помнить, что BiTorrent стал чем-то вроде цели судебного разбирательства, и что снова и снова говорят, что сеть тщательно изучается. Пример с сайта https://www.youhavedownloaded.com/. Поэтому вам рекомендуется использовать этот торрент-клиент, как и у нас, для торрентов.
- Во время написания этой статьи я обнаружил один торрент, который может привести к сбою процесса демона передачи из-за утечки памяти. Я описал проблему на форуме OpenWRT, однако на момент написания этой статьи на мой град не было ответа.
Можете ли вы иметь плавный переход в передачу:)
Потому что мы знаем, что это временный, момент … мы знаем, что это превратится в ASH.