[Problem] Freetz lässt sich nicht installieren

magic-andy

Neuer User
Mitglied seit
22 Mrz 2006
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Hallo,

ich komm bei meiner neuen Fritzbox 7490 international nicht weiter.
Ich habe ein Freetz-Image erzeugt und will es über das AVM Update installieren.
Das Image wird auch anscheinend auf die Fritzbox geladen. Dann startet die Fritzbox neu und dann ist wieder die original AVM-Firmware drauf.

Hab schon mit dem AVM-Recovery-Tool das aktuelle AVM-Image installiert.
Danach nochmal mit dem Freetz-Image probiert. Trotzdem keine Änderung.
Auch habe ich schon verschiedene Einstellungen versucht.
Freetz mit Pakete, ohne jegliche Pakete und alternativer Kernel.

Jemand eine Idee?

Gruß Andreas
 
Jemand eine Idee?
Telnet-Session starten und die Ausgabe von /var/install auf der Console beobachten (oder sogar das Update von Hand anstoßen, es ist ein einfaches "tar -x -C / -f image" für das Image und ein anschließender Aufruf von "/var/install") ... wenn es ein Problem beim Flashen geben sollte, steht das dort drin.
 
Hab versucht den Telnet zu starten.
Am Telefon sagt er auch, das der Telnet gestartet wurde.
Jedoch bei Eingabe von telnet 192.168.178.1 kommt nur ein "Connection refused"

Mit dem update-script, wo auch den telnet starten sollte, kommt die gleiche Fehlermeldung

Was mir noch auffällt ist, dass die Info-LED bei einem normalem Update langsam blinkt.
Bei dem Freetz-Image und dem Pseudo-Image fürs Telnet aber viel schneller blinkt.
 
Zuletzt bearbeitet:
Mit dem update-script, wo auch den telnet starten sollte, kommt die gleiche Fehlermeldung
Sorry, aber das ist so herrlich unpräzise, daß es schon fast weh tut ... welches "update-script" hast Du dafür denn verwendet?

Es gibt ältere "Pseudo-Images" (die nicht mehr funktionieren können, das gilt aber nicht erst seit kurzem), meines Wissens auch ein "telnet on"-(Perl-)Skript im Freetz und ein relativ aktuelles Pseudo-Image für 06.30-Versionen, welches sich nach Kräften bemüht, nach einem solchen abgebrochenen Update die Box wieder in einen funktionsfähigen Zustand zu versetzen, ohne das eigentlich fällige "reboot" auszuführen.

Ein wenig "Stöbern" hier im IPPF sollte zum Thema "Telnet verwenden ab 06.30" genug Informationen liefern ... wenn Du dann auch noch dazu schreibst, was genau denn bei Dir nicht funktioniert (das meint in diesem Falle in erster Linie, welches "Pseudo-Image" Du verwendest und woher Du es hast, optimalerweise zeigst Du uns sogar den Inhalt der dort enthaltenen /var/install), dann kann man Dir bestimmt auch irgendwie helfen.
 
Ich hab das Script "install_telnet.tar" aus diesem Post

http://www.ip-phone-forum.de/showthread.php?t=280058&p=2104297&viewfull=1#post2104297

benutzt.

Bei der Fritzbox blinkt die Info während dem Update schnell, dann rebootet die Box und bei einem telnet kommt dann connection refused.

Inhalt der /var/install

