shell Backup

Rekursives Hochladen von Dateien und Ordnern auf Remote-Server über SSH mit rsync

Shou Arisaka
3 Min. Lesezeit
18. Nov. 2025

Dieses Mal geht es darum, wie man rsync verwendet. Übrigens führe ich diese Überprüfung auf Bash on Ubuntu on Windows durch, sodass es ohne Probleme von denen verwendet werden kann, die Bash on Ubuntu on Windows verwenden.

Ich dachte daran, dies mit [xserver] zu tun, aber ich konnte es aufgrund des später erwähnten Bugs nicht, also werde ich es mit [conoha] versuchen, das ich kürzlich vertraglich abgeschlossen und überhaupt nicht berührt habe.

Verwendung von rsync

Synchronisiere src auf Remote zu dst lokal $ rsync -av -e ssh [user]@[host]:./src/ dst Synchronisiere src lokal zu dst auf Remote $ rsync -av -e ssh ./src/ [user]@[host]:dst

rsync zu conohas VPS

Sie können es so machen.

rsync -av -e "ssh" -r "/mnt/c/ContaCam/Logicool HD Pro Webcam C920/2018/" root@YOUIPADDR:/root/lib/contacam

Übrigens ist in diesem Beispiel die Annahme, Videos, die von contacam aufgenommen wurden, automatisch auf den Server hochzuladen.

Selbst wenn ein Eindringling den Computer zerstört oder der Computer in einem Feuer brennt, können Sie das Video später überprüfen. Seelenfrieden.

:~/lib# ls contacam/2018/01/31/確認済み/
det_2018_01_31_08_23_53.gif  det_2018_01_31_08_24_12.gif  det_2018_01_31_08_26_38.gif  det_2018_01_31_08_28_57.gif  rec_2018_01_31_16_17_52.mp4
det_2018_01_31_08_23_53.mp4  det_2018_01_31_08_24_12.mp4  det_2018_01_31_08_26_38.mp4  det_2018_01_31_08_28_57.mp4

Ja, sowohl Ordner als auch Dateien werden ordnungsgemäß gesichert.

rsync zu xserver

rsync -av -e "ssh -p 10022 -i ~/.ssh/yuis.key" -r "/mnt/c/ContaCam/Logicool HD Pro Webcam C920/2018/01/31" [email protected]:/home/yuis/yuis.xsrv.jp/public_html/contacam/

Es hat nicht funktioniert, also funktioniert es möglicherweise nicht. Funktioniert wahrscheinlich. Wenn .bashrc nicht durcheinander ist.

Fehler 1: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: unexplained error (code 255) at io.c(226) [sender=3.1.1]

Permission denied (publickey,gssapi-keyex,gssapi-with-mic). rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: unexplained error (code 255) at io.c(226) [sender=3.1.1]

Die Ursache dieses Fehlers scheint zu sein, dass SSH-Verbindungseinstellungen nicht richtig konfiguriert sind. Zum Beispiel ist der Port 10022 statt 22, aber das ist nicht eingestellt, oder eine private Schlüsseldatei wird benötigt, aber nicht eingestellt.

Ich verwende [xserver], also um mit xserver als Beispiel zu erklären, verwendet xserver Port 10022 und öffentliche Schlüssel-Kryptographie.

Also würde der rsync-Befehl so aussehen.

rsync -av -e "ssh -p 10022 -i ~/.ssh/yuis.key" -r "/mnt/c/ContaCam/Logicool HD Pro Webcam C920/2018/01/31" [email protected]:/home/yuis/yuis.xsrv.jp/public_html/contacam/

Dies gibt den oben genannten Fehler.

rsync -av -e "ssh" -r "/mnt/c/ContaCam/Logicool HD Pro Webcam C920/2018/01/31" [email protected]:/home/yuis/yuis.xsrv.jp/public_html/contacam/

Fehler 2: protocol version mismatch — is your shell clean?

protocol version mismatch -- is your shell clean? (see the rsync man page for an explanation) rsync error: protocol incompatibility (code 2) at compat.c(180) [sender=3.0.7]

Die Ursache dieses Fehlers ist .bashrc.

Es gibt keine (grundlegende Lösung).

Als Lösung beziehen Sie sich bitte auf Folgendes.

rsync funktioniert nicht auf einem Remote-Server mit einer .bashrc-Datei.

Auf einem lokalen Client beim Ausführen von rsync:

protocol version mismatch -- is your shell clean? (see the rsync man page for an explanation) rsync error: protocol incompatibility (code 2) at compat.c(180) [sender=3.0.7]

Sie können dies beheben, indem Sie den Befehl entfernen, der Text in .bashrc ausgibt, oder indem Sie die Ausgabe an /dev/null weiterleiten.

Wie Sie lesen können, sollten Sie .bashrc löschen, unnötigen Code entfernen oder an /dev/null weiterleiten (ich verstehe es nicht gut).

Ich wollte keines davon tun, also verwendete ich widerwillig conoha.

Diesen Artikel teilen

Shou Arisaka 18. Nov. 2025

🔗 Links kopieren