如何在 Linux 中使用软链接对目录层次结构进行 tar ball 处理?

如何在 Linux 中使用软链接对目录层次结构进行 tar ball 处理?

如何在 Linux 中对带有软链接的目录层次结构进行 tar 打包/压缩?

答案1

GNU tar 通常会在其生成的 tarball 中包含符号链接。如果您希望它包含符号链接指向的文件,则在创建 tarball 时传递-h/ 。--dereference

答案2

当与标准参数一起使用时tar xvf,软链接将以软链接的形式保存在 tar 存档中。然后有两种情况:

  • 如果您的符号链接是完整路径名,则解压时它可能会被破坏。
  • 如果您的符号链接是相对路径名,则在您正在压缩的文件夹下,提取时它将正常工作。

如果您想要 tar 文件而不是符号链接,则可以使用参数-h / --dereference

答案3

换一种方式,使用 /etc 作为示例:

find /etc | cpio -puvdm . ; tar czf ttt.tgz etc
rm -rf etc
tar xvzf ttt.tgz
ls -l etc/rc*

相关内容