Установка OpenWrt в VirtualBox

ZAZ-965

Десептикон
OpenWrt это специализированный Linux дистрибутив предназначенный в основном для роутеров, но благодаря низким системным требованиям и не очень сложным действиям по сборке собственной прошивки, подходящий для создания домашних IoT серверов, умных колонок, интернет радио и т.д. По умолчанию используется простая система инициализации на основе init скриптов, в качестве командного процессора выбран BusyBox, за систему управления пакетами отвечает opkg, веб сервер uhttpd поддерживает язык программирования lua. И все это успешно работает на 300 МГц процессоре с 32 мегабайтами памяти.
Для знакомства с OpenWrt проще всего установить его в VirtualBox. Скачиваем по адресу Downloads – Oracle VM VirtualBox VirtualBox и пакет расширений для него. С установкой VirtualBox никаких проблем быть не должно, у меня установлена версия 5.2, но можно установить последнюю версию 6.0 (расскажете потом, что там сломали нового). Скачиваем образ OpenWrt по адресу Index of /releases/18.06.2/targets/x86/generic/ файл combined-ext4.img.gz. Распаковываем его архиватором и получаем IMG файл размером приблизительно 272 МБ.
Для подключения его к VirtualBox потребуется преобразовать его в формат VDI, понятный виртуальной машине. Выполнить это можно только из командной строки. Находясь в каталоге с IMG файлом (у меня это E:\Virtual\VDI) указываем полный путь к программе VBoxManage.exe из пакета VirtualBox (у меня на Windows 7 x86 это C:\progra~1\oracle\virtualbox\VBoxManage.exe)
Bash:
E:\Virtual\VDI>C:\progra~1\oracle\virtualbox\VBoxManage.exe convertfromraw --format VDI openwrt-18.06.2-x86-generic-combined-ext4.img openwrt-18.06.2.vdi
Converting from raw image file="openwrt-18.06.2-x86-generic-combined-ext4.img" to file="openwrt-18.06.2.vdi"...
Creating dynamic image with size 285736960 bytes (273MB)...
В VirtualBox создаем новую виртуальную машину с именем, например, MegaVolt OpenWrt, типом Linux и версией Other Linux (32 bit). Объем памяти указываем 128 МБ.В качестве жесткого диска выбираем ранее конвертированный файл openwrt-18.06.2.vdi. Производим дополнительные настройки : система\процессор – включаем PAE\NX, сеть\адаптер1 – сетевой мост и имя вашей сетевой карты.
Запускаем виртуальную машину, через 10 секунд система загружена, жмем Enter для открытия консоли и OpenWrt встречает нас заставкой и предложением сменить пароль пользователя root. Вводим команду смены пароля passwd, вводим и подтверждаем новый пароль. Я ввел простой пароль и получил предупреждение Плохой пароль: слишком короткий.
passwd.PNG

Настраиваем сеть. Вводим команду редактирования файла сетевых настроек
Bash:
vi /etc/config/network
Запускается великий и ужастный редактор vi. Для перехода в режим редактирования нажимаем клавишу i (в строке состояния первый сивмол отображается i - интерактивный режим). Изменяем адрес на свободный в вашей сети, добавляем адрес шлюза и ДНС сервера (я указываю адрес Google DNS 8.8.8.8). Выходим из режима редактирования нажав Esc (в строке состояния первый сивмол отображается - командный режим).
edit_network2.PNG

Вводим команду сохранения изменений
Bash:
:wq
Перезапускаем сетевой интерфейс с новыми настройками
Bash:
/etc/init.d/network restart
Проверяем работу сети
Bash:
ping 8.8.8.8
ping google.com
Обновляем список доступных пакетов
Bash:
opkg update
Устанавливаем файловый менеджер Midnight Commande и программу для просмотра запущенных процессов htop
Bash:
opkg install mc htop
Для работы с OpenWrt через SSH устанавливаем putty Download PuTTY: latest release (0.70)
Первичная настройка завершена. Если это краткое объяснение было непонятно - задавайте вопросы.
 

NikitOS

Розбійник
Администратор
Модератор
Девелопер
Вики-Писатель
Vim.... Брр..
А там nano нет?:)
 

ZAZ-965

Десептикон
Vim не Брр, а Ммм :giggle:
И там по умолчанию не vim, а vi - встроенный редактор в статически собранный BusyBox размером ~300 килобайт. Есть и vim и nano и joe, но они зависят от libncurses, terminfo. Но это увеличивает размер прошивки на целых огромных 400-500 килобайт, непозволительная роскошь для роутеров с 4 мегабайтами флеша. После настройки сети я первым делом установил mc со встроенным редактором.
 
Сверху