USB-root bootet nicht mehr

ozett

Neuer User
Mitglied seit
25 Jul 2006
Beiträge
85
Punkte für Reaktionen
0
Punkte
6
hi,
habe auf einer 3170 (Firmware-Version 49.04.57) ein freetz-image (devel-2370) nur mit usb-root auf die box geladen. alles ok. einen 1gb stick mit ext2 formatiert, das "rootfs" unterverzeichnis angelegt und die dateien aus /build/modified/filesystem hineinkopiert. chmod gemacht (wie hier beschrieben) und das usb-root nicht über telnet sondern über das freetz webgui eingebunden. dabei (ich habs jetzt nicht mehr vor augen) wohl auch irgendwie sowas dismount des flash angeklickt. Ergebnis:
box bootet nur mit dauerhafter Powerled. sonst nix. winzig kurz geht die info-led an, weil ich sicher vorher konfiguriert habe dass sie beim einstecken von usb-devices aufleuchten soll. dann bleibt die powerled an, die box ist nicht erreichbar.

avm-image recover gemacht. box wieder ok. freetz-image (das gleiche wie zuvor) erneut eingespielt. -> box bleibt mit powerled-on unerreichbar. und erneut: avm-image recover gemacht. box wieder ok. werkeinstellungen hergestellt.
jetzt nochmal freetz? ich bin noch nicht sicher... also, augen zu: freetz-image eingespiel (immer das gleiche) und box bleibt mit dauerhafter powerled unterreichbar. also wieder recovern, und dann... nie mehr freetz?

Was ist das denn? werden bestimmte bereiche mit image-recover nicht gelöscht und freetz greift dann wieder darauf zu? kann man da was machen?

grüsse,
ozett
 
Zuletzt bearbeitet:
Hi !

Ich habe leider nicht vor Augen was du genau getan hast, genau wie du. Hier ein paar Sachen die uns und dir noch helfen koennten:

Aus deiner Beschreibung entnehme ich, dass du USB-Root via /etc/init.d/rc.usbroot versucht hast. Ist dies richtig?

Diese Skript veändert nämlich die Kernelparameter in /proc/sys/urlader/environment um einen alternativen Init-Prozess zu starten. Diese stehen in den Zeilen kernel_args und kernel_args1. AFAIK reicht es aus diese Variablen mit
Code:
echo "kernel_args " > /proc/sys/urlader/environment
echo "kernel_args1 " > /proc/sys/urlader/environment
wieder zu loeschen,.
Die Frage fuer mich ist warum die original AVM-Firmware bzw. Kernel diese Zeilen ignoriert.

Die Modifikationen, die du dort mit eingestecktem USB-Stick durchgeführt hast, sollten eigentlich veranlassen, wenn kein Stick eingesteckt ist sollte die FB vom Flash gestartet werden. Hast du dies mal probiert?

Auf manchen Boxen funktiniert rc.usbroot nicht zuverlässig, der z.B. Speedport W900V gehoert dazu. Ich weis nicht wie es sich bei deiner Box verhält.

BTW wie hast du "das Rootfs auf die Box geladen"? Koenntest du da etwas präziser sein. Evtls sind dabei die x-Rechte der ausfuehrbaren Dateien auf dem Stcik kaputt gegangen.

Mehr spontane Ideen fallen mir gerade nicht ein.

mfg
 
hi,
also erst dachte ich, das läuft sicher ohne weiteres. und dann schaut man nicht immer sooo ganz genau hin. also ich habe ein freetz-devel-image in dem nur usb-root aktiviert war geflashed. soweit ok. dann den stick erstellt, wie oben angegeben. stick in die box gesteckt, ins webgui von freetz gegangen und alles im webgui gemacht.

Aus deiner Beschreibung entnehme ich, dass du USB-Root via /etc/init.d/rc.usbroot versucht hast. Ist dies richtig?

also hier: nein.

im freetz-webgui wurde der stick als /dev/sda1 angezeigt. (jetzt habe ich das leider nicht mehr so vor augen und ein drittes/viertes mal flashen und recovern...ich weiss nicht). den pfad mit /rootfs/ ergänzt und als rootfs -pfad angegeben und unten irgenwas mit "root-ersetzten" angehakt. so, nachdem alles schön ausgefüllt war im webgui übernehmen und reboot geklickt. mit beschriebenen effekt.

