情况如下:
通常情况下,我会直接在A和B之间rsync的一切,但由于目前严重有限的带宽,我需要不同的东西,因为rsync超时后build立430文件列表(49Mb未压缩…可以压缩到〜7Mb)。
到目前为止,我已经尝试了一下: rsync从A到C的所有内容,tar,复制压缩包,然后解压缩,但是,这会混淆所有权和/或权限。
要从A同步到C,我运行这个命令:
rsync --numeric-ids --password-file=/root/rsync_pwd_file -oaPvu rsync://[email protected]/portal_2/ ./portal_2/
…从外观上来看,他们最终以正确的所有权/许可权/标志/所有权(不是100%确定,但是还有更多的开关可以扔进去吗? ?)
复制压缩包足够简单(由于带宽的缘故,单腿龟很慢,但是校验和没有问题)
我不确定的是用于创build和解压缩tarball的标志和开关,所以有人可以提供完整的命令来从机器C上的/ root / portal_2创build一个tarball,并将tar包解压到/ var机器B上的/ ex / portal_2? ?
另外,还有什么其他的方法值得一提,可以让我执行这个? 我有根访问A和C,而我只有rsync访问B.
PS:我在机器B上运行rsync v2.6.9,不幸的是我没有机会升级到v3
所以,要回答tar问题:
cd /root; tar -jcv --numeric-owner -f portal_2.tar.bz2 portal_2
和
cd /var/ex; tar xf portal_2.tar.bz2
我不太清楚,如果我正确地阅读你的问题。 可以直接和B说话吗? 如果是这样,只需使用rsync -e 'ssh -oServerAliveInterval=30'来避免rsync / ssh超时。
如果A不能直接与B交谈,我会尝试以下方法:
ssh -R2222:B:22 A ) rsync -e 'ssh -oServerAliveInterval=30'来避免rsync / ssh超时。 这样,您避开了用户问题,并解决了超时问题。