作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一些主机的在线帐户,它给我 FTP 帐户和用户名和密码。
我有另一个公司给了我 FTP 和 rsync。
现在我想使用 rync 将所有文件从旧 FTP 传输到新 FTP。
现在是否可以通过 rsync 来完成,因为我不想先在计算机上复制然后再上传
最佳答案
让我们只用 FTP src
调用机器。
让我们用 FTP 和 SSH dst
调用机器。
ssh dst
cd destination-direction
wget --mirror --ftp-user=username --ftp-password=password\
--no-host-directories ftp://src/pathname/
请注意,在命令行上使用 --ftp-password
运行 wget
会将密码泄露给系统上的任何其他人。 (以及通过网络明文传输它,但你知道这一点。)
如果您无法访问 wget
,那么他们可能有 ncftp
或 lftp
或 ftp
安装。我恰好最了解 wget
。 :)
编辑 要使用 ftp
,您需要做更多类似的事情:
ftp src
user username
pass password
bin
cd /pathname
ls
此时,记下远程系统上的所有目录。使用 !mkdir
创建每一个。然后切换到本地和远程目录:
lcd <dirname>
cd <dirname>
ls
对所有目录重复。使用 mget *
获取所有文件。
如果这看起来很糟糕,那是因为它确实如此。 FTP 不是为此设计的,如果您的新主机没有更好的工具(一定要寻找 ncftp
和 lftp
以及类似 ftpmirror
),然后要么自己编译更好的工具,要么擅长围绕坏工具编写脚本。 :)
或者,如果您可以在 src
上获得一个 shell,那也会有很大帮助。 FTP 并不适合传输数千个文件。
无论如何,这可以避免在您的本地系统中反弹,这应该会显着提高吞吐量。
关于linux - 如何在rsync中通过FTP复制所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5986942/
我是一名优秀的程序员,十分优秀!