die box ist jetzt weider da. ich kann mal in den kernel args nachsehen...(bin nun etwas irritiert. geht mit avm-image? telnet scheint nicht aktiviert... habe das jetzt mal mit pseudoimage von hier versucht..was aber nicht geht... hhmm? lösung hier (box muss per dsl zum download ans internet, dann gibts telnet (auch das geht erst nicht, dauert ein paar minuten..)

update: kernel args gelöscht. waren:
Code:
kernel_args     init=/etc/init.d/rc.usbroot
kernel_args1    usbroot=/dev/sda1:ext2:/dev/sda1/rootfs ro,noatime,nodiratime


und:
wenn kein Stick eingesteckt ist sollte die FB vom Flash gestartet werden. Hast du dies mal probiert?

klar. ohne anderem ergebnis als oben...

Auf manchen Boxen funktiniert rc.usbroot nicht zuverlässig
jetzt sehen wir langsam ob die 3170 auch dazu gehört...

BTW wie hast du "das Rootfs auf die Box geladen"? Koenntest du da etwas präziser sein.

klar. mit dem midnight-commander die dateien von /build../filesystem nach /stick/rootfs kopiert. dann auf kommandozeile als root den befehl chown -R ... (wie in Tips zu USB beschrieben) ausgeführt (habe das aber auch in forum mit schliessendem sternchen als
Code:
chown -R 0.0 /media/usb/rootfs/*
gesehen. macht das n unterschied). stick gerade nochmal an einem suse-linux gemountet und reingeguckt. sieht soweit ohne fehler aus...

hmmmmm?

grüsse,
ozett
 
Zuletzt bearbeitet:
Hi !

Hmm, das ist seltsam.
Um den Teufelskreis vielleicht nochmal rekonstruirbar zu machen wuerde ich versuchen, eine original AVM-FW drauf zuspielen und die Freetz Einstellungen via telnet interface zudiscarden.

Also Kernel_args blank machen und ggf. Freetz Konfig killen, was
wenn mich nicht alles taeuscht via
Code:
mknod /var/flash/freetz c 240 60
: > /var/flash/freetz
machbar ist.
(habe gerade kein bastel box zur Hand).

Ist das geschft und eine Freetz FW bootet wieder, solltest du nochmal gucken an welchem Punkt es genau hängt.
BTW ich wurst noch nicht das USB-Root ein Webinterface hat.

Vielleicht haben noch andere Leute Ideen.

cya
 
hi,

Code:
BTW ich wurst noch nicht das USB-Root ein Webinterface hat.
erst ab devel-trunk 2402?

kernel-args gelöscht nach dsl anschluss und telnetzugang. jetzt kann ich keine neuen freetze mehr aufspielen. upload hängt länger (eher ewig). versuche nochmal den letzten löschvorschlag nach erneutem recovern, mal sehen ...

update:
erst nach erneutem recovern war firmware upload wieder möglich. habe jetzt ein grösseres (incl. openvpn) genommen und box reagiert träge. webinterface kommt nicht ... aus-und wieder einschalten hat geholfen...und für weitere freetz-firwareeinspielungen immer erst recovern. stimmt was mit dem speicher nicht? auch beim freetz-machen mit make menuconfig erhalte ich immer zu grosse images. nur manuelle änderungen mit einer hier im forum veröffentlichten .config bleiben klein genug zum flashen. das ist irgendwo noch irgendwas ...

danke erstmal,
ozett
 
Zuletzt bearbeitet:
Vielleicht treffe ich den roten Faden im Thread nicht ganz, aber ich habe alle paar Wochen die gleichen Probleme. Ich muss dann immer den USB-Stick neu formatieren und die Daten nochmal neu übertragen, anschließend ist aller wieder perfekt. Das Problem daran ist, dass das ext2 read-write eingebunden wird und wenn die Box rebootet (wird, z.B. durch Stromausfall oder Watchdog-Reset, dann wird das Filesystem nicht sauber geschlossen. Da hilft nur ein Filesystem-Check beim Booten, was im neueren Freetz-Devel mit gemacht wird, wenn e2fsck mit im Flash liegt. Ich muss auch dringend mal updaten ;-)
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.