文件复制工具将在目标位置保留硬链接

文件复制工具将在目标位置保留硬链接

rsync 有一个--hard-links选项:

   -H, --hard-links
          This tells rsync to look for hard-linked files in the source and
          link together the corresponding files on the destination.  With-
          out  this option, hard-linked files in the source are treated as
          though they were separate files.

但是,当我尝试将硬链接文件从一个卷复制到另一个卷时,我发现硬链接在目的地消失了 - 每个硬链接文件的链接数为 1(而不是 >=2)。

我用一个rsync命令将硬链接文件复制在一起。

我是否遗漏了什么或者rsync无法保留目的地的硬链接?

答案1

它在这里有效。正如@xenoid 在上面的评论中暗示的那样,如果目标文件系统是 FAT32 或其他不支持硬链接的文件系统,您将永远无法保留硬链接。

$ file test /tmp/test
test:      directory
/tmp/test: cannot open `/tmp/test' (No such file or directory)
$ rsync -Ha test /tmp/
$ ls -li test /tmp/test
/tmp/test:
total 3
110995 -rw-------  2 james  james  0 Aug  3 14:40 file1
110996 -rw-------  2 james  james  0 Aug  3 14:40 file2
110994 -rw-------  1 james  james  0 Aug  3 14:40 file3
110995 -rw-------  2 james  james  0 Aug  3 14:40 hard-link-to-file1
110996 -rw-------  2 james  james  0 Aug  3 14:40 hard-link-to-file2

test:
total 3
106655 -rw-------  2 james  james  0 Aug  3 14:40 file1
106656 -rw-------  2 james  james  0 Aug  3 14:40 file2
106657 -rw-------  1 james  james  0 Aug  3 14:40 file3
106655 -rw-------  2 james  james  0 Aug  3 14:40 hard-link-to-file1
106656 -rw-------  2 james  james  0 Aug  3 14:40 hard-link-to-file2

相关内容