簡體   English   中英

rsync 錯誤:錯誤的文件號

[英]rsync error: Bad file number

我正在嘗試將內容從本地計算機(64 位 Windows 7)同步到遠程服務器(64 位 Ubuntu 8),但它失敗了。 任何建議都非常受歡迎,因為我已經花了太多時間在這個廢話上......提前謝謝!

$ ls -al
total 3
drwxr-xr-x    4 www www     4096 Jun  7 11:04 .
drwxr-xr-x    5 www www     4096 Jun  7 13:13 ..
drwxr-xr-x    7 www www        0 Jun  7 11:04 release-20110607110404

$ rsync -avz ./release-20110607110404/ www@web1:/home/www/
opening connection using: ssh -l www web1 rsync --server -vvlogDtprze.iLsf . /home/www/
select: Bad file number
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(610) [sender=3.0.8]

$ rsync --version
rsync  version 3.0.8  protocol version 30
Copyright (C) 1996-2011 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, no xattrs, iconv, symtimes   

嘿,我想通了,至少找到了問題的根源......它在來自 msysgit(code.google.com/p/msysgit)的 git bash(code.google.com/p/msysgit)中不起作用,但它在常規 Z0F4137Z683AA22B50445D 命令中工作! 詭異的!!!

好吧,看看這個。 GitBash 帶有一堆 *nix 實用程序(包括ssh )但 cwRsync 也帶有ssh 現在,在我的系統上, ssh附帶的 ssh 版本已經過時了,而 cwRsync 附帶的版本則非常新。 如果我從 GitBash 內部運行which ssh ssh ,顯然 GitBash 版本會出現。 那么,猜猜rsync將使用哪個版本? 我猜是錯誤的。

你可以解決這個問題。

您正在嘗試運行此命令:

rsync -avz ./release-20110607110404/ www@web1:/home/www/

但是由於您想使用不同的ssh ,因此您需要這樣的東西:

rsync -avz -e '<path to cwRsync ssh> www@web1' ./release-20110607110404/ :/home/www/

現在,如果您像我一樣,您將遇到另一個問題,即ssh會抱怨您的 ssh 配置文件的權限錯誤。 那是因為它出於某種原因在/cygdrive/<the correct path to your config file>中查找。 但這也是可以修復的:

rsync -avz -e '<path to cwRsync ssh> -F <path to ssh config> www@web1' ./release-20110607110404/ :/home/www/

現在,請記住,您必須使用到ssh和 ssh 配置文件的路徑需要采用愚蠢的 windows 格式,但我相信如果我不會使用這種格式,我會抱怨我不會使用 mylash 格式為你工作,你可以留在 GitBash 而不是使用 cmd。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM