Установка Optware на роутер начинается с проверки двух условий: прошивка устройства должна поддерживать запуск сторонних скриптов (например, DD-WRT, Tomato, OpenWrt или модифицированные прошивки Keenetic), а к USB-порту должна быть подключена флешка, отформатированная в ext2 или ext3. Без выполнения этих требований команда установки просто не отработает: пакетному менеджеру ipkg некуда будет распаковать файлы, и вы получите ошибку записи в каталог /opt.

Optware — это репозиторий пакетов программного обеспечения, адаптированных для встраиваемых Linux-систем с ограниченными ресурсами. Он позволяет превратить обычный роутер в мини-сервер: запустить торрент-клиент Transmission, файловый сервер Samba, Lighttpd или Dropbear. В этой статье разберём подготовку накопителя, монтирование раздела, установку системы пакетов и типичные ошибки, с которыми сталкиваются при первой настройке.

Что такое Optware и когда он нужен

Стандартная прошивка роутера содержит только базовый набор функций. Optware расширяет её за счёт пакетного менеджера ipkg (или ipkg-opt), который работает по принципу apt в Debian: вы указываете имя пакета, а система сама скачивает его из репозитория вместе с зависимостями. Все файлы устанавливаются в каталог /opt, не затрагивая системный раздел прошивки.

Типичные сценарии использования:

  • 📥 запуск торрент-клиента Transmission или rtorrent прямо на роутере;
  • 📁 организация сетевого хранилища через Samba или NFS;
  • 🌐 поднятие лёгкого веб-сервера Lighttpd с PHP;
  • 🔐 установка OpenVPN-сервера или Dropbear для SSH-доступа;
  • 📊 мониторинг сети через vnStat и подобные утилиты.

Стоит учитывать, что проект Optware развивался давно, и часть оригинальных репозиториев со временем стала недоступна. Для современных устройств чаще рекомендуют его «наследника» — Entware, который ставится аналогично и поддерживается активнее. Однако на старых роутерах с DD-WRT и Tomato классический Optware по-прежнему рабочий вариант.

Подготовка USB-накопителя

Первый шаг — отформатировать флешку или внешний диск в файловую систему ext2/ext3. Файловые системы FAT32 и NTFS не подходят: они не поддерживают символьные ссылки и права доступа Unix, без которых большинство пакетов работать не будет. Разметку удобнее всего выполнять на компьютере с Linux или через Live-USB, либо утилитами вроде GParted.

Рекомендуется создать на накопителе два раздела: первый — под /opt объёмом от 512 МБ, второй — под данные или swap. Метка раздела (label) упростит автоматическое монтирование. Например, задайте первому разделу метку optware — тогда многие прошивки смогут подключать его по имени.

💡

Используйте качественную флешку: дешёвые накопители быстро деградируют от постоянных циклов записи логов и торрент-кэша, что приводит к сбоям пакетов и зависаниям роутера.

⚠️ Внимание: форматирование уничтожит все данные на накопителе. Перед разметкой скопируйте нужные файлы, и убедитесь, что выбрали именно флешку, а не системный диск компьютера.

Подключение и монтирование раздела /opt

Вставьте подготовленную флешку в USB-порт роутера и включите поддержку USB в веб-интерфейсе прошивки. В DD-WRT это разделы Services → USB, где активируются Core USB Support, USB Storage Support и Automatic Drive Mount. Точные названия пунктов зависят от версии прошивки, поэтому сверяйтесь с документацией вашей сборки.

📊 На какой прошивке вы устанавливаете Optware?
DD-WRT
Tomato / FreshTomato
Keenetic (Voxel/мод)
OpenWrt

После перезагрузки проверьте, что раздел смонтирован. Подключитесь к роутеру по Telnet или SSH и выполните:

mount | grep /opt

df -h

Если в выводе видна строка вида /dev/sda1 on /opt type ext3 — накопитель подключён правильно. Если каталог /opt пуст или монтирование отсутствует, привяжите раздел вручную командой mount /dev/sda1 /opt и добавьте эту строку в скрипт автозапуска прошивки (в DD-WRT — Administration → Commands → Save Startup).

☑️ Проверка перед установкой Optware

Выполнено: 0 / 5

Установка Optware через скрипт

На большинстве прошивок установка сводится к запуску готового bootstrap-скрипта, который скачивает ipkg-opt и базовый набор библиотек. Классический вариант для DD-WRT выглядит так:

cd /tmp

wget http://www.3iii.dk/linux/optware/optware-install-ddwrt.sh -O - | tr -d '\r' > /tmp/optware-install.sh

sh /tmp/optware-install.sh

Имейте в виду: адреса сторонних скриптов и зеркал репозиториев со временем меняются, а часть старых ссылок уже не работает. Если wget возвращает ошибку 404, найдите актуальный установочный скрипт на форуме вашей прошивки или используйте репозиторий Entware — для него установщик обычно доступен на официальном ресурсе проекта.

После завершения скрипта обновите список пакетов и убедитесь, что пакетный менеджер работает:

/opt/bin/ipkg update

/opt/bin/ipkg list | head

Вывод длинного списка доступных пакетов означает, что репозиторий подключён корректно. Если команда ipkg не находится, проверьте переменную PATH: каталоги /opt/bin и /opt/sbin должны быть добавлены в неё через стартовый скрипт.

Почему ipkg не находится после установки

