Код возврата 255 при выполнении opkg install чаще всего означает, что пакетный менеджер вообще не смог начать установку: команда завершилась на этапе подключения к репозиторию, разрешения имени или проверки зависимостей, ещё до загрузки самого пакета. Это типичная ситуация на роутерах с OpenWrt, Padavan, Entware и других встраиваемых Linux-системах, где opkg является стандартным менеджером пакетов.
Проблема почти всегда решается без перепрошивки устройства — достаточно последовательно проверить сеть, DNS, списки репозиториев и свободное место. Ниже разберём диагностику по шагам: от простых проверок до более глубокого анализа, чтобы вы могли найти именно свою причину, а не действовать вслепую.
Что означает код ошибки 255 в opkg
В Unix-подобных системах код возврата 0 означает успех, а ненулевые коды — различные виды сбоев. Значение 255 — особый случай: его возвращает оболочка, когда произошла ошибка, выходящая за рамки стандартных кодов программы, либо когда сама команда завершилась аварийно. Применительно к opkg это обычно сигнал о том, что процесс установки оборвался на ранней стадии.
Важно понимать: код 255 сам по себе не указывает конкретную причину — это лишь маркер того, что нужно смотреть текст ошибки, выведенный перед завершением команды. Именно строки вроде Failed to download, wget returned или Unknown package содержат реальную диагностическую информацию.
Поэтому первое действие при любой ошибке opkg — внимательно перечитать вывод терминала, а не повторять команду в надежде, что «само пройдёт».
Шаг 1. Проверка интернет-соединения и DNS
Самая частая причина сбоя — роутер или устройство не имеет доступа в интернет либо не может разрешить доменное имя репозитория. Проверьте соединение простой командой:
ping -c 3 8.8.8.8Если пакеты не проходят — проблема в самом соединении: проверьте WAN-интерфейс, кабель, настройки провайдера. Если ping по IP работает, переходите к проверке DNS:
ping -c 3 downloads.openwrt.orgОтсутствие ответа при работающем ping по IP означает сбой DNS-резолвинга. В этом случае проверьте содержимое файла /etc/resolv.conf — там должен быть указан рабочий DNS-сервер. При необходимости добавьте строку nameserver 8.8.8.8 и повторите попытку.
💡Если устройство получает настройки по DHCP, ручная правка /etc/resolv.conf может перезаписываться при перезапуске сети. Постоянный DNS лучше задавать в конфигурации сетевого интерфейса или DHCP-клиента.