.titleBar { margin-bottom: 5px!important; }

FTP-zu-Mountpoint

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von bodega, 8 Jan. 2007.

  1. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Hallo,

    probiere zur Zeit Fuse und CurlFTPFs für die FritzBox zu kompilieren, um einen FTP Server zu mounten.

    Das schöne an Fuse ist, das man damit ganz leicht sein eigenes FS schreiben kann, bzw. es sehr dynamisch ist.

    Das Problem:
    fuse.o lässt sich nur bis v2.1 einbinden, ab v2.2 werden Kernelfunktionen verwendet, die nicht exportiert sind (unresolved symbols: get_user_pages, dirty_user_pages, init_inode_once).

    CurlFTPFs läuft erst ab Fuse v2.2. Man kann zwar die Lib von Fuse v2.2 verwenden und das Modul von v2.1, aber das gibt komische Effekte.

    Kann man die Kernelfunktionen irgendwie nachbauen?
    Gibts äquivalente Funktionen?
    Oder kann man die Funktionen aus dem 2.6 / 2.4.x(?) Kernel entnehmen?
     
  2. TriaxMan

    TriaxMan Neuer User

    Registriert seit:
    13 Nov. 2006
    Beiträge:
    119
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    da bei mir das thema auch aktuell ist, würde mich hier auch eine antwort interessieren.;)
     
  3. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    So.. ich hab's gestern nochmal angeschaut.

    get_user_pages zieht einen Rattenschwanz an Funktionen hinter sich her. Lies sich leider nicht in fuse.o integrieren.
    Also müsste ich den Kernel wohl an der Stelle patchen. Die Funktion gibt es unter memory.c, leider nicht exportiert. Die restlichen Symbole lassen sich über #defines umbiegen.

    Dazu kommt noch, dass ich glib und Konsorten nicht statisch linken kann. Ist aber auch kein Problem (solange ein USB vorhanden ist und die Softlinks in /mod/lib existieren). Statisch linken müsste auch irgendwie gehen.

    Fräg ich mich nur, ob sich der Aufwand lohnt oder ich doch besser per smb auf die NAS zugreife (was ist schneller :noidea: - wird sich zeigen, sobald das Dingen da ist :eek:).
     
  4. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    So.. NAS ist da. Aber es fehlt was: die Kernel-Sourcen für 29.04.15 :( -
    Ich hab meinen Kernel etwas geschrottet und bräuchte die wieder. Weiss einer, von wo man die noch bekommt?

    Bzw. ist die Firmware fritz.box_fon_wlan_7170.29.04.29.image bereits ds-mod kompatibel?
     
  5. schmatke

    schmatke Mitglied

    Registriert seit:
    25 Juli 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Vogtland
    Kaum sind die neuen Sourcen da, schmeißt Du die alten weg?

    Hab noch "fritzbox-lab-source-files-04.19.tar.bz2". Könnte sie auf meine fritzbox legen. PN an mich genügt.

    Gruß Schmatke
     
  6. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Ich suche die Kernelsourcen vom 2.4er, nicht von der Labor-Firmware. Habe leider den ds-0.2.9\dl Ordner gelöscht, sonst hätte ich die noch. Der entpackte Kernel ist, wie gesagt, geschrottet (bzw. so viele Änderungen gemacht worden, das ein Aufspielen mit einem Recover verbunden wäre).

    AVM-Like ;)
     
  7. schmatke

    schmatke Mitglied

    Registriert seit:
    25 Juli 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Vogtland
    Oh, Kernel 2.4, sorry da hab ich wohl net richtig gelesen.
    Damit kann ich leider auch nicht dienen. Die hab ich auch schon gelöscht, obwohl ich mir sonst jeden Schei* aufheb.

    Von irgendwo wirst Du Sie schon bekommen. Haben ja wohl hoffentlich nicht alle gelöscht. Oder??? ;-)
     
  8. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Habe sie. Da hab ich wohl nicht richtig geschaut auf dem avm ftp... sry.
    Und Firmware hab ich noch :D
     
  9. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    #9 bodega, 11 Jan. 2007
    Zuletzt bearbeitet: 12 Jan. 2007
    So.. FTP kann ich nun mounten. Verzeichnisse auslesen mit 'ls' und umbennen ist kein Problem. Aber sobald was gelöscht oder hochgeladen wird, bricht das leider ab.

    Man bräuchte zudem auch einen USB Stick, da beim Upload einer Datei eine Zwischenkopie gemacht wird.
    Also nicht für 7050-Boxen geeignet.

    EDIT:
    sobald es läuft, werd ich es hier posten.
    Man müsste dann nur den Kernel patchen (kernel/ksyms.c):
    Code:
    EXPORT_SYMBOL(get_user_pages); 
    
     
  10. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Ok. Mit curlftpfs ist das anscheinend nicht so einfach. Zu groß und viel Anpassungsarbeit (mal abgesehen von den ganzen Libs). Upload und Download bringt ein Segmentation Fault. Läuft also nicht rund.

    Probiere allerdings jetzt mit Samba auf die NAS zuzugreifen:
    http://www.ip-phone-forum.de/showthread.php?t=109805

    Vielleicht eine Alternative.
     
  11. oidia

    oidia Neuer User

    Registriert seit:
    18 Nov. 2007
    Beiträge:
    85
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ort:
    OWL
    #11 oidia, 30 Jan. 2009
    Zuletzt bearbeitet: 30 Jan. 2009
    Hi zusammen,

    ich hab mich zuletzt etwas mit CurlFtpFS versucht und möchte nun mal einen ersten Zwischenstand geben.

    Man benötigt Fuse und Curl (bzw. libcurl). Allerdings ist das mit libcurl so eine Sache, denn die wiederum benötigt libcrypto. Und bei meiner 7170 resultiert es in einem Dauer-Reboot, wenn die libcrypto eingebunden wird. Also hab ich Curl derzeit statisch linken lassen, dann ist der Dauer-Reboot weg.

    Für CurlFtpFS hab ich bereits ein Package erstellt (mein erstes :p), allerdings klappt es da mit dem statischen bauen noch nicht so recht. Dynamisch läßt es sich kompilieren, aber das läuft ja auf meiner Box nicht... Kann es also nicht testen. Package ist unten angehängt.

    Irgendwie hab ich es tatsächlich mal per Hand hin bekommen, curlftpfs statisch zu bauen. Das Binary hängt auch dran. Allerdings funktioniert das auch noch nicht so recht. Wenn ich versuche, mein NAS per FTP zu mounten, klappt der Mount scheinbar problemlos. Wenn ich allerdings per ls das Verzeichnis ausgeben lassen möchte, kommt: nix :confused: Wenn man die debug-Ausgaben einschaltet, scheinen die Verzeichnisse auch übertragen zu werden. Blos beim ls kommt nix.

    Vielleicht hat ja hier jemand mehr Erfolg. Und vielleicht kann ja auch jemand das Paket für statisches Linken rund machen - bei mir kommt immer ein Binary raus, welches dennoch libs einbindet :mad:

    PS: Das tgz muss im trunk/make Verzeichnis entpackt werden und das Package noch im übergeordneten trunk/make/Config.in eingetragen sein, z.B. unter Testing:
    Code:
    menu "Testing"
    # ...
    source make/curlftpfs/Config.in
    
    EDIT: Oh verdammt, hab gerade gesehen, das dieser Thread garnicht im Freetz-Bereich steckt :( Kann das einer der Moderatoren vielleicht verschieben?

    Und hier jetzt die versprochenen Dateien:
     

    Anhänge:

  12. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hey,
    bin leider gerade nur am handy und kann deshalb nicht groß testen.
    warum willst du curlftpfs auch statisch bauen? reicht es nicht, curl statisch ist? welche lib werden denn eingebunden?
    Hast du noch ne Version die dynamisch ist, denn meine box rebootet dabei nicht.
     
  13. oidia

    oidia Neuer User

    Registriert seit:
    18 Nov. 2007
    Beiträge:
    85
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ort:
    OWL
    Du glücklicher ;)

    Curlftpfs benötigt die libcurl welche wiederum die libcrypro benötigt. Wenn ich es also dynamisch baue und damit die libcurl verwende, wird auch die libcrypto mit auf die Box gebracht. Darum geht das leider nicht :( Oder übersehe ich da was?

    Ein dynamisches Binary hab ich gerade nicht zur Hand. Aber das kannst du dir mit Freetz bauen, wenn du das Package von oben verwendest. Ansonsten muss ich bei Gelegenheit nochmal einen Build machen...
     
  14. sf3978

    sf3978 IPPF-Promi

    Registriert seit:
    2 Dez. 2007
    Beiträge:
    7,657
    Zustimmungen:
    5
    Punkte für Erfolge:
    38
    Die 7170 rebootet ab trunk 2970 mit der dynamischen libcrypto. trunk 2968 und 2969 müsste noch funktionieren.
     
  15. oidia

    oidia Neuer User

    Registriert seit:
    18 Nov. 2007
    Beiträge:
    85
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ort:
    OWL
    #15 oidia, 31 Jan. 2009
    Zuletzt bearbeitet: 31 Jan. 2009
    Oh, danke für die Info. Dann werde ich wohl erstmal wieder downgraden...

    EDIT: Tja, mit 2969 geht's auch nicht :confused: Bleibt also doch nur Static. Jetzt geh ich erstmal einen trinken ;)
     
  16. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    verwendest du AVM-SSL_Sachen, also: tr069, VPN, Fernwartung....
    Das muss alles AUS!!!

    ODER:

    Du kannst versuchen die Kompatibiltät zwischen AVM-libcrypto und Freetz-libcrypto wiederherzustellen, indem du die libavmhmac ersetzt, das ist im ssl-menü zu finden unter shared-lib.


    ABER:
    Nochmal folgende Frage:
    Warum musst du curlftpfs statisch bauen, reicht nicht curl?
     
  17. oidia

    oidia Neuer User

    Registriert seit:
    18 Nov. 2007
    Beiträge:
    85
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ort:
    OWL
    Ich hab so ziemlich alles von AVM raus geworfen, allerdings ist tr069 noch drin (aber deaktiviert, zumindest ist die tr069.cfg leer). Oder muss in der tr069.cfg explizit drin stehen, das es aus sein soll?

    Das mit der libavmhmac hatte ich auch schonmal probiert, brachte aber auch nix. Werde das bei Gelegenheit nochmal alles probieren, vielleicht klappt's ja mal ;-)

    Mit dem statischen bauen der curlftpfs hab ich wohl noch eine Denk-Sperre :? Curlftpfs benötigt libcurl. Wenn die lib statisch erstellt wird, muss ich curlftpfs doch ebenfalls statisch linken. curlftpfs benutzt ja nicht das binary "curl", sondern eben die "libcurl". Oder entsteht beim statischen bauen von curl auch eine dynamische libcurl, in der die crypto-sachen statisch eingebunden sind, die man aber wiederum dynamisch linken kann? Ich bin mehr Windows-Entwickler, daher die dummen Fragen ;)
     
  18. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    zu der Sachen mit dem dynamischen linken: muss ich auch nochmal drüber nachdenken.

    zum reboot. Welches Branding hast du 1und1? Dann musst du es wahrscheinlich expliziet deaktivieren
     
  19. oidia

    oidia Neuer User

    Registriert seit:
    18 Nov. 2007
    Beiträge:
    85
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ort:
    OWL
    Ne, die 7170 hab ich einzeln gekauft, also kein spezielles Brandinng. Daher sollte das tr069 aus sein. Ich hab mal den Default-Inhalt in die tr069.cfg gepackt und es darüber explizit deaktiviert. Dann hab ich tr069 beim build auch raus geworfen und neu geflasht. Ergebnis: Reboot... Bin langsam mit meinem Latein am Ende :-( Die libavmhmac hatte ich noch nicht mit aufgenommen. Aber nach dem Recover hatte ich erstmal keine Lust mehr auf einen neuen Versuch.

    Aber erstmal zurück zum eigentlichen Thema: Hast du curlftpfs erfolgreich bauen können und vielleicht sogar schonmal getestet? Oder bist du noch nicht dazu gekommen?
     
  20. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Morgenabend ;) Bin noch bei meinen Schwiegereltern.