我仔细阅读了 rsync 的使用说明,但就是搞不清楚我到底做错了什么。我正尝试通过 SSH 同步两个文件夹。除了一个文件外,文件夹完全相同,如下所示:
nick@rilmir-laptop:~$ ssh -i .ssh/rilmir_passless nick@rilmir ls -l /home/nick/foobar/
total 2540
-rwxrwxrwx 1 nick nick 427676 Jan 19 2008 P1010001.JPG
-rwxrwxrwx 1 nick nick 431335 Jan 19 2008 P1010002.JPG
-rwxrwxrwx 1 nick nick 432706 Jan 19 2008 P1010003.JPG
-rwxrwxrwx 1 nick nick 431954 Jan 19 2008 P1010004.JPG
-rwxrwxrwx 1 nick nick 420208 Jan 19 2008 P1010005-rilmir.JPG
-rwxrwxrwx 1 nick nick 420208 Jan 19 2008 P1010005.JPG
nick@rilmir-laptop:~$ ls -l /home/nick/foobar/
total 2540
-rw------- 1 nick nick 427676 Sij 19 2008 P1010001.JPG
-rw------- 1 nick nick 431335 Sij 19 2008 P1010002.JPG
-rw------- 1 nick nick 432706 Sij 19 2008 P1010003.JPG
-rw------- 1 nick nick 431954 Sij 19 2008 P1010004.JPG
-rw------- 1 nick nick 420208 Sij 19 2008 P1010005.JPG
-rw------- 1 nick nick 420208 Sij 19 2008 P1010005-laptop.JPG
因此,现在我尝试对它们进行 rsync,而我得到的是整个主机目录,就好像 rsync 没有连接到远程一样。
nick@rilmir-laptop:~$ rsync -avz --dry-run -e "ssh -i .ssh/rilmir_passless nick@rilmir:/home/nick/foobar/" /home/nick/foobar/
sending incremental file list
drwxrwxr-x 4,096 2014/08/27 20:00:08 .
-rw------- 427,676 2008/01/19 15:13:12 P1010001.JPG
-rw------- 431,335 2008/01/19 15:13:12 P1010002.JPG
-rw------- 432,706 2008/01/19 15:13:12 P1010003.JPG
-rw------- 431,954 2008/01/19 15:13:12 P1010004.JPG
-rw------- 420,208 2008/01/19 15:13:12 P1010005-laptop.JPG
-rw------- 420,208 2008/01/19 15:13:12 P1010005.JPG
sent 138 bytes received 449 bytes 1,174.00 bytes/sec
total size is 2,564,087 speedup is 4,368.12 (DRY RUN)
nick@rilmir-laptop:~$
我的 google-fu 失败了,我就是搞不清楚为什么会失败。有什么想法吗?
编辑:
是的,我知道这是试运行,这是测试时故意为之。
答案1
删除 dry-run(它意味着只是“模拟”),并使用适当格式的 ssh 参数。
rsync -avz -e "ssh -i .ssh/rilmir_passless" nick@rilmir:/home/nick/foobar/ /home/nick/foobar/
顺便说一句,这会将远程内容带到本地。您可能希望使用 --delete 删除目标上存在但源上不存在的内容。