Apps für Fritzbox (Wunschliste - Fortsetzung)

fischefr

Mitglied
Mitglied seit
30 Okt 2004
Beiträge
207
Punkte für Reaktionen
0
Punkte
16
Fortsetzung von http://www.ip-phone-forum.de/showthread.php?t=98747

Ich hatte eigentlich noch kein Modul, wollte einfach mal modprobe genauer anschauen, wenn insmod klappt wäre das Einbinden von FTPFS natürlich eine nette Sache.

Gibts eigentlich irgendeine Möglichkeit, Apps übers Internet mit einer verschlüsselten Verbindung auf die Box zu ziehen? Ftp ist zwar ganz nett, aber mein Vorhaben wäre folgendes:
Auf der Box läuft ein Skript, das sich ein tar-Archiv von einem Server holt und ein darin enthaltenes Skript als eigenständigen Prozess ausführt.
Vorteile:
- Fehlerhafte Schleifen in Skripts etc. machen die Box nicht zum Recovery-Fall.
- Per led möchte ich den Zustand anzeigen (Warte auf Server/Skript erfolgreich/Skript meldet Fehler) und die Ausgabe des Skripts landet natürlich in einem log file.
- Wenns irgendwelche Probleme gibt, kapp ich die DSL-Leitung, boote die Box neu und kann wieder darauf zugreifen.
Auf diesem Weg könnte man dann alles nachladen, was man will ohne jedes Mal die Box (d.h. die debug-Datei) zu verändern. Nachteil: Wenn ich für SSH & Co die Keys unverschlüsselt über die Leitung zieh, das das natürlich nicht das Wahre.

Nachtrag: ich sehe gerade, dass es auch SSHFS gibt, würde mir persönlich wesentlich mehr bringen.
Vorschlag: ich probiere am Wochenende, das Zeug zum kompilieren (habe ich noch nie gemacht für die Box, es werden also Fragen auf euch zukommen) und stell das dann zur Verfügung (sofern ichs auf die Reihe bekomme).

Das Skript kommt auf jeden Fall die nächsten Tage - sofern interesse besteht.
 
Ich wollte am Anfang auch so viel wie möglich nachladen, bin aber mittlererweile davon abgangen, weil das wie ich finde nur kostbaren RAM verschwendet, solange im Flash noch Platz ist.

Mfg,
Daniel
 
Was mir auch noch nicht einleuchtet:
Wieso kann ich die Debug-Datei problemlos im Flash ablegen, für weitere Dateien muss ich aber die komplette Firmware modifizieren? Warum würde ein einfaches
cp /var/anwendung /var/flash/ nicht gehen?
 
fischefr schrieb:
Was mir auch noch nicht einleuchtet:
Wieso kann ich die Debug-Datei problemlos im Flash ablegen, für weitere Dateien muss ich aber die komplette Firmware modifizieren? Warum würde ein einfaches
cp /var/anwendung /var/flash/ nicht gehen?
Vielleicht hilft dir das weiter: Warum Firmware modifizieren
 
Hi.

Bei mir läufts. :mrgreen:
Code:
/var/mod/root # ls
ftpfs.o   ftpmount
/var/mod/root # mkdir /var/mnt
/var/mod/root # insmod ftpfs.o
Warning: loading ftpfs will taint the kernel: no license
  See [URL="http://www.tux.org/lkml/#export-tainted"]http://www.tux.org/lkml/#export-tainted[/URL] for information about tainted modules
/var/mod/root # ./ftpmount 192.168.1.200 /var/mnt
/var/mod/root # mount
/dev/mtdblock/7 on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /var type ramfs (rw)
[COLOR=red]none on /var/mnt type ftpfs (rw)[/COLOR]
/var/mod/root #
MfG Oliver
 

Anhänge

  • ftpfs.tar.gz
    16.1 KB · Aufrufe: 85
Die Mods werden mir verzeihen. ;-)

