Se você quer dizer que deseja incluir os arquivos para os quais os links simbólicos apontam, use -h
.
tar -chzf foo.tar.gz directory/
As permissões e a propriedade são preservadas por padrão. Se você quiser apenas incluir os links simbólicos como links simbólicos, deixe de fora -h
. Pequeno -z
é para gzip.
Isso tudo está escrito em man tar
; você pode procurar termos (como "symlink") em man
por meio da tecla de barra invertida / .
Quando você extrai o arquivo ( tar -xzf foo.tar.gz
), a propriedade só será preservada se você descompactar como root , caso contrário, todos os arquivos pertencerão a você. Isso é um recurso, pois, de outro modo, muitas vezes seria impossível para um usuário normal acessar arquivos em um arquivo que eles (por exemplo) baixam. As permissões modais (leitura / gravação / execução) permanecerão as mesmas. Se, como usuário comum, você quiser preservar a propriedade mesmo assim, poderá usar a opção -p
(então tar -xzpf foo.tar.gz
).
No entanto, há um problema.
A propriedade de arquivos é, na verdade, armazenada como um número, não como um nome. o sistema relata nomes correlacionando-os com um valor de /etc/passwd
. Você pode encontrar o número correspondente ao seu nome de usuário com:
grep yourusername < /etc/passwd
Que imprimirá algo como:
piotek:x:1001:1001::/home/piotek:/bin/bash
O primeiro número é o seu número de usuário, o segundo é o seu número de grupo (eles são geralmente os mesmos). Os outros campos são explicados em man 5 passwd
(observe o 5
).
Como consequência, se você extrair alguns arquivos e desempacotá-los em outro sistema como root, ou usar -p
(para que a propriedade seja preservada), e houver um usuário nesse sistema cujo número de usuário seja 1001, os arquivos pertencerão a esse usuário, mesmo que seu nome não seja piotek
(e mesmo que haja um usuário piotek
no sistema com um número correspondente diferente).
A página tar
man é um pouco confusa a esse respeito, já que se refere à opção -p
como envolvendo permissões de arquivo . Essa é uma ambigüidade * nix comum em um contexto em que o estado dos bits de leitura / gravação / execução é chamado de modo .