OpenWRT: не удалось подключиться к ubus

OpenWRT: не удалось подключиться к ubus

У меня WNDR3800, прошитая версия OpenWRT trunk, а затем сделанная sysupgrade -rна той же машине резервная копия с предыдущего рабочего компьютера. После перезагрузки все нормально (так как многие пакеты не установлены), но как только я пытаюсь подключиться к нему по SSH, он сообщает:

Aiee, segfault! You should probably report this as a bug to the developer
Connection to 192.168.3.1 closed. 

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

root@(none):/# /etc/init.d/dropbear start
root@(none):/# mv: can't remove '/etc/dropbear/dropbear_dss_host_key': Read-only file system
mv: can't remove '/etc/dropbear/dropbear_rsa_host_key': Read-only file system
chown: /etc/dropbear: Read-only file system
chmod: /etc/dropbear: Read-only file system
Failed to connect to ubus

root@(none):/# mount_root
root@(none):/# /etc/init.d/dropbear start
Failed to connect to ubus
Failed to parse json data: unexpected end of data
interface lan has no physdev or physdev has no suitable ip
Failed to connect to ubus
root@(none):/# ifconfig
eth0      Link encap:Ethernet  HWaddr 46:94:FC:XX:XX:XX
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2059 errors:0 dropped:531 overruns:1 frame:0
          TX packets:188 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:371693 (362.9 KiB)  TX bytes:18693 (18.2 KiB)
          Interrupt:4

Я также пробовал firstbootс ним и без него mount_root, в обоих случаях он застревает и ничего не делает.

Так как dropbear отказывается запускаться, я не могу ничего настроить. Есть ли способ вернуться к настройкам по умолчанию или прошить другую версию прошивки?

решение1

Вы можете попробовать метод восстановления с использованием TFTP, как описано для WNDR3700.здесь(это также относится к WNDR3800). Если это не сработает, вы можете использовать последовательную консоль в качестве последнего средства, чтобы напрямую связаться с загрузчиком U-Boot и дать ему команду загрузить образ прошивки с помощью TFTP. Надеюсь, это поможет.

К сожалению, последние дистрибутивы OpenWRT, похоже, во многом сломаны. Они слишком быстро меняют слишком много вещей. На самом деле, я нашел ваш вопрос, когда искал известные ошибки парсера json этой ubusштуки в последней "стабильной" версии 15.05 (не смог найти ничего на форуме/в системе тикетов OpenWRT, связанного с этой конкретной ошибкой), которая ломает что-то тривиальное, например скрипт запуска/остановки брандмауэра и другие команды, например mount.

Что касается меня, то я пока вернусь к 12.09, которая является последней действительно стабильной версией для моих платформ (Netgear WNDR3700, TP-Link WDR4300, PCEngines Alix). Как давний пользователь OpenWRT (10 лет), я обычно пытаюсь сначала исправить ошибки, прежде чем возвращаться к старым версиям, но из-за отсутствия документации новых функций требуется слишком много времени, чтобы разобраться в этой новой и (IMHO) очень сложной структуре.

Связанный контент