Jetzt kommt noch die sichere Variante:
SHFS
Bericht
Code:
/var/mod/root # insmod shfs.o
/var/mod/root # ./shfsmount [EMAIL="[email protected]"][email protected][/EMAIL] /var/mnt
Password:
/var/mod/root # df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/mtdblock/7           3392      3392         0 100% /
[COLOR=red]none                  22453568  20381552    931408  96% /var/mnt[/COLOR]
/var/mod/root #
MfG Oliver
 

Anhänge

  • shfs-0.35.tar.gz
    34 KB · Aufrufe: 57
olistudent schrieb:
Die Mods werden mir verzeihen. ;-)
Meinst du das:
headshot_2.gif

Dir sei verziehen ;)
 
Novize schrieb:
Meinst du das:
headshot_2.gif

Dir sei verziehen ;)

er meint sicher den doppelpost :p

jo bei mir leuft ftpfs auch nur ich habs im kernel und nicht als extra modul feine sache weil sich darüber auch progs ausfüren lassen jetzt müste man noch swap auslagern (konte man fileicht auch über ftpfs machen einfach nen swap formatirtes image auf den ftp legen so 1-2mb solten reichen und dann per loopback laden) können dann hette man nen par barieren weniger die box ist ja eh immer online nur ist die sache etwas langsam.

Code:
/var/tmp # mount
/dev/mtdblock/7 on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /var type ramfs (rw)
none on /var/tmp/ftp type ftpfs (rw)
/var/tmp # cd ftp
/var/tmp/ftp # ls
aircrack (Statik)     ftpfs.o               libgcc_s.so.1         monit                 test1.png
aircrack (no static)  ftpfs.tar.gz          libnsl.so.0           monitrc               test2.png
aircrack-2.3.tgz      ftpmount              libresolv.so.0        test.png              test3.png
/var/tmp/ftp # ./monit
 
Zuletzt bearbeitet:
Ich sehe, mein Vorhaben entwickelt eine gewissen Eigendynamik *gg*

Aber mal zu meinem wirklich Anliegen jetzt.
Ich habe mir jetzt den mod von danisahne gezogen, make menuconfig benutzt, dort (nur) auf FritzBox fon wlan umgestellt und bei den uclib-einstellungen auf "4 MB" (Empfehlung vom "Meister" höchstpersönlich" *G*). Nachdem ich schrittweise immer wieder an fehlenden Libs hängen geblieben bin, diese nachinstalliert habe und wieder make toolchain gestartet habe, habe ich jetzt eine Fehlermeldung, die ich nicht verstehe. Make toolchain bricht mit folgenden Zeilen ab:

config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing default commands
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/po«
make[4]: Gehe in Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/po«
make[4]: Für das Ziel »info« ist nichts zu tun.
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/po«
make[4]: Gehe in Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[4]: Für das Ziel »info-am« ist nichts zu tun.
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[3]: *** [info-recursive] Fehler 1
make[3]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[2]: *** [all-bfd] Fehler 2
make[2]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build«
make[1]: *** [all] Fehler 2
make[1]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build«
make: *** [/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/binutils/objdump] Fehler 2
franz@notebook:~/ds-0.2.4$

Was läuft da falsch, könnt ihr mir das sagen?

P.S.: Danke nochmal an DaniSahne, der sich einige PNs über mich ergehen lassen hat.
 
hm mach vorsichshalber nochmal make clean manchmal treten fehler auf wenn man es mehrfach versucht.


Ich hab schonmal nen kleines erfolgserlebniss und zwar lest sich nen ext3 hervoragend von ftpfs mounten etwas langsam aber es geht zum arbeiten reicht es voraledem wenn man backups machen möchte ganz praktisch.

Code:
/var/tmp/ftp # mount -o loop -t ext3 /var/tmp/ftp/ext.img /var/tmp/ext
/var/tmp/ftp # mount
/dev/mtdblock/7 on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /var type ramfs (rw)
none on /var/tmp/ftp type ftpfs (rw)
/dev/loop/0 on /var/tmp/ext type ext3 (rw)
 
fischefr schrieb:
Was läuft da falsch, könnt ihr mir das sagen?
Dir fehlt ein Paket, ich glaube es heißt texinfo
 
Nochmal zurück zu den angekündigten Skript, das ein tar Archiv von einem entfernten Server lädt, ein darin enthaltenes Skript ausführt und dabei das Risiko eines Recovery-Falls minimiert. Das Ding ist jetzt fertig, der momentane Status des remote Skripts wird über die info-led signalisiert (blinken=warten auf Verbindung, aus=ok, ein=fehler). Server muss natürlich angepasst werden. Falls jemand Interesse hat...

Code:
#!/bin/sh

mkdir /var/scripts/
mkdir /var/scripts/autostart
cat > /var/scripts/autostart.sh << 'EOF_Autostart'
#!/bin/sh
echo 7,3 > /var/led
while !(wget -P /var/scripts/ http://cs.fhm.edu/~ifw02080/fritz/autostart.tar); do sleep 5; done
tar -xf /var/scripts/autostart.tar -C /var/scripts/autostart/
rm /var/scripts/autostart.tar
chmod a+x /var/scripts/autostart/run.sh
if (/var/scripts/autostart/run.sh > /var/scripts/autostart/run.log); then echo 7,1 > /var/led; else echo 7,2 > /var/led; fi
EOF_Autostart
chmod a+x /var/scripts/autostart.sh
/var/scripts/autostart.sh &

Was mein Problemchen betrifft:
Ich habe jetzt texinfo installiert, make clean gefolgt von einem neuen make toolchain liefert wieder
Code:
WARNING: `makeinfo' is missing on your system.  You should only need it if
         you modified a `.texi' or `.texinfo' file, or any other file
         indirectly affecting the aspect of the manual.  The spurious
         call might also be the consequence of using a buggy `make' (AIX,
         DU, IRIX).  You might want to install the `Texinfo' package or
         the `GNU make' package.  Grab either from any GNU archive site.
make[4]: *** [../../../binutils-2.16.91.0.6/bfd/doc/bfd.info] Fehler 1
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/doc«
Making info in po
make[4]: Gehe in Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/po«
make[4]: Für das Ziel »info« ist nichts zu tun.
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd/po«
make[4]: Gehe in Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[4]: Für das Ziel »info-am« ist nichts zu tun.
make[4]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[3]: *** [info-recursive] Fehler 1
make[3]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/bfd«
make[2]: *** [all-bfd] Fehler 2
make[2]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build«
make[1]: *** [all] Fehler 2
make[1]: Verlasse Verzeichnis »/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build«
make: *** [/home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build/binutils/objdump] Fehler 2
franz@notebook:~/ds-0.2.4$

Wenn ich makeinfo aufrufe bekomme ich eine Meldung, dass eine Datei-Angabe fehlt. Es wird also gefunden. Warum funktioniert das wieder nicht? Ich versteht's einfach nicht!
 
Zuletzt bearbeitet:
Lösch mal das Verzeichnis /home/franz/ds-0.2.4/source/toolchain/binutils-2.16.91.0.6-build, damit die binutils nochmal von ganz vorne gebaut werden.
 
Gibt es einen besseren DNS&DHCP-server?

Hallo,

ich wuensche mir manchmal eine bessere DHCP-DNS-Serverkombination.\
Sie sollte 2 Dinge leisten:
1. sollte sie sich die mac-Adressen von Geraeten, die sich einmal angermeldet haben merken und bei der naechsten Anmeldung wieder die gleiche IP-Adresse vergeben.
2. fuer Geraete, die sich mit einem Namen anmelden sollte sie diesen Namen auch in den DNS-server ubernehmen, damit das Geraet dann auch ueber den Namen anzusprechen ist.
3. Sollten auch eigene eintraege in den DNS-server gemacht werden koenne, damit man seine eigene lokale Domaene (die auch ueber DYNDNS zugaenglich ist) nicht immer ueber den externen DNS des Providers aufrufen muss.

Oder gibt es sowas schon? Ich bin leider noch Neuling mit Software auf der Fritzbox.

tschues

chriwi
 
Schau die mal dnsmasq an, der müßte das alles können. Hab ihn auch schon seit Anfang an in den ds-mod integriert.

Mfg,
danisahne
 
Ich bin gerade wieder über eine Anwendung gestoßen, die evtl. den einen oder anderen interessieren könnte.

http://www.stunnel.org/download/source.html

Wenn ich das richtig verstehe, legt man einfach ein neues virtuelles Device an, leitet den Port 443 auf dieses Device weiter und benutzt stunnel, um das unverschlüsselt an Port 80 weiter zu geben.
Wenn das so geht, wie ich mir das vorstelle, könnte man jetzt über https von außen auf die Box zugreifen.

Wenn ich jetzt noch den Compiler zum laufen bekomme...
Ich werd auf jeden Fall dran bleiben..!
 
Dafür hab ich auch schon länger ein ds-mod Paket geplant, bin aber noch nicht dazugekommen.
 
also die toolchain hab ich jetzt. Für mein Vorhaben brauche ich jetzt das Zeug aus toolchain/target, oder?
Welchen der 3 gcc's muss ich benutzen?
- mipsel-linux-gcc
- mipsel-linux-gcc-4.1.0
- mipsel-linux-gccbug (den vermutlich doch nicht *g*)

Wie bringe ich das System am einfachsten dazu, diesen gcc zu benutzen ohne großartig den Pfad verbiegen zu müssen?

Nochmal zurück zu stunnel:
Hat schon jemand mal versucht, etwas in cgi-bin abzulegen?
Ich überlege.. - evtl. wärs ganz nett, eine Art telnet-Konsole ins Webinterface zu integrieren. Entweder in der Form, dass man ein Seite mit einem Formular hat und dort Befehle eintippen kann (ausführung über CGI) oder als Java-Applet, das eine SSL-getunnelte Verbindung zu Telnet aufbaut.
Erstere Variante hat den Vorteil, dass es ohne Java und den Telnet-Port auskommt, aber unterstützt dann keine mehrzeiligen Eingaben (ist nicht wirklich ein Problem, denke ich). Man bräuchte dann nur ein cgi-Skript, der man die Befehlzeile als GET-Parameter übergeben kann. Den Rest würde ich über Javascript lösen.
Falls euch das zusagt, gebt mir Bescheid, dann machen wir Arbeitsteilung - ich würde den Java & HTML-Part übernehmen, damit steh ich nicht auf Kriegsfuß wie mit C *g*. Ansonsten wär dann stunnel und das Einbinden ins cgi-bin Verzeichnis noch zu "erforschen"

P.S.: Für mich würde ich das natürlich nachladen also nicht in den Flash übernehmen. Kann aber jeder machen, wie er möchte.

Aja, noch ein Frage: Gibts eigentlich eine Möglichkeit, ohne mit gcc und Co rumzueiern Dateien in ein Flash-Image (bzw. dessen Dateisystem) zu übertragen?
 
Entweder nimmst du den toolchain-Pfad in den PATH auf, oder du gibst den Pfad zum gcc komplett an.
Das cgi-Skript muss nach /usr/www/$firmware_version/cgi-bin. Das sind einfache Bash-Skripte.

Um Dateien ins Flash-Image zu bekommen musst du nicht mit gcc rumeiern.

Schau dir mal haveniceday's-Skript an, da siehst du wie es funktioniert.
eumex-to-fritz

MfG Oliver
 
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.