OpenWRT: impossibile connettersi a ubus


0

Ho un WNDR3800, versione del trunk lampo di OpenWRT, e poi ho fatto a sysupgrade -r dal precedente backup di lavoro sulla stessa macchina. Dopo il riavvio tutto è normale (dal momento che molti pacchetti non sono installati), ma quando provo a connettermi tramite SSH riporta:

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

Dopo di che l'ho messo in modalità failsafe, collegato via telnet e ho provato diversi comandi:

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

Inoltre ho provato firstboot con o senza mount_root, in entrambi i casi si blocca e non fa nulla.

Dal momento che dropbear si rifiuta di iniziare, non riesco a configurare nulla. C'è un modo per ripristinare le impostazioni predefinite o flashare un'altra versione del firmware?

Risposte:


1

È possibile provare il metodo di recupero utilizzando TFTP come descritto per WNDR3700 Qui (si applica anche al WNDR3800). Se questo non funziona, è possibile utilizzare la console seriale come ultima risorsa per parlare direttamente con il bootloader U-Boot e istruirlo per caricare un'immagine del firmware tramite TFTP. Spero che questo ti aiuti.

Sfortunatamente, le recenti distribuzioni OpenWRT sembrano essere infrante in molti modi. Cambiano troppe cose troppo velocemente. In realtà, ho trovato la tua domanda mentre cercavo errori noti del parser json di questo ubus cosa nell'ultima versione "stabile" 15.05 (non ho trovato nulla nel forum OpenWRT / sistema di ticket relativo a quel particolare errore), che rompe qualcosa di banale come lo script di avvio / arresto del firewall e altri comandi come ad esempio mount.

Per quanto mi riguarda, tornerò al 12.09 per ora, che è l'ultima versione veramente stabile per le mie piattaforme (Netgear WNDR3700, TP-Link WDR4300, PCEngines Alix). Come utente di vecchia data di OpenWRT (10 anni), di solito cerco di correggere gli errori prima di tornare alle versioni precedenti, ma a causa della mancanza di documentazione delle nuove funzionalità ci vuole troppo tempo per scavare in questo nuovo e (IMHO) quadro molto complesso.


Grazie per la tua risposta. È l'unico router che posso usare ora, quindi devo tenerlo in esecuzione (attraverso non posso configurarlo) e cercare di trovare un adattatore seriale al più presto. Inoltre, devo aprire un biglietto per OpenWRT?
Jamesits

Uso gli adattatori da Robotshop , ne hanno diversi diversi, ad es. per 3,3 V e / o 5 V TTL a USB. È necessaria la versione 3.3V per WNDR3800. Per la parte software che puoi usare cu (1) su Linux e OS / X o c-kermit, minicom ecc. per collegarsi all'adattatore seriale tramite USB. Per quanto riguarda il segfault di dropbear (il demone SSH) Ho trovato questo vecchio ticket, forse vuoi aprirne uno nuovo se il bug può essere riprodotto con l'ultimo trunk: dev.openwrt.org/ticket/10339
LBC
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.