Блог did5.ru

Про АйТи и около айтишные темы

Как подключить флешку к TP-Link TL-MR3020

3 комментария

После перепрошивки TL-MR3020 на OpenWrt сталкиваешься с первой проблемой – нехватка памяти. У MR3020 всего 4МБ памяти, а нам доступно меньше мегабайта. Есть решение – подключить флешку и перенести все файлы на нее, чтобы роутер загружался с флешки. Это позволит ставить дополнительные пакеты и хранить много разнообразных данных.

Я взял флешку объемом 2ГБ, для роутера ее хватит с запасом. У MR3020 всего один порт USB, я планирую подключить несколько устройств USB, поэтому буду использовать USB-хаб на 8 портов с отдельным блоком питания, а роутер запитаю прямо через этот хаб.

usb openwrt mr3020 8 Как подключить флешку к TP Link TL MR3020

Переносить файлы на флешку надо сразу после перепрощивки роутера на OpenWrt, т.к. места хватит только на установку необходимых пакетов для подключения флешки. Для установки пакетов понадобится выход в интернет. Приступим…

1. Установка необходимых пакетов

opkg update
opkg install kmod-usb-storage
opkg install kmod-fs-ext4
opkg install block-mount
opkg install fdisk

2. Подготовка флешки

На этом этапе будем создавать на флешке два раздела (основной и swap) и форматировать их. Из-за нехватки места на роутере не получится установить пакет e2fsprogs для форматирования разделов, поэтому эту часть придется делать на любом другом компе с linux.

Если под рукой нет полноценого компа с линуксом, то можно развернуть ubuntu на виртуальной маишне (рассказывать про это не буду, т.к. в интеренете полно инструкций).

Втыкаем флешку в ПК с линуксом и определяем, какое она определилась:

ls /dev

myWPEdit Image 1413745102 Как подключить флешку к TP Link TL MR3020

В роутере обычно это будет /dev/sda1, но в ПК может быть /dev/sdb1 или /dev/sdc1 и т.д. (возьмем на основу – /dev/sda1). Далее запускаем fdisk, удаляем существующие разделы, создаем новые. UPDATE На скриншоте ошибка, надо вместо fdisk /dev/sda1 запускать fidsk /dev/sda. И в результате должно получиться /dev/sda1 и /dev/sda2, а не как на скриншоте /dev/sda1p1 и /dev/sda1p2.

myWPEdit Image 1413744869 Как подключить флешку к TP Link TL MR3020

В конце вводим команду w для сохранения изменений и выходим из fdisk командой q.

Форматируем разделы:

sudo mkfs.ext4 -L over /dev/sda1
sudo mkswap -f -L swap /dev/sda2

ключ -L – задаем метку, over для основного раздела и swap для второго.

3. Подключаем флешку

Правим файл конфигурации /etc/config/fstab, чтобы система грузилась с флешки. Правим, как показано на скриншоте и сохраняем файл.

myWPEdit Image 1413745605 Как подключить флешку к TP Link TL MR3020

Переносим системные файлы на флешку. Для этого проверяем, что флешка смонтировалась (/dev/sda1) и запускаем копирование:

tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xvf -

Перезагружаем роутер:

reboot

myWPEdit Image 1413745822 Как подключить флешку к TP Link TL MR3020

4. Ставим веб-сервер LightHTTPD вместо uHTTPd

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

opkg update
opkg install lighttpd lighttpd-mod-cgi luci-mod-admin-full luci-theme-openwrt libiwinfo libiwinfo-lua

Вносим изменения в файл конфигурации веб-сервера /etc/lighttpd/lighttpd.conf. Раскомментируем следующие строки:

server.modules = (
    "mod_cgi",
)

Изменим каталог по умолчанию с www на /www/home:

server.document-root = "/www/home"

Изменим порт веб-интерфейса с 80 на 8080:

$SERVER["socket"] == ":8080" {
    server.document-root = "/www/"
    cgi.assign = ( "luci" => "/usr/bin/lua" )
}

Сохраняем изменения в файле /etc/lighttpd/lighttpd.conf.

Создаем каталог /www/home и тестовый файлв в нем:

mkdir /www/home
echo "It works!" >> /www/home/index.html

Останавливаем и отключаем веб-сервер uHTTPd и запускаем LightHTTPD:

/etc/init.d/uhttpd stop
/etc/init.d/uhttpd disable
/etc/init.d/lighttpd start
/etc/init.d/lighttpd enable

Проверяем. Админка теперь на порту 8080, как и должно быть.

myWPEdit Image 1413748175 Как подключить флешку к TP Link TL MR3020

А на 80 порту наша заглушка.

myWPEdit Image 1413748282 Как подключить флешку к TP Link TL MR3020

Нашли опечатку в тексте? Пожалуйста, выделите ее и нажмите Ctrl+Enter! Спасибо!


Хотите поблагодарить автора за эту заметку? Вы можете это сделать!


Автор: did5

20 Окт 2014 в 3:55

Рубрика: IT

Метки: , ,

3 комментария на «Как подключить флешку к TP-Link TL-MR3020»

Вы можете подписаться на RSS-ленту комментариев или оставить

  1. Здравствуйте, почему-то не ставиться fdisk (пробою в 14.07 ), нету comgt для модема. Короче что-то не могу осилить.

    Дмитрий

    28 Ноя 2014 в 14:51

  2. Добрый день!

    Просьба автора помочь:

    в Linux не силен, по-этому использую web-интерфейс роутера. Не получается установить все 4 пакета из первого пункта, т.к. не хватает памяти. После установки kmod-usb-storage, kmod-fs-ext4 и block-mount остается 68 KB и fdisk уже не ставится. Какие из пакетов стандартной сборки openWRT Barrier Breaker 14.07 (r42625) можно удалить без особого вреда?

    Алекей

    11 Янв 2015 в 17:30

  3. Про OpenWRT Barrier Breaker 14.07 написал новую заметку — Установка OpenWrt 14.07 на TP-LINK MR3020 и подключение флешки

    did5

    20 Янв 2015 в 10:20

Ваш отзыв