Tar 不保留所有者/权限

Tar 不保留所有者/权限

我在 tar 存档中有一个文件系统备份,创建方法是:

cd / && tar -cpz -f mybackup.tgz usr/local

做一个

tar tvzf mybackup.tgz 

产量:

-rw-rw-r-- otto/otto      450 2010-04-15 22:08 usr/local/alpha-4.5/pkg/conf/PLATFORM/sparc
drwxr-xr-x otto/otto        0 2009-04-01 08:08 usr/local/alpha-4.5/pkg/ui/
drwxr-xr-x otto/otto        0 2009-04-01 08:08 usr/local/alpha-4.5/pkg/ui/src/
drwxr-xr-x otto/otto        0 2009-04-01 08:08 usr/local/alpha-4.5/pkg/ui/src/thyc/
-rw-r--r-- otto/otto     2416 2001-01-13 16:01 usr/local/alpha-4.5/pkg/ui/src/thyc/vid45
-rw-r--r-- otto/otto      569 2001-01-13 16:01 usr/local/alpha-4.5/pkg/ui/src/thyc/vid46

但是,提取如下:

tar xvpz -f mybackup.tgz 

导致以下权限:

剪斷……

-rw-rw-r-- 4 otto otto  450 2010-04-15 22:08 usr/local/alpha-4.5/pkg/conf/PLATFORM/sparc
drwx------ 4 root root  4.0K 2011-03-27 23:20 usr/local/alpha-4.5/pkg/ui/
drwxr-xr-x 7 otto otto  4.0K 2009-04-01 08:08 usr/local/alpha-4.5/pkg/ui/src/
drwxr-xr-x 7 otto otto  4.0K 2009-04-01 08:08 usr/local/alpha-4.5/pkg/ui/src/thyc/
-rw-r--r-- 4 otto otto  2416 2001-01-13 16:01 usr/local/alpha-4.5/pkg/ui/src/thyc/vid45
-rw-r--r-- 4 otto otto  569 2001-01-13 16:01 usr/local/alpha-4.5/pkg/ui/src/thyc/vid46

...剪辑

注意第二行。出于某种原因,该目录现在归 root 所有,权限已更改为 700。其子级具有与其父级相同的原始权限,并且使用正确的权限创建。这只是一个摘录,这在提取的备份中随处可见。

什么原因造成此情况?

谢谢!

答案1

我觉得这像是 tar 中的一个错误。你使用的是哪个版本?如果是 GNU tar,你可以使用 来查找tar --versionGNU tar 版本 1.24 的 NEWS 文件提到了一些与权限相关的错误的修复,这可能是问题所在。

相关内容