Como tar um diretório preservando não apenas as permissões, mas também a propriedade

37

Eu tenho que compactar um diretório usando tar.gz, preservando não apenas as permissões, mas também a propriedade / grupos.

E, nesse diretório, existem muitos arquivos que pertencem a muitos usuários.

Paulo Coghi - Restabelecer Monica
fonte

Respostas:

39

Você está procurando o -psinalizador para um exemplo tar -cvpf file.tar folderToCompress: tenha cuidado ao usar o tarcomando, pois é fácil substituir arquivos, se a sintaxe do comando estiver incorreta.

Os proprietários do arquivo são preservados normalmente, ao extrair você precisa usar o --same-ownersinalizador. Como se tar --same-owner -xvf file.taro sinalizador fosse recomendado apenas para superusuários.

Verifique a página do manual tar .

SupaJord
fonte
9
Tem que ser tar -cvpf file.tar(ou talvez melhor ainda em termos de clareza -cvp -f file.tar). Caso contrário, a -fpparte é interpretada como --file pe tarestá gravando no arquivo nomeado em pvez de file.tar.
KT.
4
Além disso, como a resposta mencionada compactação e as pessoas tendem a copiar e colar as respostas das postagens sem pensar de qualquer maneira, deixe-me observar que o idioma popular de arquivamento com compactação seria: tar -czvpf file.tar.gz folderToCompressou tar -cjvpf file.tar.bz2 folderToCompress.
KT.
@KT - você está correto, então eu corrijo o -fsinalizador - embora não tenha corrigido o -zsinalizador de compressão . Para compactação, eu recomendaria -Ipigz(que é um capital i) em vez de -z; em sistemas com vários núcleos, o pigz pode ser consideravelmente mais rápido.
NVRAM
13
Esta resposta está errada. pé um sinalizador de extração , não terá efeito na criação do arquivo morto. Também afeta as permissões de arquivo, não a propriedade. O respectivo sinalizador de propriedade --same-owneré ativado por padrão ao extrair como root.
Vladimir Panteleev
1
O @NVRAM SnowRep desfez suas alterações (!!!). SnowRep, estou votando contra você e restaurando a edição da NVRAM, o que está correto . Por favor, não coloque intencionalmente informações incorretas no site!
Kyle Strand
23

Eu tenho que compactar um diretório usando tar.gz, preservando não apenas as permissões, mas também a propriedade / grupos.

Por padrão, tarpreservará as permissões e a propriedade do arquivo ao criar o arquivo morto.

Para extrair permissões e propriedade de arquivos, você precisará executar tarcomo root ao extrair, pois alterar a propriedade do arquivo geralmente requer privilégios de superusuário. Veja esta pergunta para mais informações.

Vladimir Panteleev
fonte
1
Quando você diz que preserva a propriedade, isso significa o usuário e o grupo?
CMCDragonkai
1
Está correto. O proprietário e o grupo são registrados por padrão (pelo menos no tar GNU).
Vladimir Panteleev