Code:
#!/bin/sh
# author / code source: [email protected]
#
# V1.03 / 02.08.2015
#
# Prepare and starting telnetd
# Tested on: 7360, 7360SL, 7390, 7490, 7272
# For every step a function will be defined
# They are called at the end of the script
#
# start ctlmgr if stopped
rsctl () {
$(ps |  grep -v grep | grep -q ctlmgr) ||  ctlmgr
}
#
# prepare and start telnetd
rstd () {
export PATH=/bin:/sbin:/usr/bin:/usr/sbin
# based on code by PeterPawn ip-phone-forum.de
cd /var/tmp
cp -R /usr/sbin /var/tmp/usersbin
mount -o bind usersbin /usr/sbin
ln -sf /bin/busybox usersbin/telnetd
ln -sf /bin/busybox usersbin/inetd
ln -sf /bin/busybox usersbin/brctl
ln -sf /bin/busybox usersbin/chroot
/usr/sbin/telnetd -l /sbin/ar7login -p 23
}
#
# starting aura, usb, dsld, capitcp, inetd, aha, phonebook, faxd, voipd and telefon
rssys () {
/bin/sh /etc/hotplug/aura start
/bin/sh /etc/init.d/rc.usbhost start
/sbin/udevadm trigger
/bin/sh /etc/init.d/rc.net
/bin/sh /etc/init.d/S48-configd
/bin/sh /etc/init.d/S73-capitcp
/bin/sh /etc/init.d/S75-inetd
/bin/sh /etc/init.d/S78-aha
/usr/bin/pbd
/usr/bin/faxd -a
/bin/voipd
/usr/bin/telefon -a127.0.0.1
}
#
# stop delayed reboot from firmwarecfg
cleanup () {
rpid_name=/var/run/delayed_reboot.pid
if test -e $rpid_name; then
        rpid=$(cat $rpid_name)
        rm $rpid_name 2>/dev/null
        [ ${#rpid} -gt 0 ] && kill -TERM $rpid
fi
/bin/rm /var/tmp/fw_ip
/bin/rm /var/tmp/firmware_update_started
/bin/rm /var/tmp/firmware_stream_result
/bin/rm /var/tmp/firmware_error_status
/bin/rm /var/tmp/install_out.log
/bin/rm /var/tmp/install_error.log
# Webinterface warning message clean up
echo "clear_id 87" > /proc/tffs
}
#
# Now calling the functions
rsctl
rstd
rssys
cleanup


#
# kill firmwarecfg or box will reboot after about one minute
/bin/update_led_off
/usr/bin/killall firmwarecfg

exit 1
 
Ok, das wäre ein aktuelles Pseudo-Image für eine 7490 und funktioniert zumindest bei der deutschen Version 06.30 bei den meisten.

Welche Firmware-Version (Branding ist ja sicherlich "avme") hat die Box denn derzeit installiert?

Wenn es die 06.30 sein sollte, könntest Du (auch wenn ich dann immer noch den Grund für das "fail" des Pseudo-Images nicht verstehe) mit der älteren Version 06.20 aus dem "belgium"-Verzeichnis auf dem AVM-Server (ftp://ftp.avm.de/fritz.box/fritzbox...490.en-de-es-it-fr-pl.06.20.recover-image.exe) noch einmal einen Recovery-Versuch unternehmen. Diese Version hat dann den Telnet-Daemon noch "scharfgeschaltet" (ggf. per Telefon-Code aktivieren) und sollte Dir den Zugang zur Box ermöglichen. Von dort aus kannst Du dann auch das oben angesprochene Update beobachten oder es von Hand ausführen.

Die Recovery-Version sollte eigentlich dieselbe sein, wie sie für die anderen internationalen Modelle bei der 06.20 verwendet wurde. Warum AVM den Inhalt des "belgium"-Verzeichnisses nicht ebenfalls aktualisiert hat, kann man nur raten ... ich würde auf eine "Zertifizierung" der Firmware durch Belgacom tippen und einen Link von denen auf irgendwelche Stellen auf dem AVM-FTP-Server annehmen, den man nicht ins Leere laufen lassen will.
 
Geliefert wurde die Fritzbox mit der Firmware 6.20.
Da funktionierte das Freetz-Update nicht.

Darum hab ich sie dann mit der aktuellen Recovery auf die Firmware 6.30 gebracht.

Deinen Vorschlag werde ich dann erst morgen testen.
Ich hoffe, das ich dann mehr berichten kann.

Erstmal vielen Dank und gute Nacht.
 
Es wäre auch denkbar, daß AVM bei der internationalen 06.30 die Installation von unsignierter Firmware komplett unterdrückt ... ich habe bei einem früheren Test mal ähnliches festgestellt, das dann aber nicht weiter verfolgt, weil mich die internationale Version nicht so sehr interessierte.

Das kriegt man am ehesten heraus, wenn man mal ein funktionierendes Pseudo-Image (nur mit irgendeiner simplen Aktion und nicht gleich mit dem Versuch des kompletten "Pseudo-Neustarts") mit der 06.20i austestet und dann genau dasselbe Image bei einer 06.30i anwendet.

Eigentlich würde man zwar eine passende Fehlermeldung (nicht signierte Firmware) in so einem Falle erwarten, aber so ein Neustart hat ja auch seinen Reiz ...
 
Jetzt weiter getestet.

  • Downgrade auf 6.20
  • Telnet aktiviert und Verbindung hergestellt

Ausgabe von Telnet während des "erfolglosen" Updates

Code:
Trying 192.168.178.1...
Connected to 192.168.178.1.
Escape character is '^]'.


BusyBox v1.20.2 (2014-09-26 13:25:19 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
disable start/stop characters and flowcontrol
#   PID USER       VSZ STAT COMMAND
    1 root      1312 S    init
    2 root         0 SW   [kthreadd]
    3 root         0 SW   [migration/0]
    4 root         0 SW   [ksoftirqd/0]
    5 root         0 SW   [watchdog/0]
    6 root         0 SW   [migration/1]
    7 root         0 SW   [ksoftirqd/1]
    8 root         0 SW   [watchdog/1]
    9 root         0 SW   [yield_w/0]
   10 root         0 SW   [yield_w/1]
   11 root         0 SW   [yield_w/0]
   12 root         0 SW   [yield_w/1]
   13 root         0 SW   [events/0]
   14 root         0 SW   [events/1]
   15 root         0 SW   [khelper]
   18 root         0 SW   [async/mgr]                                                                                                                                   
   34 root         0 SW   [sync_supers]                                                                                                                                 
   35 root         0 SW   [bdi-default]                                                                                                                                 
   37 root         0 SW   [kblockd/0]                                                                                                                                   
   38 root         0 SW   [kblockd/1]                                                                                                                                   
   58 root         0 SW   [kswapd0]                                                                                                                                     
   59 root         0 SWN  [ksmd]                                                                                                                                        
   60 root         0 SW   [aio/0]                                                                                                                                       
   61 root         0 SW   [aio/1]                                                                                                                                       
   75 root         0 SW   [pm_info]                                                                                                                                     
   82 root         0 SWN  [avm_debugd]                                                                                                                                  
  108 root         0 SW   [mtdblockd]                                                                                                                                   
  117 root         0 DW   [ifx_ssc]                                                                                                                                     
  128 root         0 SW   [l2tp]                                                                                                                                        
  132 root         0 SW   [tffsd]                                                                                                                                       
  133 root         0 SW   [avmnet_workqueu]                                                                                                                             
  134 root         0 SW   [PhyWaspHeartbea]
  140 root         0 SW   [avmnet_timer]
  142 root         0 SW<  [loop0]
  179 root         0 SW   [yaffs-bg-1]
  368 root         0 SW   [cleanup_timer_f]
  447 root         0 SW   [yaffs-bg-1]
  461 root         0 SW   [capi_pipew/0]
  462 root         0 SW   [capi_pipew/1]
  463 root         0 SW   [capi_schedw/0]
  464 root         0 SW   [capi_schedw/1]
  465 root         0 SW   [pcmlink_ctrl]
  468 root         0 SW   [capitransp]
  469 root         0 SW   [flush-31:0]
  472 root         0 SW<  [avm_dect_thread]
  548 root      1308 S    tail -f /nohup.out
  550 root      1312 S <  /sbin/udevd --daemon
  565 root         0 SW   [khubd]
  736 root      2612 S    /bin/configd
  854 root      6316 S    dsl_control -i04_00_04_00_0C_01_04_07 -f/var/dsl/dsp
  864 root      4136 S    dsl_monitor -d
  991 root      2840 S    avmipcd
  994 root      3356 S    l2tpv3d
 1001 root     15976 S    ctlmgr
 1005 root      8584 S    upnpd
 1007 root         0 SW   [autbtex]
 1008 root         0 SW   [pmex_ne]
 1009 root         0 SW   [pmex_fe]
 1014 root      4204 S    multid
 1025 root      3536 S    upnpdevd
 1037 root      4632 S    wland -B
 1060 root      4520 S    dsld -i -n
 1062 root         0 SW   [wlan_com_tx_thr]
 1094 root      5896 S    pbd
 1108 root      6232 S    telefon a127.0.0.1
 1113 root      1308 S    telnetd -l /sbin/ar7login
 1124 root      6028 S <  voipd
 1136 root      1312 S    /usr/sbin/inetd
 1161 root      1312 S <  /sbin/udevd --daemon
 1168 root      1312 S <  /sbin/udevd --daemon
 1173 root      1512 S    hostapd -g /var/run/hostapd/global
 1175 root      8904 S    /usr/bin/aha
 1182 root         0 SW   [tgt_alive_poll_]
 1216 root      1180 S    /bin/run_clock -c /dev/tffs -d
 1223 root      1312 S    init
 1251 root      1524 S    wpa_supplicant -g /var/run/wpa_supplicant/global -D
 1293 root      2704 S    /sbin/nmbd
 1310 root      3664 S    usermand
 1312 root      3404 S    contfiltd
 1456 root      1328 S    -sh
 1508 root      4976 S    /cgi-bin/firmwarecfg
 1513 root      1324 S    {prepare_fwupgra} /bin/sh /bin/prepare_fwupgrade sta
 1516 root      1308 R    ps
Thu Jan  1 01:02:23 CET 1970
Thu Jan  1 01:02:23 CET 1970
disable watchdog
killall: printserv: no process killed
rmmod: can't unload 'vfat': unknown symbol in module, or unknown parameter
rmmod: can't unload 'fat': unknown symbol in module, or unknown parameter
rmmod: can't unload 'nls_cp437': unknown symbol in module, or unknown parameter
rmmod: can't unload 'nls_iso8859_1': unknown symbol in module, or unknown parameter
rmmod: can't unload 'sd_mod': unknown symbol in module, or unknown parameter
rmmod: can't unload 'ext2': unknown symbol in module, or unknown parameter
rmmod: can't unload 'usb_storage': unknown symbol in module, or unknown parameter
rmmod: can't unload 'scsi_mod': unknown symbol in module, or unknown parameter
XHCI USB 3.0 Host stopped
cat: can't open '/proc/bus/usb/devices': No such file or directory
ls: /var/USB-proc-bus-usb-*: No such file or directory
Thu Jan  1 01:02:28 CET 1970
  PID USER       VSZ STAT COMMAND
    1 root      1312 S    init
    2 root         0 SW   [kthreadd]
    3 root         0 SW   [migration/0]
    4 root         0 SW   [ksoftirqd/0]
    5 root         0 SW   [watchdog/0]
    6 root         0 SW   [migration/1]
    7 root         0 SW   [ksoftirqd/1]
    8 root         0 SW   [watchdog/1]
    9 root         0 SW   [yield_w/0]
   10 root         0 SW   [yield_w/1]
   11 root         0 SW   [yield_w/0]
   12 root         0 SW   [yield_w/1]
   13 root         0 SW   [events/0]
   14 root         0 SW   [events/1]
   15 root         0 SW   [khelper]
   18 root         0 SW   [async/mgr]
   34 root         0 SW   [sync_supers]
   35 root         0 SW   [bdi-default]
   37 root         0 SW   [kblockd/0]
   38 root         0 SW   [kblockd/1]
   58 root         0 SW   [kswapd0]
   59 root         0 SWN  [ksmd]
   60 root         0 SW   [aio/0]
   61 root         0 SW   [aio/1]
   75 root         0 SW   [pm_info]
   82 root         0 SWN  [avm_debugd]
  108 root         0 SW   [mtdblockd]
  117 root         0 DW   [ifx_ssc]
  128 root         0 SW   [l2tp]
  132 root         0 SW   [tffsd]
  133 root         0 SW   [avmnet_workqueu]
  134 root         0 SW   [PhyWaspHeartbea]
  140 root         0 SW   [avmnet_timer]
  142 root         0 SW<  [loop0]
  179 root         0 SW   [yaffs-bg-1]
  368 root         0 SW   [cleanup_timer_f]
  447 root         0 SW   [yaffs-bg-1]
  461 root         0 SW   [capi_pipew/0]
  462 root         0 SW   [capi_pipew/1]
  463 root         0 SW   [capi_schedw/0]
  464 root         0 SW   [capi_schedw/1]
  465 root         0 SW   [pcmlink_ctrl]
  468 root         0 SW   [capitransp]
  469 root         0 SW   [flush-31:0]
  472 root         0 SW<  [avm_dect_thread]
  548 root      1308 S    tail -f /nohup.out
  550 root      1312 S <  /sbin/udevd --daemon
  565 root         0 SW   [khubd]
  736 root      2608 S    /bin/configd
  854 root      6316 S    dsl_control -i04_00_04_00_0C_01_04_07 -f/var/dsl/dsp
  864 root      4136 S    dsl_monitor -d
  991 root      2840 S    avmipcdandy@VPCEH1M1E:~$ 
  994 root      3356 S    l2tpv3d
 1001 root     15956 S    ctlmgr
 1005 root      8604 S    upnpd
 1007 root         0 SW   [autbtex]
 1008 root         0 SW   [pmex_ne]
 1009 root         0 SW   [pmex_fe]
 1014 root      4204 S    multid
 1025 root      3536 S    upnpdevd
 1037 root      4632 S    wland -B
 1060 root      4520 S    dsld -i -n
 1062 root         0 SW   [wlan_com_tx_thr]
 1094 root      5896 S    pbd
 1108 root      6232 S    telefon a127.0.0.1
 1113 root      1308 S    telnetd -l /sbin/ar7login
 1124 root      6028 S <  voipd
 1136 root      1312 S    /usr/sbin/inetd
 1161 root      1312 S <  /sbin/udevd --daemon
 1168 root      1312 S <  /sbin/udevd --daemon
 1173 root      1512 S    hostapd -g /var/run/hostapd/global
 1182 root         0 SW   [tgt_alive_poll_]
 1216 root      1180 S    /bin/run_clock -c /dev/tffs -d
 1223 root      1312 S    init
 1251 root      1524 S    wpa_supplicant -g /var/run/wpa_supplicant/global -D
 1293 root      2704 S    /sbin/nmbd
 1310 root      3664 S    usermand
 1312 root      3404 S    contfiltd
 1456 root      1328 S    -sh
 1508 root      4976 S    /cgi-bin/firmwarecfg
 1513 root      1332 S    {prepare_fwupgra} /bin/sh /bin/prepare_fwupgrade sta
 1652 root      1308 R    ps
Thu Jan  1 01:02:28 CET 1970
TERMINATING inetd capiotcp_server pbd faxd telefon dtrace printserv smbd nmbd mailer
pbd[1094]: received signal Terminated
Jan  1 01:02:28 pbd[1094]: terminating.
telefon: SIGTERM received!
Jan  1 01:02:28 telefon[1108]: wdt release failed
killall: dect_manager: no process killed
telefon: SIGCHLD PID 1671 received!
Thu Jan  1 01:02:32 CET 1970
TERMINATING audiod pictured feedd playerd
Thu Jan  1 01:02:32 CET 1970
TERMINATING configd
Thu Jan  1 01:02:32 CET 1970
TERMINATING lltdd maild voipd usermand mediasrv avmlogd tr069discover contfiltd fritznasdb dsld avmike
Jan  1 01:02:36 dsld[1060]: Signal: termination
Jan  1 01:02:36 dsld[1060]: early_autodetection ready
Jan  1 01:02:36 dsld[1060]: start register_vccs_and_ifaces_on_kdsld for sync_dsl
Jan  1 01:02:36 dsld[1060]: setup_dslchannel: ifname=
Jan  1 01:02:36 dsld[1060]: kdsld_preregister_vcc: predsl1
Jan  1 01:02:36 dsld[1060]: kdsld_preregister_vcc: kdsld_vccidx=0
Jan  1 01:02:36 dsld[1060]: notify_due_to_pm
Jan  1 01:02:36 dsld[1060]: verbose: DISABLED
Jan  1 01:02:38 dsld[1740]: stopped.
Thu Jan  1 01:02:39 CET 1970
Thu Jan  1 01:02:39 CET 1970
[1807]++ ++ do internalflash 'prepare unmount'... ++ ++
[1807]++ ++ ...done ++ ++
Connection closed by foreign host.



Gerade nochmal mit einer zweiten 7490 DE getestet, ob ich da Freetz drauf bekomme.
Gleiches Problem.
Updateverlauf sieht normal aus (bis auf das schnellere Blinken der Info), aber nach Reboot alte Firmware.
 
Zuletzt bearbeitet:
Meine Schuld, ich habe das zu sehr zusammengefaßt in meiner Beschreibung ...

Beim Update über das GUI wird das CGI-Binary "firmwarecfg" aufgerufen, das seinerseits das hochgeladene Image in "stdin" zur Verfügung hat und als erstes einmal Platz in der Box schaffen will, damit das Image ausgepackt werden kann. Dazu ruft es "prepare_fwupgrade start" auf (in Deiner ps-Ausgabe oben sieht man diese beiden Prozesse als 1508 und 1513) und dieses ist ein Shell-Skript in /bin.

Ein Blick dort hinein zeigt bei der internationalen Version 06.20 folgenden Inhalt:
Code:
#! /bin/sh
. /etc/term.sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin
term_usb()
{
#################################
## USB-HOST: das USB-Subsystem vor dem Runterfahren der Box (z.B. im Kontext eines Firmware-Updates) anhalten.
#################################
## Es wird nach dem Aufruf von /etc/hotplug/usb.pandu stop sofort zum Aufrufer zur.ckgekehrt,
## w.hrend im Hintergrund alle USB-Klienten ein "remove" gesendet bekommen, was dort dann das
## gro.e Aufr.umen ausl.st. Dieser Hintergrundproze. wartet bis zu 5 Sekunden auf
## das Beenden aller USB-Klienten und schie.t dann den OHCI-Treiber ab: Kein USB
## mehr vorhanden.
if [ -e /etc/hotplug/usb.pandu ] ; then
/etc/hotplug/usb.pandu stop
sleep 2
date > /dev/console
fi
}
## the parameter 'downgrade' is used just before /var/install is called with downgrade allowed
if [ "$1" = "downgrade" ]
then
## terminate multid to not write /var/flash/multid.leases after a downgrade with factorydefaults
## is done in /var/install
termavmforcedwait 5 multid
exit 0
fi
## Terminate any scheduled delayed reboot from firmwarecfg-CGI
local REBOOT_PID=`cat /var/run/delayed_reboot.pid`
rm /var/run/delayed_reboot.pid
if [ "$REBOOT_PID" != "" ] ; then
kill -9 $REBOOT_PID
fi
ps > /dev/console
date > /dev/console
if [ "$1" = "start" ] || [ "$1" = "start_from_internet" ] || [ "$1" = "start_tr069" ]
then
## kill everything except websrv,multid and firmwarecfg and sh
## to make room in RAM to store the firmware images before
## flashing them. if we download from the internet dsld is kept running also.
## NOTE that we have to keep the user modules for WLAN running!
## NOTE that voipd, upnpd, dsld and ctlmgr are terminated by
## firmwarecfg before the script is run, to have more free RAM (SL)
#################################
## Media-Subsystem vor dem Runterfahren der Box (z.B. im Kontext eines Firmware-Updates) anhalten.
#################################
if [ -e /etc/init.d/rc.media ] ; then
/etc/init.d/rc.media stop
sleep 2
date > /dev/console
fi
#################################
## Home Automation
#################################
if [ -x /usr/bin/aha ] ; then
/usr/bin/aha -s
fi
#################################
## EWETEL
#################################
if [ -x /bin/smartmeter ] ; then
/bin/smartmeter stop
fi
#################################
#################################
## Chrony stoppen
#################################
if [ -e /etc/init.d/rc.chrony ] ; then
/etc/init.d/rc.chrony stop
date > /dev/console
fi
if [ "$CONFIG_LLTD" = y ] ; then
lltdd -s
killall lltdd
fi
KEEP_USB=no
## due to use of term...forcedwait (may use kill -9) we have to disable the watchdog early
if [ -c /dev/watchdog ] ; then
echo disable watchdog >/dev/console
echo disable > /dev/watchdog
fi
if [ "`pidof touchdisplay`" != "" ] ; then
## Beim NLR wird der ctlmgr noch gebraucht
KEEP_CTLMGR=yes
else
KEEP_CTLMGR=no
if [ "$1" = "start" ] ; then
if [ "`pidof websrv`" = "" ] ; then
if netstat -l -n | grep -q "tcp.*\(0\.0\.0\.0\|::\):80 .*LISTEN" ; then
## active tcp listen on port 80 without websrv running
## --> keep ctlmgr running
KEEP_CTLMGR=yes
fi
fi
else
if [ "$1" = "start_from_internet" ] ; then
## one click update
KEEP_CTLMGR=yes
fi
fi
fi
if [ "$1" != "start" ] ; then
## UMTS-Stick wird beim Update via Internet u.U. noch gebraucht
KEEP_USB=yes
fi
## shutdown-list
## stage 1
## inetd restarts ftpd and smbd on demand, stop it first
PROCESSES="inetd capiotcp_server pbd faxd telefon dtrace printserv smbd nmbd"
## stage 2/3 - telefon & dect_manager have to stop before (at stage 1), configd at least.
## NOTICE: Once, if maild uses configd, it also must stop before configd.
PROCESSES_2="audiod pictured feedd playerd"
PROCESSES_3="configd"
## stage 4
## do not stop UPnP Deamon if running a UPnP-CGI
if [ "$2" != "UPNP" ] ; then
AVMDAEMONS="lltdd maild voipd usermand upnpd mediasrv avmlogd tr069discover contfiltd fritznasdb"
else
AVMDAEMONS="lltdd maild voipd usermand mediasrv avmlogd tr069discover contfiltd fritznasdb"
fi
if [ "$KEEP_CTLMGR" = "no" ] ; then
AVMDAEMONS="$AVMDAEMONS ctlmgr"
fi
if [ "$1" != "start" ] ; then
## we will download the update image from the internet so keep dsld running
echo "" >/dev/null
else
PROCESSES="$PROCESSES mailer"
AVMDAEMONS="$AVMDAEMONS dsld avmike"
fi
if [ "$KEEP_USB" = "no" ] ; then
term_usb
fi
ps > /dev/console
date > /dev/console
echo TERMINATING $PROCESSES > /dev/console
termforcedwait 5 $PROCESSES
date > /dev/console
echo TERMINATING $PROCESSES_2 > /dev/console
termforcedwait 5 $PROCESSES_2
date > /dev/console
echo TERMINATING $PROCESSES_3 > /dev/console
termforcedwait 5 $PROCESSES_3
date > /dev/console
[COLOR="#FF0000"]echo TERMINATING $AVMDAEMONS > /dev/console[/COLOR]
termavmforcedwait 5 $AVMDAEMONS
[COLOR="#008000"]date > /dev/console[/COLOR]
rm -rf /var/dtrace.txt
rm -rf /var/dtrace.tx2
termforcedwait 4 udhcpd dproxy ftpd
rmmod userman_mod
## Make room for update over internet on 7113
rmmod isdn_fbox_fon3
if [ "$1" = "start_tr069" ] ; then
echo "stopping wlan ..." >/dev/console
/etc/init.d/rc.net wlanstop
fi
killall -9 checkservices
[COLOR="#008000"]date > /dev/console[/COLOR]
[COLOR="#0000FF"]rm -f /var/install
rm -f /var/tmp/*.image[/COLOR]
exit 0
fi
if [ "$1" = "end" ]
then
## now kill everything else to avoid access to flash while flashing
/etc/init.d/rc.net wlanstop
if [ -c /dev/watchdog ] ; then
echo disable watchdog >/dev/console
echo disable > /dev/watchdog
fi
termforcedwait 5 mailer wpa_authenticator wstart
## do not stop UPnP Deamon if running a UPnP-CGI
if [ "$2" != "UPNP" ] ; then
termavmforcedwait 5 websrv upnpd usermand contfiltd dsld avmike multid ddnsd upnpdevd ctlmgr tr069discover
else
termavmforcedwait 5 websrv usermand contfiltd dsld avmike multid ddnsd upnpdevd ctlmgr tr069discover
fi
term_usb
exit 0
fi
echo "use: $0 [start|start_from_internet|start_tr069|end] [UPNP]"
exit 1
Der Ausgabe nach ist bei Dir dieses Skript komplett durchgelaufen bis zur rot markierten Stelle und auch die beiden grünen "date"-Aufrufe sind noch zu sehen. Da nach dem zweiten "date" nur noch das Entfernen event. schon vorhandener Update-Teile kommt (die blauen Zeilen), bevor der Aufruf dann mit "exit 0" beendet wird (wir erinnern uns an das "/bin/sh" oben beim Aufruf von "prepare_fwupgrade", es wird also nur diese Instanz beendet), ist dieses Skript komplett abgearbeitet und die folgenden Ausgaben
Code:
[1807]++ ++ do internalflash 'prepare unmount'... ++ ++
[1807]++ ++ ...done ++ ++
müssen von einer anderen Stelle kommen, die dann anschließend auch den Telnet-Daemon (und damit Deine Sitzung) beendet.

Jetzt käme seitens "firmwarecfg" ein (interner) Aufruf des tar-Kommandos, um das Image nach / zu entpacken. Da das Image seinerseits die Dateien unter ./var enthält, landen diese Dateien also unter dem oben blau markierten Zugriffspfad im tmpfs und dort wird - wenn das Image die Signaturprüfung besteht, dazu später mehr - dann die Datei /var/install aufgerufen, ggf. mit dem Parameter "-f", wenn ein Downgrade ausgeführt werden soll. Dieses Skript würde jetzt das vorhandene Shell-Skript /var/post_install (das wird bei jedem Shutdown/Reboot ausgeführt) so modifizieren, daß beim nächsten Reboot zusätzliche Kommandos dort ausgeführt werden, die das neue System in das inaktive Partition-Set schreiben und nach dem erfolgreichen Update auf die alternativen Partitionen umschalten. U.a. ist dort auch die Folge
Code:
##################################################################################
# prepare install
##################################################################################
# do no longer overwrite/remove /var/post_install
if [ ! -f /var/post_install ] ; then
# create, if not present
  echo "#! /bin/sh" >/var/post_install
fi
# append sequence to /var/post_install
[COLOR="#008000"]echo 'echo $0: start' >>/var/post_install[/COLOR]
# LED- und Betriebsstundenzaehler- Demon stoppen
echo "sleep 1" >>/var/post_install
echo "killall run_clock" >>/var/post_install
echo "if ps | grep -v grep | grep -q telefon ; then killall telefon ; fi" >>/var/post_install
[COLOR="#0000FF"]echo "if ps | grep -v grep | grep -q telnetd ; then killall telnetd ; fi" >>/var/post_install[/COLOR]
in /var/install enthalten, die bei einem tatsächlich stattfindenden Firmware-Update (das ist bei Dir vermutlich nicht der Fall, soviel will ich vorwegnehmen) den Telnet-Daemon beendet. Diese Kommandofolge kann bei Dir aber eigentlich nicht ausgeführt werden, denn es fehlt die Ausgabe der grün markierten Zeile in Deinem Protokoll.

Und damit kommen wir jetzt zu dem Punkt der Signatur- und Versionsprüfung. Beim Auspacken prüft "firmwarecfg", ab es sich um ein originales Firmware-Image von AVM handelt. Schlägt dieser Test fehl, wird eine entsprechende Seite als Ergebnis des CGI-Aufrufs dem Benutzer präsentiert (/usr/www/avme/html/tools/update_not_signed.html) und der Benutzer erhält die Chance, sich dafür zu entscheiden, dieses Image trotzdem zu starten. Erst im Anschluß (eigentlich sogar erst nach einem weiteren Upload/Auspacken des Images, denn die "Update fortsetzen"-Seite sendet das zu verwendende Image ja erneut) wird /var/install überhaupt aufgerufen.

Deiner Beschreibung ist jetzt nicht zu entnehmen, daß diese Seite überhaupt erscheint und Du dort etwas bestätigen müßtest, dem Protokoll kann man eigentlich auch nichts in dieser Richtung entnehmen. Das gibt Anlaß zu der Vermutung, daß der komplette Schritt mit dem Entpacken des Images aus irgendeinem Grund nicht funktioniert. Hier stellt sich halt die Frage, was da schiefgehen könnte oder ob Deine Beschreibung unvollständig ist.

Wenn seitens der Firmware keine Rückfrage erfolgt, würde ich als erstes mal ein Update mit einer originalen AVM-Firmware (also der 06.30) "unter der Aufsicht" der Telnet-Konsole machen und die dort erscheinende Ausgabe mit der oben stehenden vergleichen. Klappt das problemlos (und enthält das Protokoll dann auch die zusätzlichen Zeilen aus /var/install bzw. /var/post_install für das Updaten der Firmware), ist zumindest mal gesichert, daß es bei signierter Firmware funktioniert und es nicht am Auspacken liegen kann.

Ansonsten (wenn Du die Rückfrage nur "unterschlagen" hast, aber das Protokoll zeigt einen solchen Aufruf eben auch nicht, der aber vorhanden sein müßte, wenn Du ein nicht signiertes Image verwendet hast) würde ich das Image auf die Box per FTP kopieren und dann dort von Hand einmal auspacken. Selbst das /var/install-Skript kann man ausführen lassen (und die Ausgabe beobachten), solange man anschließend nicht "reboot" aufruft bzw. das originale /var/post_install mit einem Aufruf von
Code:
rm -rf /var/post_install ; ( cd / ; tar xf /var.tar ./var/post_install )
wiederherstellt (das macht "firmwarecfg" auch, wenn ein Fehler auftritt).

Am Ende bleibt ansonsten die schon weiter oben gestellte Frage, ob die internationale Version der 7490 ab 06.20 nun unsignierte Updates akzeptiert oder nicht ... erst wenn das geklärt ist (dann müßte eben auch die "firmware_not_signed"-Seite erscheinen), macht es Sinn, die Ursache weiter einzugrenzen.

Wobei mir dabei dann auch sofort wieder einfällt, daß ein Update mit unsignierter Firmware nur dann möglich ist, wenn die FRITZ!Box eingerichtet ist und ein Kennwort gesetzt wurde. Zwar sollte eine andere Fehlerseite (/usr/www/avme/tools/update_not_signed_no_password.html) angezeigt werden, wenn das nicht der Fall ist, aber vielleicht fehlt bei Dir ja tatsächlich aus Bequemlichkeit (mache ich später, wenn das richtige System installiert ist) auch das Kennwort und die passende Fehler-Seite wird aus irgendeinem Grund bei der internationalen Version nicht richtig ausgeliefert.
 
Zuletzt bearbeitet:
ein Update mit unsignierter Firmware nur dann möglich ist, wenn die FRITZ!Box eingerichtet ist und ein Kennwort gesetzt wurde

Das könnte tatsächlich sein. Wusste nicht, dass ein Passwort Voraussetzung ist.
Ich hab es direkt nach dem Recovery gemacht, also ohne jegliche Einstellungen.

Dann liegt es vielleicht wirklich nur an dem fehlendem Passwort.

Werd das nachher mal testen.

Vielen Dank erstmal.

Grüße Andreas
 
Ergebnisse?
 
Bei der deutschen Fritzbox lags wirklich nur an dem fehlendem Passwort.
Hat dann funktioniert.

Bei der internationalen hat es nicht funktioniert.
Hab dann aber auch nicht mehr weiter probiert.
Hab sie zurück geschickt.

Danke für die Hilfe :)
 
Schade ... vielleicht findet sich ja noch jemand anderes mit einer 7490i, der mal definitiv sagen kann, ob mit der 06.30 bei diesem Modell noch unsignierte Firmware verwendet werden kann.

Bis dahin werde ich (immer mit dem Hinweis auf "ungetestet" bis "spekulativ") erst einmal behaupten, daß die 7490 mit "113.06.30 int." keine unsignierte Firmware zuläßt ... es entspricht (wie oben schon mal aufgeführt) einem - nicht sehr ausführlichen - Test, den ich absolviert habe - allerdings habe ich das Problem nicht bis zum Ende untersucht, weil es mir nur wichtig war, ein bestimmtes "Pseudo-Image" zu testen und ich dann einfach wieder auf die deutsche Version gewechselt habe (wo das Image sofort funktionierte).
 
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.