pure-ftpd: 2 Stunden Timestamp Differenz

  • Hallo,

    bin neu hier ... und gleich ne doofe Frage (die hoffentlich leicht zu beantworten ist):

    Habe den pure-ftpd Server installiert und alles läuft prima, bis auf den Time-Stamp, den hochgeladene (von Windows-Rechner via "Beyond Compare - FTP") Dateien auf dem RasPi bekommen und die um genau 2 Stunden falsch sind. Ich führe das auf die Differenz zwischen GMT und CET plus DST zurück, das würde genau hinhauen. Das ist ärgerlich, weil ich somit die "compare funktion" nicht richtig nutzen kann, was beim Abgleichen mehrerer Server von großem Vorteil wäre.

    Frage nur, wie stelle ich das ab, bringe also pure-ftpd bei, dass das der Timestamp in der richtigen Zeitzone zu nehmen ist?

    Beim Upload auf einen anderen Serve, auf dem Filezilla läuft, habe ich das Problem nicht ...


    1000 Dank im Voraus!
    jwka

    Einmal editiert, zuletzt von jwka (28. März 2016 um 00:40)

  • Wie ist denn die Zeit auf deinem Pi? Ist die korrekt?

    Ansonsten hilft eine Google Suche nach: pure-ftpd timezone

    => https://www.novell.com/support/kb/doc.php?id=7002717

    Code
    sudo ln /etc/localtime /srv/ftp/etc/localtime

  • Wie ist denn die Zeit auf deinem Pi? Ist die korrekt?

    Ansonsten hilft eine Google Suche nach: pure-ftpd timezone

    => https://www.novell.com/support/kb/doc.php?id=7002717

    Code
    sudo ln /etc/localtime /srv/ftp/etc/localtime


    Danke für die schnelle Re ... und sorry, dass ich etwas knapp in meinem Text war ... und ich habe VOR diesem post intensiv im Internet gesucht, bin aber nicht weiter gekommen.

    Also:
    1.) Die Raspi-Zeit ist korrekt ... aber die hat auch mit dem Timestamp nichts zu tun, denn "alte" Dateien, also z.B. welche vom letzten Jahr behalten ihr DATUM ... und die Uhrzeit wird lediglich um ZWEI Stunden "justiert", es wird alo keinesfalls die aktuelle Zeit des Raspi eingetragen (was beo proftpd der Fall war).

    2.) Die Webpage mit Deinem Link habe ich auch bereits gelesen. Ich habe auch probehalber einmal die dort genannte Zeile

    [font="Courier New"]TZ="MST7MDT" ; export TZ [/font]

    in der Datei /etc/init.d/pure-ftp eingetragen. Ohne Erfolg. immer noch ZWEI Stunden Unterschied.

    Das "service pure-ftp restart" zeigte zwar ganz artig an, dass sich eine Datei geändert hat. Der empfohlene Aufruf "systemctl daemon-reload" plus anschliessendem nochmaligen restart von pure-ftp hat aber nix gebracht ... es bleibt hartnäckig bei den 2 Stunden

    3.) Deine sudo-anweisung bringt den fehler, dass /etc/localtime nicht existiert ... vielleicht hängt's daran?

    Danke nochmals für Eure Hilfe
    jwka


  • Hast du nach Anpassung der Config den Dienst auch neu gestartet?

    Was ergibt denn der Befehl " ls -la /etc/localtime " ? Bei mir existiert die Datei nämlich (Raspbian Jessie)

    restart .. ja, lies mal in meinem post:
    "Das "service pure-ftp restart" zeigte zwar ganz artig an, dass sich eine Datei geändert hat. Der empfohlene Aufruf "systemctl daemon-reload" plus anschliessendem nochmaligen restart von pure-ftp hat aber nix gebracht ... es bleibt hartnäckig bei den 2 Stunden"

    mmmh ... was mach ich wohl falsch? (Terminal mit root-rechten offen, insofern ist "eigentlich" sudo unnötig ... habs mit und ohne versucht ...)

    root@raspberrypi:/etc/init.d# ls -la /etc/localtime
    -rw-r--r-- 1 root root 2309 Mar 27 18:13 /etc/localtime

    root@raspberrypi:/etc/init.d# ls -al /srv/ftp
    total 12
    drwxr-xr-x 2 112 nogroup 4096 Mar 27 14:27 .
    drwxr-xr-x 3 root root 4096 Mar 27 14:27 ..
    -rw-r--r-- 1 root root 170 May 20 2015 welcome.msg

    root@raspberrypi:/etc/init.d# sudo ln /etc/localtime /srv/ftp/etc/localtime
    ln: failed to create hard link \u2018/srv/ftp/etc/localtime\u2019 => \u2018/etc/localtime\u2019: No such file or directory

    Einmal editiert, zuletzt von jwka (28. März 2016 um 13:53)


  • Ich habe auch probehalber einmal die dort genannte Zeile

    [font="Courier New"]TZ="MST7MDT" ; export TZ [/font]

    in der Datei /etc/init.d/pure-ftp eingetragen. Ohne Erfolg. immer noch ZWEI Stunden Unterschied.

    Teste mal mit:

    Code
    TZ="UTC-2" ; export TZ

    Siehe auch die Ausgabe von:

    Code
    TZ="UTC-2" date


    auf deinem PI.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample


  • root@raspberrypi:/etc/init.d# sudo ln /etc/localtime /srv/ftp/etc/localtime
    ln: failed to create hard link \u2018/srv/ftp/etc/localtime\u2019 => \u2018/etc/localtime\u2019: No such file or directory

    Du könntest das auch einfach kopieren:

    Code
    cp /etc/localtime /srv/ftp/etc/localtime


    Evtl. ist dein Verzeichnis aber nicht /srv/ftp/etc/


  • Teste mal mit:

    Code
    TZ="UTC-2" ; export TZ

    Siehe auch die Ausgabe von:

    Code
    TZ="UTC-2" date


    auf deinem PI.

    Nur, damit wir auf derselben page sind ...

    1.) Änderung in /etc/init.d/pure-ftp

    2.) dann
    systemctl deamon-reload
    service pure-ftpd restart

    und im Client ne neue Session öffnen ... sonst noch was?


  • ... sonst noch was?

    Nein, ... denn es muss lediglich, der Eintrag bzw. die geänderte/ergänzte Konfiguration in der "/etc/init.d/pure-ftp"-Datei, wirksam werden.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Leider kein Erfolg. Habe übrigens "vorsichtshalber" dieselbe Zeile auch nach

    restart|force-reload)

    eingefügt ... irgendwie komm ich nicht weiter ... was ein Käse. Nun würde ich noch gerne das mit der Datei-Kopie bzw. dem Hardlink ausprobieren. Nur: Wohin müsste der Zeigen / die Datei kopiert werden?

    Danke nochmals!
    jwka

  • Und auch ein kompletter Neustart hat nicht geholfen ... leider.

    ABER:
    1.) Bei Nutzung von Filezilla bleibt das Datum erhalten ... ist also offenbar ein Problem von BeyondCompare ...

    2.) Bei genauer Betrachtung - und das auch unter Nutzung von Filezilla - mußte ich feststellen, dass die files auf dem RasPi ALLE kleiner sind - und zwar immer so um 2,5 - 3%.

    Ein "echtes" compare, also des Inhalts sagt dann aber "identisch", und wenn ich mir die Dateien unter Windows ansehe, so entspricht das Delta in Bytes EXACT der Anzahl Zeilen. Und das ist dann wieder unabhängig von der Client-Software, also sowohl für Beyond Compare als auch für FileZilla zutreffen.

    Da muß also bei der Übertragung also noch mehr "schief" gehen.

    Kann mir da jemand helfen?

    Einmal editiert, zuletzt von jwka (29. März 2016 um 09:08)

  • Das sieht nach ASCII / Binary Konvertierung aus. Textdateien werden beim Austausch zwischen Windows, Linux und MAC konvertiert, sprich das Zeilenende wird dem Zielsystem angepasst.

    Wenn du die Dateien auf dem Raspi nicht wirklich brauchst, sondern nur lagerst, kannst Du alles in Binary übertragen.


    [TOM]


  • Wenn du die Dateien auf dem Raspi nicht wirklich brauchst, sondern nur lagerst, kannst Du alles in Binary übertragen.[TOM]

    Tja, und da ist das Problem: Es handelt sich um Dateien eines Frameworks (PHP, EXE, INI's, Daten, XML, JSON etc.) und da wäre es super wichtig, dass ich mit gerinstem Aufwand sehen kann, ob eine aktuelle Version (gleicher Timestamp, gleiche Dateigröße) dort liegt. Denn das System wird über VIELE Geräte - PC's, Raspi's, Banana's und andere verteilt und benutzt.

    Bei einem Update von nur wenigen Dateien will ich nicht immer alles übertragen müssen ...

    Bisher - unter verschiedenen Windosws Systemen hat das ganz prima mit eben "Beyond Compare" geklappt.

    Ich frage mich, ob man dem pure-ftpd es "abgewöhnen" kann, in den Dateien "rumzufuddeln" denn er schiebt mir bei anderen Dateien noch mehr zusammen und nimmt dort teilweise die LF's auch noch raus ... keine Ahnung, warum aber eben völlig inakzeptabel!

    Variante wäre, einen anderen FTP Server zu nehmen ... aber proftpd ist auch schon ausgefallen (weil der halt das Datum komplett verratzt und es das Upload-Datum stellt ...

    Mir wird allmählich klar, warum Linux es so schwer hat, bei "Windows-verseuchten" (und ich überlege wirklich, umzusteigen!) einen Fuß an Deck zu bekommen. Es erinnert mich einfach vieles an MVS oder VMS auf den IBM Mainframes ... aber das war 1983 ... und dabei LIEBE ich command lines ...

  • Das System auf UTC lassen.
    Keine Zeitzoneneinstellung im System vornehmen, und, wenn benötigt, die Applikationen die Zeit für die Zeitzone ausrechnen lassen, wenn eine Zeit angezeigt werden soll.

    Ja, nicht schön, wenn aber einige gewünschte Anwendungen mit Zeitzonen auf die Schnautze fliegen, bleibt einem nichts anderes übrig.

    Computer ..... grrrrrr


  • Das System auf UTC lassen.
    Keine Zeitzoneneinstellung im System vornehmen, und, wenn benötigt, die Applikationen die Zeit für die Zeitzone ausrechnen lassen, wenn eine Zeit angezeigt werden soll.

    Ja, nicht schön, wenn aber einige gewünschte Anwendungen mit Zeitzonen auf die Schnautze fliegen, bleibt einem nichts anderes übrig.

    Ist tatsächlich ne funktionierende Variante ... aber dann muss ich auch auf meinem Hauptrechner (also auf Client-Seite) alles in UTC lassen ... das ist:

    1.) nicht wirklich praktikabel, besonders, wenn man oft zwischen Zeitzonen reist
    2.) für Systeme bei Kunden nicht machbar

    Ich werd' mir mal irgend ne Strategie für Updates überlegen müssen ... umpf! :wallbash:

  • Wir hatten hier mal das Problem, dass durch eine Software-Installation auf strategischen Systemen die Zeitzone verstellt worden war.
    Das war irgend ein popliger Patch, der falsch konfiguriert worden ist.

    Und wenn dann die Datenübertragung von und zu diesen Systemen über Zertifikate läuft, stimmen plötzlich diese Zeiten nicht mehr.

    "Sehr schön"
    Die betroffenen Kollegen waren begeistert. erst einmal den Grund finden, warum das System plötzlich die falsche Zeitzone eingestellt hat, und dann das wieder zurück drehen.

    Computer ..... grrrrrr


  • Wir hatten hier mal das Problem, dass durch eine Software-Installation auf strategischen Systemen die Zeitzone verstellt worden war.
    Das war irgend ein popliger Patch, der falsch konfiguriert worden ist.

    Und wenn dann die Datenübertragung von und zu diesen Systemen über Zertifikate läuft, stimmen plötzlich diese Zeiten nicht mehr.

    "Sehr schön"
    Die betroffenen Kollegen waren begeistert. erst einmal den Grund finden, warum das System plötzlich die falsche Zeitzone eingestellt hat, und dann das wieder zurück drehen.

    Naja, ich würd' ja gern den Grund finden ... und beheben, wenn denn möglich ... aber ich hab keine Idee, wo ich da bei pure-ftp hinfassen könnte ...

    ... und den Sourcecode durchzuarbeiten ... das wäre in meiner Projektliste wohl Position #1849 ... würde also so etwa im Jahr 2056 in Angriff genommen ... da leb' ich aber voraussichtlich nicht mehr.


  • Naja, ich würd' ja gern den Grund finden ... und beheben, wenn denn möglich ... aber ich hab keine Idee, wo ich da bei pure-ftp hinfassen könnte ...

    das "Problem" kommt mir bekannt vor in Verbindung mit

    FTP filezilla, FritzboxNAS, winSCP, windowsXP

    Ich habe keine Lösung gefunden und aufgehört zu suchen, vielleicht ergibt sich ja hier wieder was Neues.

    Uhrzeit auf der Fritzbox stimmt ptb Zeitserver, auf den win Rechner stimmt es auch und trotzdem klemmt es irgendwo, ich glaube ea liegt oder lag am FTP client in irgendeiner tieferen Einstellung.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • das "Problem" kommt mir bekannt vor in Verbindung mit

    FTP filezilla, FritzboxNAS, winSCP, windowsXP

    Ich habe keine Lösung gefunden und aufgehört zu suchen, vielleicht ergibt sich ja hier wieder was Neues.

    Uhrzeit auf der Fritzbox stimmt ptb Zeitserver, auf den win Rechner stimmt es auch und trotzdem klemmt es irgendwo, ich glaube ea liegt oder lag am FTP client in irgendeiner tieferen Einstellung.


    Vielleicht sollten wir mal damit anfangen, Fakten zusammenzutragen - ich habe nicht den Eindruck, dass es am FTP Client liegt ... sonst müßte das Problem ja "immer" auftreten.

    Bei mir:
    "Any Client" unter Windows --> Filezilla Server unter Windows --> OK (ggf. muss "ignore 1hrs diff" eingestellt sein, wenn Server / Client unterschiedliche DST-Einstellungen haben, aber das ist sogar bei USB Platten manschmal nötig ...)
    "Any Client" unter Windows --> pure-ftp unter Rasberian --> Problem


  • ... - ich habe nicht den Eindruck, dass es am FTP Client liegt ... sonst müßte das Problem ja "immer" auftreten.

    Beim Client müsste man das ja konfigurieren und diese Befehle müssten vom Server auch unterstützt bzw. akzeptiert werden. Z. B.:

    Zitat


    MDTM
    Short for MoDification TiMe, this command is used by the client to request the modification time of a file on the server. This command is defined formally in RFC 3659, and is a commonly implemented FTP command. Note that this command cannot be used to change the modification time of the file on the server; it only reports on the file's modification time. The MFMT command is used to change a file's modification time.

    MFMT
    Short for Modify Fact: Last Modified Time, supported by mod_facts. Some clients use this command to change the last modified timestamp on a newly uploaded file so that the timestamp on the server matches the timestamp of that file on the client.

    Quelle: http://proftpd.org/docs/howto/FTP.html

    BTW: Den Filezilla-Client könnte man so konfigurieren.

    EDIT:

    Ich denke, das liegt am:

    Code
    Status: Calculating timezone offset of server...
    Command: mtime "<Datei>"
    Response: 1456438406
    Status: Timezone offsets: Server: 3600 seconds. Local: 7200 seconds. Difference: 3600 seconds.

    D. h., der Unterschied (... ermittelt hier durch den Filezilla-Client) im "timezone offset" bei Server und bei Client (local).

    EDIT 2:

    Mit "Adjust server timezone offset: -1" im Filezilla-Client, zeigt dieser hier (... d. h. auch während der CEST) das richtige Datum/Uhrzeit der Dateien an.

    EDIT 3:

    timeoffset der Dateien/Verzeichnisse (... auf dem Server), kann man z. B. mit:

    Code
    ls -latr --time-style=full-iso


    anzeigen lassen.

    Beachte den timeoffset der Datei, mit Hilfe dessen der Filezilla-Client, "timezone offset of server" errechnet.

    Code
    Status:	Calculating timezone offset of server...
    Command:	mtime ".profile"
    Response:	1456448653
    Status:	Timezone offsets: Server: 3600 seconds. Local: 7200 seconds. Difference: 3600 seconds.
    
    
    :~ $ ls -latr --time-style=full-iso .profile
    -rw-r--r-- 1 xx xx 675 2016-02-26 02:04:13.578393664 +0100 .profile
    Code
    Status:	Calculating timezone offset of server...
    Command:	mtime ".profile"
    Response:	1459287535
    Status:	Timezone offsets: Server: 7200 seconds. Local: 7200 seconds. Difference: 0 seconds.
    
    
    
    
    :~ $ ls -latr --time-style=full-iso .profile
    -rw-r--r-- 1 xx xx 676 2016-03-29 23:38:55.404998718 +0200 .profile

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    Einmal editiert, zuletzt von rpi444 (29. März 2016 um 23:44)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!