Назад | Перейти на главную страницу

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. Его дочерние элементы, которые имеют те же исходные разрешения, что и их родительский объект, создаются с правильными разрешениями. Это просто отрывок, это повсюду в извлеченной резервной копии.

Что могло вызвать это?

Спасибо!

Для меня это похоже на ошибку в tar. Какую версию вы используете? Если это GNU tar, вы можете узнать с помощью tar --version. В Файл NEWS для GNU tar версии 1.24 упоминает некоторые исправления ошибок, связанных с разрешениями, которые могут быть проблемой.