tar 是否保留链接?

tar 是否保留链接?

可能重复:
如何在 Linux 中使用软链接打包目录层次结构

我正在使用 tar 将文件和目录从 Solaris 机器复制到 Linux 机器。

  • Tar 是否保留符号链接、硬链接和使用绝对路径的链接?

我正在从根目录逐个复制目录,我没有将整个目录复制/到新服务器,因为我已经设置了几个目录。

答案1

看看手册页,至少对于 gnu tar 来说:

   -h, --dereference
          follow symlinks; archive and dump the files 
          they point to

   --hard-dereference
          follow hard links; archive and dump the files 
          they refer to

答案2

一般来说,它取决于 tar 实现和命令行选项。

GNU tar 有这样的选项http://www.gnu.org/software/tar/manual/html_node/hard-links.html

我建议您使用 cpio 而不是 tar。cpio 格式在 UNIX 上更易于移植,并且 cpio 保留了硬链接

答案3

可以,具体取决于您给出/不给出的选项。此外,对于硬链接,它只会保留您当前正在处理的数据集内的硬链接 - 例如,如果您在目录中的文件链接到中的文件之间有硬链接a/b/但您只归档/解压a/,则它不会保留该链接。

答案4

在这种情况下您应该尝试 Rsync。

相关内容