[INFO] Offline-Tool für Firmware-Update HorstBox Pro

billy66

Neuer User
Mitglied seit
11 Mai 2007
Beiträge
49
Punkte für Reaktionen
0
Punkte
0
Hier wurde schon oefter erwaehnt, das es ein tool gebe mit dessen Hilfe man die Firmware fuer die horstbox auch aus dem LAN heraus vornehmen kann. Auf explizite Nachfrage bei D-LINK wurde mir geantwortet, dieses wuerde ich auf der Entwickler-dvd finden koennen. ich finde dort ein solches Programm aber nicht.

Weiss jemand genaueres?
 
F

foschi

Guest
Auf dem FTP-Server von D-Link liegt ein Update zur Entwicklungs-DVD (aktualisierte Sourcen zu FW. 4.1), in welchem zwei Möglichkeiten für lokale FW-Updates enthalten sind.

1. \DVD_Update_41\Update\Source-4.1\win_installer\horst-update
(das ist das gesuchte Windows-Tool)

Das Tool entpacken, und Verzeichnisstruktur bestehen lassen; das Tool benötigt die Firmware-Dateien (zImage, opt-fs, main-fs, update-fs) im Unterverzeichnis image.

Die aktuellen Firmware-Dateien finden sich unter http://upd.dlink.de/hbx/pro/config.txt.

Der PC, der das Update macht, darf nur eine LAN-Verbindung haben (andere einfach abschalten), und muß zwingend am Switch von Herta hängen. Die Fehlermeldung "Error communicating with HorstBox" darf getrost ignoriert werden.

Werkseinstellungen neu laden. Reset-Taster länger als 10 sec betätigen: nur notwendig, um einen Fehler bei der manuellen Auswahl des ausgehenden Telefoniekontos (*[567]X) zu korrigieren! Alternativ kann man den Reset getrost weglassen und die NVRAM-Variable phone_prefix.accounts manuell oder via config.txt von "**" auf "*" ändern.

2. \DVD_Update_41\Update\Source-4.1\horst_update
(PERL-Script zum Update)

hehol hat hier aufgezeigt, wie man ein Firmware-Update auch ohne update.exe und horst_update durchführen kann.
 

billy66

Neuer User
Mitglied seit
11 Mai 2007
Beiträge
49
Punkte für Reaktionen
0
Punkte
0
vielen dank. mal sehen, ob ich damit klar komme ;o)
 

pette

Neuer User
Mitglied seit
28 Nov 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Zu den o.g. PERL-Scripten habe ich eine Frage, da ich leider nicht der perl-Experte bin:

Ich habe mir die 4.1-Update-Sourcen anhand des DVD-Update-Skripts installiert und einiges an den Asterisk-Config Dateien geschraubt. Dann hab ich erfolgreich das neue image via "make update" (was ja das update.pl skript aufruft) auf die Horstbox gebracht.
Nun habe ich leider das Problem, dass der Webserver auf Horst (mhttpd) nicht mehr starten will:
Code:
 Unable to load libpcre.so.0
.... oder so aehnlich (genaue Fehlermeldung, wenn ich wieder zuhause bin).
Daraufhin habe ich versucht, das originale 4.1-Image wieder einzuspielen, aber das update.pl skript bleibt mit einem fehler haengen. Kann das an dem nicht laufenden Webserver liegen?
Wenn ja, was kann ich tun, um meinen Horst zu retten?
 

hehol

Mitglied
Mitglied seit
22 Feb 2005
Beiträge
458
Punkte für Reaktionen
0
Punkte
16
pette schrieb:
Nun habe ich leider das Problem, dass der Webserver auf Horst (mhttpd) nicht mehr starten will:
Code:
 Unable to load libpcre.so.0
