Frage

Ich erhalte die folgende Fehlermeldung beim Versuch der neueste Cygwin-Version von rsync in Windows XP SP2 ausgeführt wird. Der Fehler tritt auf für Versuche auf lokalen Syncs (das heißt: Quelle und Ziel auf der lokalen Festplatte nur) und Remote-Synchronisierungen ( „-e SSH“ aus dem Paket openssh verwenden). Alle Ratschläge, wie zu beheben / umgehen es?

bash-3.2$ rsync -a dir1 dir2
rsync: Failed to dup/close: Socket operation on non-socket (108)
rsync error: error in IPC code (code 14) at /home/lapo/packaging/tmp/rsync-2.6.9/pipe.c(143) [receiver=2.6.9]
rsync: read error: Connection reset by peer (104)
rsync error: error in IPC code (code 14) at /home/lapo/packaging/tmp/rsync-2.6.9/io.c(604) [sender=2.6.9]
War es hilfreich?

Lösung

Nicht wirklich eine Antwort auf Ihre Frage, aber ich habe festgestellt, Delta Copy eine viel bessere Alternative als herum~~POS=TRUNC mit Cygwin zu sein. Es verbindet sich mit regelmäßigen rsync-Daemons zu.

Andere Tipps

Sie haben wahrscheinlich etwas blockiert rsync. In meinem Fall ist es NOD32 Antivirus. Sie können dies überprüfen, indem Sie rsync in ‚gdb‘ läuft wie folgt:

$ gdb --args /usr/bin/rsync -a somedir/ anotherdir
GNU gdb 6.8.0.20080328-cvs (cygwin-special)
.....
(no debugging symbols found)
(gdb) run 

beachten Sie den Befehl „Ausführen“ nach gdb gestartet wurde. Sie werden eine Ausgabe wie diese:

Starting program: /usr/bin/rsync -a somedir/ anotherdir
.....
(no debugging symbols found)
warning: NOD32 protected [MSAFD Tcpip [TCP/IP]]
warning: NOD32 protected [MSAFD Tcpip [UDP/IP]]
warning: NOD32 protected [MSAFD Tcpip [RAW/IP]]
warning: NOD32 protected [RSVP UDP Service Provider]
warning: NOD32 protected [RSVP TCP Service Provider]
(no debugging symbols found)
(no debugging symbols found)
---Type <return> to continue, or q <return> to quit---
(no debugging symbols found)
[New thread 1508.0x720]
[New thread 1508.0xeb0]
[New thread 1508.0x54c]
rsync: Failed to dup/close: Socket operation on non-socket
(108)
rsync error: error in IPC code (code 14) at
/home/lapo/packaging/rsync-3.0.4-1/src/rsync-3.0.4/pipe.c(147)
[receiver=3.0.4] 

So müssen Sie rsync zu Ihrer Ausschlussliste in diesem Virenscanner hinzufügen (NOD32):

c: \ cygwin \ bin \ rsync.exe

Beachten Sie, dass ein seit langem bestehendes Rohr Implementierung Fehler in Cygwin verursacht rsync hängen, wenn es über eine SSH-Verbindung verwendet wird.

Wie von Cygwin v. 1.7 scheint es, dass die einzige zuverlässige Art und Weise viele Daten mit rsync zu übertragen, ist auf einen rsync-Daemon mit dem rsync-Protokoll zu verbinden. Deltacopy ist nur ein ziemlich Wrapper für diese Methode.

Einige Benutzer offenbar Erfolg gehabt hat oben auf SSH-Daten von Windows auf Unix statt Ziehen von Windows auf der Unix-Seite schieben. Nach unserer Erfahrung, die allerdings auch ist unzuverlässig.

Google für Cygwin, rsync, ssh und Rohr / hängen / Stall und Sie werden mehr Informationen zu diesem Problem finden.

Ich habe dies ein Winsock Fehler erwiesen. Ich bestätigte das Problem beginnt mit der Installation der ATT Communcations Manager (Version 6.12.0046.0) für die Sierra Wireless AirCard (875U). Deinstallieren der Communications Manager und der rsync Fehler weggeht.

scroll top