rsync beim Webhosting ?

  • Bei den Binaries im Webhosting fehlt leider aktuell rsync.

    Das ist nicht nur für den effizienten File Transfer interessant, sondern wird auch von einigen Update Scripten benötigt, z.B. roundcube.


    Besteht die Möglichkeit rsync offiziell zu installieren ?


    In älteren Beiträgen war noch von zuviel Systemlast ausgegangen: da auf dem Webhosting aber inzwischen auch Ressourcenintensive Dinge wie git, md5sum, sha*sum und zip verfügbar sind, sollte doch nun auch rsync ok sein ?

  • Für einen feature request solltet ihr einen netcup-Offiziellen (Kommunikation/Support) miteinbeziehen (mention).

    »Hauptsache BogoMIPS!«

    Fleischfresser

    »Sämtliche Cyberrisikomanagementmaßnahmen wurden übererfüllt!«

    Volksfront DLT #60Ksplit

  • Hier zumindest mal dazu ein etwas älteres Statement des ehemaligen Chefs:


    rsync fordert einiges an CPU-Performance zur Berechnung der Checksummes. Aus diesen Grund werden wir rsync nicht im Webhosting anbieten.


    Ich vermute viel wird sich diesbezüglich nicht geändert haben. Ggf. bekommt ihr auch eher eine aktuelle Aussage, wenn ihr euch direkt an den Support wendet.

  • Ich vermute viel wird sich diesbezüglich nicht geändert haben. Ggf. bekommt ihr auch eher eine aktuelle Aussage, wenn ihr euch direkt an den Support wendet.

    Da die Aussage des früheren Geschäftsführers mittlerweile fünf Jahre alt ist und rsync mittlerweile auch xxhash-Unterstützung besitzt, sollte sich die Ausgangsposition mittlerweile (auch dank schnellerer CPUs) allerdings deutlich verbessert haben; diese Anmerkung würde ich bei Anfragen beim Support hinzufügen ... 8o

    VServer IOPS Comparison Sheet: https://docs.google.com/spreadsheets/d/1w38zM0Bwbd4VdDCQoi1buo2I-zpwg8e0wVzFGSPh3iE

    Like 4
  • Hatte auf die Frage ob rsync im Webhosting unterstützt wird, folgende Antwort vom Support am 02.10.23 erhalten:

    Quote

    da Rsync in einer Shared Webhosting Umgabung einiges an Performance nehmen würde ist dies nicht geplant.

    Mit freundlichen Grüßen,

    netcup Team

    Da wird also so schnell nichts.

  • In meiner Static Binary Sammlung gibt es jetzt auch Builds von rsync.


    Static Binaries - netcup Kundenforum
    Moin, als Fortsetzung zu diesem Beitrag, gibt es jetzt die statisch kompilierten Tools hier zum Download: https://files.serverless.industries/bin/ Mehr…
    forum.netcup.de


    // edit: Natürlich mit dem bereits von m_ueberall erwähnten XXHash support!


    //edit 2: Ein Test mit ~20GB Daten (tausende kleine Dateien) mit "rsync -a" auf einer VM im idle: Anstieg des Load Average von 0.6 auf maximal 2.4, alle acht CPU Kerne zur gesamten Zeit maximal bei 10%. Sieht für mich nicht nach Konkurrenz für Crypto Mining aus.

  • //edit 2: Ein Test mit ~20GB Daten (tausende kleine Dateien) mit "rsync -a" auf einer VM im idle: Anstieg des Load Average von 0.6 auf maximal 2.4, alle acht CPU Kerne zur gesamten Zeit maximal bei 10%. Sieht für mich nicht nach Konkurrenz für Crypto Mining aus.

    rsync -avze ssh --rsync-path /pfadzumstaticbinary/rsync.amd64 sshfs:/quelle ./ziel

    Edited once, last by paule: neuland, gestestet ().

    Like 1
  • Da ist doch git vorhanden...
    rsync ist auch im Vergleich zu git langsamer und Last hungriger, besonders wenn es viele Dateien sind (sieh hier für ein Beispiel - 10 Minuten mit git vs. 3-4 Stunden mit rsync).

    Einfach eine oder mehrere git-Repositories anlegen (und/oder klonen) und die dann über git synchronisieren:

    Code
    git add --all
    git commit -am "{data-time} snapshot"
    git push netcup

    Remote (zu netcup) kann man wie folgt einrichten (in .git/config) :

    Code
    [remote "netcup"]
        url = ssh://hostingNNNNNN@example.com:22/path.git
        # optional key (to sync without password):
        puttykeyfile = /path/to/netcup-ssh-key.ppk

    Man hat dann auch weitere Vorteile - es ist vollkommen versioniert: so man kann die komplette Historie verfolgen bzw. zu irgendeine Version zurückkehren, Teile aus der Historie wiederherstellen usw.

    Und wenn die alte Historie irgendwann mal nicht mehr gebrauch wird, einfach synchronisieren, dann .git-Ordner löschen und mit neuer Repository ersetzen, oder einfach vom Grund auf einchecken (git checkout --orphan ... + commit) und alten Branch löschen, oder einfach mehrere Revisionen zusammenführen:

    Code
    git reset --soft "$rev_id" ;# oder "HEAD~N", wo N - Anzahl von commits zurück
    git commit -am "{data-time} snapshot"