Чаще всего переменная окружения PATH не включает /opt/bin. Добавьте в скрипт автозапуска строку export PATH=/opt/bin:/opt/sbin:$PATH и перезагрузите роутер либо выполните эту команду в текущей сессии вручную.

Установка и настройка пакетов

Работа с Optware строится по стандартной схеме пакетных менеджеров. Основные команды:

  • 🔍 ipkg list | grep название — поиск пакета в репозитории;
  • 📦 ipkg install transmission — установка пакета с зависимостями;
  • 🗑️ ipkg remove название — удаление пакета;
  • 🔄 ipkg update && ipkg upgrade — обновление списка и установленных пакетов.

Конфигурационные файлы пакетов размещаются в /opt/etc, а стартовые скрипты служб — в /opt/etc/init.d. Скрипты с префиксом S (например, S90transmission) запускаются автоматически при загрузке, если это предусмотрено логикой прошивки. Права на исполнение проверяются командой ls -l /opt/etc/init.d.

Для наглядности сравним классический Optware и Entware:

КритерийOptwareEntware
Пакетный менеджерipkg / ipkg-optopkg
Актуальность репозиториевЧасть зеркал недоступнаПоддерживаются активнее
Каталог установки/opt/opt
Типичные прошивкиDD-WRT, TomatoKeenetic, OpenWrt, Tomato
Команда установки пакетаipkg installopkg install
💡

Optware и Entware используют один и тот же каталог /opt, поэтому ставить их одновременно на один накопитель нельзя — пакеты и библиотеки будут конфликтовать.

Типичные ошибки и их решение

Ошибка can't create directory /opt/...: Read-only file system означает, что раздел смонтирован только для чтения или не смонтирован вовсе. Проверьте вывод mount и перемонтируйте раздел с правами записи. Если файловая система повреждена, выполните проверку e2fsck /dev/sda1 при отмонтированном разделе.

Сбой wget: bad address при скачивании пакетов указывает на проблему с DNS на самом роутере. Пропишите рабочий DNS-сервер в настройках прошивки и проверьте разрешение имён командой nslookup. Также встречается ситуация, когда после перезагрузки роутера пакеты «пропадают» — это верный признак того, что монтирование /opt не прописано в автозапуске.

⚠️ Внимание: не устанавливайте пакеты во внутреннюю флеш-память роутера вне каталога /opt. Объём jffs-раздела мал, и его переполнение может привести к сбоям прошивки вплоть до невозможности загрузки устройства.

Отдельный источник проблем — нехватка оперативной памяти. Тяжёлые пакеты вроде Transmission с большим числом закачек могут исчерпать RAM слабого роутера. В таком случае создайте на накопителе swap-раздел или swap-файл и подключите его через стартовый скрипт.

💡

Держите под рукой резервную копию каталога /opt/etc: если флешку придётся переформатировать, вы быстро восстановите настройки пакетов, не настраивая всё заново.

Проверка работоспособности после установки

Финальный этап — убедиться, что система переживает перезагрузку. Перезагрузите роутер, подождите полной загрузки и выполните mount | grep /opt и ipkg list-installed. Оба вывода должны быть корректными без ручного вмешательства. Затем запустите установленную службу, например /opt/etc/init.d/S90transmission start, и проверьте её веб-интерфейс или лог.

Если служба стартует вручную, но не поднимается автоматически, проблема в порядке выполнения скриптов автозапуска прошивки: монтирование /opt должно происходить раньше, чем вызов скриптов из /opt/etc/init.d. Добавьте паузу sleep 5 в стартовый скрипт — это частое и безобидное решение гонки при загрузке.

💡

Рабочая установка Optware определяется тремя признаками: /opt монтируется автоматически, ipkg видит репозиторий, службы стартуют после перезагрузки без ручных команд.

Частые вопросы

Можно ли установить Optware на стоковую прошивку роутера?

На большинстве заводских прошивок — нет, поскольку они не позволяют запускать сторонние скрипты и монтировать разделы произвольно. Исключение — устройства Keenetic с соответствующими компонентами системы и модифицированными сборками, где предусмотрена поддержка Entware/Optware. В остальных случаях требуется альтернативная прошивка вроде DD-WRT или Tomato.

Чем Optware отличается от Entware и что выбрать?

Оба проекта решают одну задачу и используют каталог /opt, но Entware поддерживается активнее и его репозитории доступнее. Для нового устройства разумнее начать с Entware; классический Optware оправдан на старых роутерах, где инструкции и скрипты заточены именно под него.

Почему после перезагрузки роутера пакеты перестают работать?

Наиболее вероятная причина — раздел с Optware не монтируется автоматически в /opt. Проверьте скрипт автозапуска прошивки и добавьте в него команду монтирования, а также экспорт PATH с каталогами /opt/bin и /opt/sbin.

Подойдёт ли флешка в FAT32 или NTFS для Optware?

Нет. Эти файловые системы не поддерживают символьные ссылки и Unix-права, необходимые большинству пакетов. Используйте ext2 или ext3; ext4 на старых ядрах роутеров может не поддерживаться, поэтому ext2/ext3 — более безопасный выбор.

Опасна ли установка Optware для роутера?

Сама установка происходит на USB-накопитель и не изменяет системный раздел прошивки, поэтому риск минимален. Опасны смежные действия: переполнение jffs-раздела, некорректные скрипты автозапуска и нестабильные флешки. Перед экспериментами сохраните резервную копию настроек прошивки.