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

Probleme mit Paket rsync

Dieses Thema im Forum "Freetz" wurde erstellt von md2002, 15 März 2009.

  1. md2002

    md2002 Neuer User

    Registriert seit:
    30 Juli 2007
    Beiträge:
    16
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Rostock
    Hallo Leutz,
    ich möchte gerne von einem Teil meiner Festplatte regelmäßig Backups auf den USB-Stick an der Fritzbox machen und habe im Trac eine Anleitung für das Einbinden des Pakets rsync entdeckt: http://www.freetz.org/ticket/394

    Das hat soweit auch alles problemlos funktioniert, allerdings kommt beim Compilieren immer der Fehler:
    Code:
    make[1]: Betrete Verzeichnis '/home/martin/Desktop/freetz-stable-1.1/source/rsync-3.0.5'
    /home/martin/Desktop/freetz-stable-1.1/toolchain/target/bin/mipsel-linux-uclibc-gcc -I. -I. -Os -pipe -march=4kc -Wa,--trap -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -Wall -W -Wno-unused-parameter  -c rsync.c -o rsync.o
    In file included from rsync.h:887,
                     from rsync.c:23:
    lib/addrinfo.h:141: error: redefinition of 'struct sockaddr_storage'
    make[1]: *** [rsync.o] Fehler 1
    make[1]: *** Warte auf noch nicht beendete Prozesse...
    In file included from ./rsync.h:886,
                     from ./rounding.c:20:
    ./lib/addrinfo.h:141: error: redefinition of 'struct sockaddr_storage'
    Failed to create rounding.h!
    make[1]: *** [rounding.h] Fehler 1
    make[1]: Verlasse Verzeichnis '/home/martin/Desktop/freetz-stable-1.1/source/rsync-3.0.5'
    make: *** [source/rsync-3.0.5/rsync] Fehler 2
    
    Weiß da jemand von euch einen Rat?
    Meine Konfiguration/Paketauswahl ist: nfsd cgi, relace kernel, Syslogd cgi, iptables cgi, vpnc, dropbear, inadyn und dazu die Patches automount ext2+3, smbd entfernen...

    Danke schonmal im Voraus
    Grüße md2002
     
  2. Whoopie

    Whoopie Aktives Mitglied

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    813
    Zustimmungen:
    4
    Punkte für Erfolge:
    18
    Hi,

    das liegt an dem im Ticket beschriebenen Problem mit der config.cache. Diese einfach mal löschen.

    Beste Grüße,
    Whoopie
     
  3. md2002

    md2002 Neuer User

    Registriert seit:
    30 Juli 2007
    Beiträge:
    16
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Rostock
    #3 md2002, 15 März 2009
    Zuletzt bearbeitet: 15 März 2009
    Hallo,
    danke für die schnelle Antwort.
    Also die Datei habe ich vorher gelöscht (das ist doch die freetz/make/config.cache ?), aber es kommt trotzdem zu dem Fehler...
    Ich hab eben nochmal mit make dirclean alle selbstcompilierten Dateien gelöscht und das ganze neu gebaut (dauert auf meinem betagten Notebook fast 2h) - wieder das gleiche Ergebnis :(

    Die Fehlermeldung gibt doch an, dass die Struktur struct "sockaddr_storage" schonmal definiert wurde. Ich hab da nur was in der Datei freetz/source/dropbear-0.52/fake-rfc2553.h gesehen. Aber Deaktivieren von dropbear brachte auch keine Verbesserung der Lage...
    Und eigentlich sollte der sockaddr_storage doch gar nicht neu definiert werden, wenn er schon vorhanden ist? (Ich kenn mich mit C aber nicht aus :noidea:)

    Habt ihr noch eine Idee?

    Grüße md2002


    ---
    Also ich hab die fünf Zeilen in der addrinfo.h mal manuell rauskommentiert und dann läuft schonmal der Build-Prozess durch und erzeugt mir ein Image *freu*
     
  4. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Mit dieser Änderungen im SVN wird rsync bei mir ohne Fehler erstellt, auch ohne config.cache zu entfernen. Ich habe die Version von Whoopie aus dem oben genannten Ticket genommen.
     
  5. md2002

    md2002 Neuer User

    Registriert seit:
    30 Juli 2007
    Beiträge:
    16
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Rostock
    Hallo,
    dank dir für die schnelle Reaktion!

    Jetzt habe ich aber nochmal eine Frage, zu der ich noch keine befriedigende Antwort gefunden habe:
    Ich habe mir zwei Dateien
    Code:
    /var/media/ftp/uStor01 # cat rsyncd.conf
    max connections = 2
    uid = ftpuser
    gid = root
    hosts allow = 192.168.178.0/24
    
    [backup]
            comment = Backup storage on USB drive
            path = /var/media/ftp/uStor01/backup
            read only = false
    und
    Code:
    /var/media/ftp/uStor01 # cat start_rsyncd.sh
    nice -n 20 rsync --daemon --config=/var/media/ftp/uStor01/rsyncd.conf
    zur Konfiguration und zum Starten (mittels nice auf einer nierdrigeren Priorität, damit die anderen Services bevorzugt werden) angelegt.
    Momentan liegen die auf dem USB-Stick, aber
    a) wie lege ich die am günstigsten im Dateisystem ab und
    b) wie kann ich das Start-Skript automatisch beim Systemstart aufrufen ?

    thx md2002
     
  6. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Es gibt die Datei debug.cfg oder die Auto-Start Datei vom Freetz.

    Wenn Du Dich austoben willst, machst Du noch ein Web-Konfigurations-Frontend.
     
  7. md2002

    md2002 Neuer User

    Registriert seit:
    30 Juli 2007
    Beiträge:
    16
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Rostock
    Hallo,
    also ich hab eben den Eintrag rc.custom unter Einstellungen im Web-Frontend entdeckt, wo ich meine Startdatei bequem eintragen konnte *freu*
    Ob meine Zeit und mein Wissen schon für ein Web-Frontend ausreicht möchte ich bezweifeln, aber wenn sich was ergibt, meld ich mich :)
    Grüße
    md2002
     
  8. rgrr

    rgrr Neuer User

    Registriert seit:
    22 Nov. 2008
    Beiträge:
    96
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich habe für meinen rsync inetd verwendet. Das hat den Vorteil, dass rsync nicht im Speicher ist, wenn nicht gebraucht und weiterhin, dass in der inetd.conf auch ohne weiteres ein Verweis auf einen Pfad stehen kann, den es beim Start von inetd nicht gab.

    Hardy


    PS: man kann das Ganze auch mit mdev hotplugging machen. Da kann man
    für hot-ge-plug-te Platten Start- und Stopskripte definieren.
     
  9. md2002

    md2002 Neuer User

    Registriert seit:
    30 Juli 2007
    Beiträge:
    16
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Rostock
    Hallo,
    also ich habe jetzt einige Stunden investiert und die nötigen Dateien für ein Webfrontend nach bestem Wissen und Gewissen erstellt.
    Dabei hab ich mich an denen des Pakets nfsd-cgi und der Anleitung unter http://www.freetz.org/wiki/help/howtos/development/create_gui orientiert, aber ein paar Fragen/Probleme sind dennoch geblieben:
    a) wie bette ich die Dateien nun in den Image-Build-Prozess ein?
    b) kann jemand von euch nochmal über die Dateien schauen, dass ich keinen Fehler gemacht habe (mir sind auch die vielen Alternativen, wo welche Dateien liegen müssen noch nicht ganz ersichtlich, also welche Dateien welches Skript wo haben will und wo was hinmuss, damit das einen Reboot überlebt) :)

    thx md2002
     

    Anhänge:

  10. Whoopie

    Whoopie Aktives Mitglied

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    813
    Zustimmungen:
    4
    Punkte für Erfolge:
    18
    @RalfFriedl:
    Mir ist noch aufgefallen, dass rsync nicht gegen libpopt gelinkt wird, wenn rsync in der config.cache nicht popt findet. Kannst Du dieses Verhalten auch sehen?
    Das ist noch der ausstehende Punkt, bevor rsync in freetz-trunk eingecheckt werden kann.

    Beste Grüße,
    Whoopie
     
  11. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Braucht rsync die libpopt? Für was?

    MfG Oliver
     
  12. Whoopie

    Whoopie Aktives Mitglied

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    813
    Zustimmungen:
    4
    Punkte für Erfolge:
    18
    Entweder wird gegen die libpopt gelinkt oder es wird eine eigene Version, die im rsync-Paket enthalten ist, verwendet.
    Daher dachte ich, dass wir gegen die externe popt linken sollten, damit das rsync-Binary kleiner ist.
     
  13. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Habs mir grad mal angeschaut. Ich kann das nicht nachvollziehen.

    Was passiert denn bei dir, wenn es nicht klappt?

    MfG Oliver