Was ist der effizienteste Weg, um eine Website über SFTP ohne vollen SSH-Zugriff zu migrieren?

506
knsheely

Ich muss eine relativ große Website auf einen neuen Server für einen Client mit möglichst geringer Ausfallzeit migrieren.

Leider erlaubt der aktuelle Host des Clients nur SFTP-Zugriff ohne vollen Zugriff auf SSH. Ich habe versucht, die Datei über sshfs zu mounten und gite zu benutzen, um die Site von dort zu klonen, aber das Ausführen von git-Befehlen wird am Ende zu langsam. Die erforderliche Ausfallzeit ist für den Kunden nicht akzeptabel.

Das Herunterladen der vollständigen Website und das anschließende Hochladen ist ebenfalls unpraktisch, da es Stunden dauert.

Ich würde rsync verwenden, aber so wie ich es verstehe, benötigt rsync vollen Zugriff auf den Server, um ordnungsgemäß zu funktionieren.

Hat jemand andere Vorschläge?

0
"Das Herunterladen der gesamten Website und das anschließende Hochladen ist ebenfalls unpraktisch, da es Stunden dauert." - Sie sagen also, der Client hat keine Sicherung seiner Site? Das ist beunruhigend. djsmiley2k vor 6 Jahren 0
Sie haben es nicht getan, aber ich glaube nicht, dass dies für das Thema wirklich relevant ist. Der Upload des Backups würde noch Stunden dauern. knsheely vor 6 Jahren 1

1 Antwort auf die Frage

0
knsheely

Ich konnte rsync lokal verwenden, indem ich das Dateisystem mithilfe von sshfs in einem lokalen Verzeichnis auf dem neuen Server anhängte und dann rsync in ein anderes Verzeichnis ausführte. Die anfängliche Synchronisierung ist etwas langsam, aber sobald sie einmal synchronisiert wurde, war die nachfolgende Synchronisierung, die ich während der Ausfallzeit ausführte, ausreichend schnell.

Stellen Sie sicher, dass die Sicherung installiert ist und führen Sie Folgendes aus:

sshfs [user@]hostname:[directory] intermediate-directory 

Verwenden Sie dann rsync, um mit dem endgültigen Verzeichnis zu synchronisieren.

rsync -azP --delete intermediate-directory/ final-directory 

Wenn Sie rsync zum ersten Mal ausführen, müssen Sie alles herunterladen. Erwarten Sie daher, dass dies einige Zeit dauern wird. Solange Sie keine Prüfsummen verwenden oder nichts tun, für das rsync vollständige Dateien herunterladen muss, ist die nächste Synchronisierung viel schneller, da nur geänderte Dateien heruntergeladen werden. Ich empfehle, den Befehl einmal auszuführen, bevor Sie die Site herunterfahren können, um sicherzustellen, dass die aktuellsten Dateien verfügbar sind. Dann sofort wieder starten.