Здравствуйте, на написание данной статьи меня натолкнула аналогичная, но в качестве сервера выступала Raspberry Pi. По моему мнению использовать эту маленькую, но при этом достаточно мощную платку в этих целях немного не целесообразно, у многих есть wi-fi роутер с USB портом, а следовательно зачем включать в розетку целый блок питания от компьютера давая при этом пускай и не большой, но все таки расход электроэнергии когда в розетку включено уже все что надо.
В данной статье рассмотрим установку торрентокачалки на практический любой роутер с USB и поддержкой OpenWRT прошивки. В наличии у меня имеется Linksys E3000, но конкретной разницы в установке и настройке OpenWRT нет. Что нам для этого будет нужно:
- Непосредственно роутер с разьемом USB, в идеале конечно с двумя.
- Флешка/ USB HDD произвольного объема под Ваши нужды чем больше тем лучше.
- Буквально пол часа свободного времени чтобы все поставить и настроить.
- Прямые руки.
Установка / настройка OpenWRT
Прежде всего сразу оговорюсь что Вы все делаете на свой страх и риск, так как существует вероятность «окирпичивания» Вашего роутера. Проверяем есть ли Ваш роутер в списке поддерживаемых устройств, для этого заходим на сайт OpenWrt
Жмем на соответствующую ссылку и ищем там свое устройство в списке. В принципе информация там не всегда актуальная, я в этом убедился на своем личном опыте со своим роутером который в этом списке значится как не полностью поддерживаемый, хотя и включен уже в trunk. Желательно запомнить на каком чипсете построен Ваш роутер для облегчения поиска именно Вашей прошивки.
После этого переходим в вкладку «Downloads»
Тут стоит выбрать какую ветку использовать стабильную (Attitude Adjustment) или соответственно «trunk» в папке snapshots, сразу замечу если Ваш роутер более менее новой модели, то скорее всего в стабильной ветке вы его не найдете.
Переходим непосредственно к скачиванию прошивки.
После того как прошивка скачалась переходим к прошивки Вашего роутера. Для этого необходимо зайти в его вэб-интерфейс который обычно располагается по адресу 192.168.1.1 или 192.168.0.1 в зависимости от производителя роутера. Подробнее по процессу прошивки и настройки Wi-Fi и всего остального для конкретного роутера можете обратится в Google, а то эта статься может растянуться до неприличных размеров, мы же остановимся именно на установке и настройке Transmission.
Установка и настройка Transmission
После прошивки роутера запускаем PuTTY если Ваша ОС Windows, если Linux то просто запускаете терминал. В поле адрес вбиваем 192.168.1.1 для PuTTY либо команду telnet 192.168.1.1
для Linux. После успешного подключения переходим к установке / настройке пакетов.
Перед скачиванием пакетов следует маленькое отступление. Так как в роутере физической памяти достаточно мало, колеблется от 4 до 16 мегабайт в зависимости от продвинутости и цены Вашего роутера, нам следует заранее побеспокоится о его увеличении. Ведь мы в любом случае собираемся подключать к нему флешку или жесткий диск так почему бы нам не сделать чтобы роутер грузился непосредственно с раздела на нашем носителе? Давайте сделаем это! Перед всеми манипуляциями с роутером нужно «разбить» Ваш HDD/флешку на несколько разделов.
- Раздел под своп (100-200 МБ будет достаточно) * при использовании HDD, при использовании флешки не рекомендуется, так как имеется хоть и большой но все таки ограниченный запас циклов перезаписи
- Раздел с которой будет грузится роутер (на Ваше усмотрение от 50 МБ и выше) с файловой системой Ext3 или Ext4 * Вот тут то нам и может пригодится вторая флешка, куда лучше разместить загрузочную область и область для хранения закачек на разных устройствах чтобы безболезненно извлекать ее для скидывания информации без выключения роутера.
- Раздел под Ваши загрузки / хранилище все оставшееся место желательно тоже в Ext3/4 если хотите периодический использовать носитель на компьютере то NTFS но приготовьтесь к периодическим ошибкам, так как Linux с этим типом ФС «дружит» довольно посредственно, так же дополнительно придется установить еще один пакет
ntfs-3g
.
Это все конечно можно было сделать и на роутере, но на компьютере это все происходит гораздо быстрее и можно воспользоваться программами с графическим интерфейсом, а не просто командной строкой терминала, что для новичка значительно ускоряет процесс. Как все это проделать на Windows и Linux опять же можно посмотреть на Google по той же причине что и первое обращение к этому источнику.
Приступим. Вводим последовательно команды в терминале
opkg update
opkg install block-mount kmod-usb-core kmod-usb2 kmod-usb-ohci kmod-usb-storage kmod-fs-ext4
Этими командами мы обновили базу репозиториев на роутере и установили необходимые нам пакеты: модули ядра для поддержки USB и модули файловой системы
block info
И ищем наши разделы на флешке / HDD * Вы же не забыли подключить Вашу флешку / HDD к роутеру правда?
mount /dev/sdaX /mnt
mkdir /tmp/cproot
mkdir /home
mount --bind / /tmp/cproot
tar -C /tmp/cproot -cvf — . | tar -C /mnt -xvf — sync; umount /mnt
umount /tmp/cproot
Здесь взамен sdaX
надо выбрать тот раздел с которого мы собираемся производить загрузку в дальнейшем. Все остальные команды предназначены для копирования загрузочного раздела роутера на флешку / HDD.
block detect > /etc/config/fstab
Данная команда записывает все найденные разделы для автоматического подключения в файл /etc/config/fstab
. Дальше нам надо немого подредактировать этот файл к виду:
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '0'
option check_fs '0'config 'mount'
option target '/'
option uuid '7d3abfaf-493a-46bb-9730-1d793ecb9783'
option enabled '1'config 'mount'
option target '/home'
option uuid '7d3abfaf-463a-46db-9730-1d793ecb4593'
option enabled '1'config 'swap'
option uuid '76d36596-5710-4b77-a3a7-02a66d469750'
option enabled '1'
Открываем данный файл для редактирования:
vi /etc/config/fstab
Как пользоваться данным редактором можно посмотреть тут или опять же обратится в Google.
Перезагружаем роутер. Опять заходим в консоль и проверяем все ли правильно подмонтировалось:
root@OpenWrt:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 2758072 118004 2501828 5% /
/dev/root 2048 2048 0 100% /rom
tmpfs 63340 76 63264 0% /tmp
tmpfs 512 0 512 0% /dev
/dev/sda1 2758072 118004 2501828 5% /
Тут следует обратить внимание на то чтобы rootfs
совпадал по параметрам с /dev/sda1
, если это так то у нас все получилось. Переходим к следующему пункту.
Установка torrent клиента Transmission.
opkg update
opkg install transmission-daemon transmission-cli transmission-web transmission-remote
/etc/init.d/transmission enable
Открываем файл настроек клиента и редактируем под свои нужды:
vi /etc/config/transmission
config transmission
option enable 1 # непосредственно включает клиент
option config_dir '/etc/transmission' # расположение фалов настроек клиента
option alt_speed_down 50 # ограничение скорости
option alt_speed_enabled false
option alt_speed_time_begin 540
option alt_speed_time_day 127
option alt_speed_time_enabled false
option alt_speed_time_end 1020
option alt_speed_up 50
option bind_address_ipv4 '0.0.0.0'
option bind_address_ipv6 '::'
option blocklist_enabled false
option dht_enabled true
option download_dir '/home/' # директория для загрузок
option encryption 0 # шифрование
option incomplete_dir '/home' # директория для не завершенных загрузок
option incomplete_dir_enabled false # включение/выключение директории для незавершенных загрузок
option lazy_bitfield_enabled true
option lpd_enabled false
option message_level 2
option open_file_limit 32
option peer_limit_global 240
option peer_limit_per_torrent 60
option peer_port 51413
option peer_port_random_high 65535
option peer_port_random_low 49152
option peer_port_random_on_start false
option peer_socket_tos 0
option pex_enabled true
option port_forwarding_enabled false
option preallocation 1
option proxy ""
option proxy_auth_enabled false
option proxy_auth_password ''
option proxy_auth_username ''
option proxy_enabled false
option proxy_port 80
option proxy_type 0
option ratio_limit 2.0000
option ratio_limit_enabled false
option rename_partial_files true
option rpc_authentication_required false
option rpc_bind_address '0.0.0.0'
option rpc_enabled true
option rpc_password ''
option rpc_port 9091
option rpc_username ''
option rpc_whitelist '127.0.0.1,192.168.1.*'
option rpc_whitelist_enabled false
option script_torrent_done_enabled false
option script_torrent_done_filename ''
option speed_limit_down 100
option speed_limit_down_enabled false
option speed_limit_up 40
option speed_limit_up_enabled true
option start_added_torrents false
option trash_original_torrent_files false
option umask 18
option upload_slots_per_torrent 14
option watch_dir_enabled false
option watch_dir ''
Запускаем и проверяем:
/etc/init.d/transmission start
Запускаем браузер и вводим 192.168.1.1:9091 если все работает то на этом все.
Если данная статья кого то заинтересует готов так же рассказать о настройке «файлопомойки», поднятия VPN сервера, настройка IPTV на OpenWRT.
Предвижу мнение многих что на Хабре да и во всем интернете полно подобных инструкций, но все же постарался максимально подробно и просто расписать весь процесс установки и настройки. Так же недавно в OpenWRT немного изменился принцип использование флешки в качестве root раздела, сейчас эта информация уже доступна в вики проекта но только на английском языке.
UPD: В этой статье не описана настройка подключения интернета от Вашего провайдера, так как слишком много нюансов настроек. Без подключения роутера к интернету естественно ничего не выйдет.
Автор: nightmare04