.... oder so aehnlich (genaue
Hmm, offenbar fehlt die PCRE-Library im Firmware-Image :-(

pette schrieb:
Daraufhin habe ich versucht, das originale 4.1-Image wieder einzuspielen, aber das update.pl skript bleibt mit einem fehler haengen. Kann das an dem nicht laufenden Webserver liegen?
Wenn der Webserver nicht läuft, dann funktioniert das Update über update.pl, horst-update.exe oder die Web-GUI nicht mehr. Du kannst die HorstBox selbst retten, wenn Du Zugriff über SSH oder die serielle Schnittstelle hast. Dann kannst Du das alte main-fs so wieder einspielen:

  1. PC auf die IP-Adresse 192.0.2.3/24 konfigurieren
  2. Webserver starten und die Datei main-fs von der Firmware 4.1 ins DocumentRoot-Verzeichnis kopieren
  3. Auf der HorstBox folgende Kommandos ausführen:
    Code:
    / # [b]cd /mnt[/b]
    /mnt # [b]wget http://192.0.2.3/main-fs[/b]
    /mnt # [b]flashcp -v main-fs /dev/mtd/3[/b]
    /mnt # [b]rm -f main-fs[/b]
    /mnt # [b]reboot[/b]

Jetzt startet die HorstBox wieder mit Firmware 4.1. Alternativ zu der Methode mit dem Webserver und wget kannst Du natürlich auch die Datei main-fs auf einen USB-Datenträger kopieren und den dann an die HorstBox anschließen.

Gruß
Henning
 

pette

Neuer User
Mitglied seit
28 Nov 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
hehol schrieb:
Code:
/ # [b]cd /mnt[/b]
/mnt # [b]wget http://192.0.2.3/main-fs[/b]
/mnt # [b]flashcp -v main-fs /dev/mtd/3[/b]
/mnt # [b]rm -f main-fs[/b]
/mnt # [b]reboot[/b]
Alternativ zu der Methode mit dem Webserver und wget kannst Du natürlich auch die Datei main-fs auf einen USB-Datenträger kopieren und den dann an die HorstBox anschließen.
Danke für die schnelle Antwort.
Leider scheitert die wget-Methode mit dem Fehler:
Code:
Connecting to xxxxxxxxxxxxxxxxx:80
wget: Write Error: No space left on device

/mnt # ls -l
-rw-r--r--    1 asterisk root            1 Jul 13 19:21 Master.csv
-rw-r--r--    1 root     root     11468800 Jul 13 19:22 main-fs
Also scheint der Platz nicht ausreichend zu sein auf /mnt.

Bei der Methode mit dem USB-Stick bin ich mir nicht sicher, ob ich da die main-fs auf dem stick lassen soll und von dort aus flashcp ausführen, oder erst die main-fs nach /mnt kopieren und dann flashcp... wobei ich da wiederum das Platzproblem hätte.

Spricht also etwas dagegen die main-fs auf dem USB-Stick zu lassen und dann
Code:
flashcp -v /mnt/usbstick/main-fs /dev/mtd/3
auszuführen?

Gruß,
Dennis
 

hehol

Mitglied
Mitglied seit
22 Feb 2005
Beiträge
458
Punkte für Reaktionen
0
Punkte
16
Hallo Dennis,

bei mir ist das Dateisystem in /mnt 16 MB groß, da sollte die Datei main-fs locker reinpassen. Alternativ kannst Du auch das tempfs in /tmp zur Laufzeit vergrößern
Code:
mount -o remount,mode=1777,size=32M -ttmpfs tmpfs /tmp
und das main-fs nach /tmp schreiben. Du kannst aber auch einfach direkt vom USB-Stick flashen. flashcp ist so konstruiert, daß nichts kaputt gehen kann.

Gruß
Henning
 

pette

Neuer User
Mitglied seit
28 Nov 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Jau, vielen Dank.

Habs nun direkt vom USB-Stick gemacht. Funktioniert super!

Gruss,
Pette
 

hehol

Mitglied
Mitglied seit
22 Feb 2005
Beiträge
458
Punkte für Reaktionen
0
Punkte
16
Moin!

Schön, daß das Downgrade bei Dir geklappt hat. Der Bug in der Entwicklungsumgebung ist auch schon beseitigt und wird im nächsten Quellcode-Release nicht mehr auftreten. Wenn Du so lange nicht warten möchtest, dann kannst Du diesen Patch benutzen:

Code:
--- build_env/scripts/mhttpd.mk (revision 3949)
+++ build_env/scripts/mhttpd.mk (revision 3950)
@@ -28,7 +27,7 @@
 mhttpd_distclean:
        $(RM) -r $(MHTTPD_DIR) $(HTDOCS_DIR)
 
-mhttpd_%:      $(MHTTPD_DIR) $(MHTTPD_SRC)/Makefile
+mhttpd_%:      $(MHTTPD_DIR) $(MHTTPD_SRC)/Makefile pcre_install
        $(MAKE) -C $(MHTTPD_SRC) $(subst build,all,$(subst mhttpd_,,[email protected]))
 
 # depricated
Gruß
Henning
 

Hodl

Neuer User
Mitglied seit
14 Aug 2006
Beiträge
16
Punkte für Reaktionen
0
Punkte
0
Ich habe mir eine HB gekauft und die Firmware ist irgendwas mit 4.2...auf alle Fälle möchte ich die HB updaten.
Alles gut und schön - anfangs konnte ich auf die HB zugreifen - jetzt kann ich weder pingen noch das Webinterface starten.
Ich habe mir den Artikel http://www.ip-phone-forum.de/showthread.php?t=140952 durchgelesen und alles auf meinem PC installiert.
Nur beim Verbinden kommt dauernd der Fehler, daß die HB unter 192.168.0.1 nicht erreichbar ist. (obwohl vorher unter dieser IP erreichbar war...)
Was kann ich tun um die HB wieder zur erreichen?
 

Hupe

Aktives Mitglied
Mitglied seit
8 Apr 2004
Beiträge
2,586
Punkte für Reaktionen
0
Punkte
0
Das Du das Webinterface nicht erreichen kannst, ist nicht gut.


Der Weg, der immer geht ist über die serielle Konsole von Horst (hier im Forum bereits beschrieben).

Du könntest aber auch mal folgendes Probieren:
Deaktiviere alle Netzwerkinterfaces deines Rechners, bis auf eines, und verbinde es mit der HB. Gib diesem Interface die Ip 192.0.2.241 und versuche dann ein Update zur 192.0.2.2 mit dem Update-Tool.
 

Hodl

Neuer User
Mitglied seit
14 Aug 2006
Beiträge
16
Punkte für Reaktionen
0
Punkte
0
Hallo Hupe - danke für den Tip.
Ich denke, das Update hat funktioniert (ganau kann ich es nicht sagen - das Update-Fenster bleibt stehen und man bekommt keine Meldung ob das Update abgeschlossen ist oder nicht...
Über die 192.0.2.2 komme ich auf das Webinterface - dort steht:

Es trat ein Fehler beim Schreiben in den Flashspeicher auf (6)
 

Hupe

Aktives Mitglied
Mitglied seit
8 Apr 2004
Beiträge
2,586
Punkte für Reaktionen
0
Punkte
0
Keine Ahnung, ob DLink dir ein Update daraufspielt.
Hast Du mal ein Reset probiert? Die Box hochfahren lassen (Strom drauf und zwei Minuten warten) und dann den Reset-Taster 10 Sekunden ununterbrochen drücken.
Wenn Du die Ip-Einstellungen noch so hast, wie ich sie Dir zum updaten vorgeschlagen habe, dann könntest Du auch mal probieren, die box über https://192.0.2.2 zu erreichen.
 

Hodl

Neuer User
Mitglied seit
14 Aug 2006
Beiträge
16
Punkte für Reaktionen
0
Punkte
0
Danke für die Infos - hat alles bestens geklappt!
 

billy66

Neuer User
Mitglied seit
11 Mai 2007
Beiträge
49
Punkte für Reaktionen
0
Punkte
0
wenn ich die horst-update.exe starte bricht das programm mit dem hinweis auf die nicht vorhandene update-datei ab. ich hab die baumstruktur eigentlich nicht veraendert...
welche datei muss in welchem ordner vorhanden sein?
 
F

foschi

Guest
Über den Link http://upd.dlink.de/hbx/pro/config.txt erhält man die aktuellen Firmware-Dateien, die ins image-Verzeichnis (ggf. selbst anlegen) von horst-update gehören.

Die Datei config.txt ansich speichert man ins Verzeichnis, in dem sich auch die Datei horst-update.exe befindet, und entfernt die URLs zu den FW-Dateien, sodass nur noch das folgende in der Datei vorhanden ist:

Code:
sys_firmware.new_version 4.3
asterisk.ec_enable.te yes
asterisk.ec_enable.nt yes
asterisk.ec_enable.fxs1 yes
asterisk.ec_enable.fxs2 yes
asterisk.ec_enable.fxo yes
phone_prefix.accounts '\*'
asterisk.use_fxs true
asterisk.te_ignore_alarm true
asterisk.qualify true
 

billy66

Neuer User
Mitglied seit
11 Mai 2007
Beiträge
49
Punkte für Reaktionen
0
Punkte
0
danke fuer die hilfestellung. ich hab da immer noch fragen:
1. wo finde ich die dateien, die in der config.txt genannt werden?
2. wenn ich die dateien hab, sollen die auch in das verzeichnis mit der horst-update.exe?
3. auf dem ftp-server fand ich die dateien "horst-image-4.3.dat" und "horst-dsl-image-4.3.dat" - wofuer koennte man die denn nutzen? (die datei hiess "HBX_offline-update_4.3.zip")
 
Zuletzt bearbeitet:
F

foschi

Guest
1.-2. siehe Posting.

3. auf dem ftp-server fand ich die dateien "horst-image-4.3.dat" und "horst-dsl-image-4.3.dat" - wofuer koennte man die denn nutzen? (nur beim DSL-direkt-update?)
Die sind für das Update der Box via Webinterface, wenn Firmware 4.2 installiert ist.
 

ammar

Neuer User
Mitglied seit
13 Jun 2006
Beiträge
188
Punkte für Reaktionen
0
Punkte
0
Das Du das Webinterface nicht erreichen kannst, ist nicht gut.


Der Weg, der immer geht ist über die serielle Konsole von Horst (hier im Forum bereits beschrieben).

Du könntest aber auch mal folgendes Probieren:
Deaktiviere alle Netzwerkinterfaces deines Rechners, bis auf eines, und verbinde es mit der HB. Gib diesem Interface die Ip 192.0.2.241 und versuche dann ein Update zur 192.0.2.2 mit dem Update-Tool.
Ist schon länger her...
Ich versuche aber mein HBPro mit FW4.0 auf FW5.0 upzugraden.
Mir stehen leider nur Win7 zur Verfügung, habe mit 2 PCs probiert, auch mit deinem Hinweis kriege ich immer die "Die angegebene Adresse kann nicht erreicht werden" Fehlermeldung. HB ist anpingbar (192.0.2.2) und Webinterface funktioniert. Hat wer eine Idee?

EDIT: Mit WinXP hat es funktioniert!
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,630
Beiträge
2,024,967
Mitglieder
350,504
Neuestes Mitglied
okube