Estou usando o gnu tar
com algumas instâncias --exclude
especificadas.
Eu recebo os dois
Removing leading / from member names
e
Removing leading / from hard link targets
avisos. Qual é a diferença entre eles?
Responder1
Nenhuma entrada dentro de um tarball pode começar com "/", ou seja, ter um caminho absoluto. É um recurso de segurança, de modo que se você descompactar o tarball, você pode ter certeza de que todos os arquivos residirão no diretório e subdiretórios de destino, em vez de ficarem espalhados por todo o sistema (e possivelmente sobrescrevendo arquivos críticos).
Os avisos que você vê resultam da tar
remoção do "/" inicial de quaisquer caminhos absolutos, tanto para arquivos normais ("nomes de membros") quanto para links físicos ("destinos de links físicos").
Por exemplo, este comando...
/home/user $ tar czf tarball.tgz /home/user/data
... resultaria nesses avisos, pois "/home/..." é convertido em "home/...". Descompactando o tarball...
/home/user $ tar xzf tarball.tgz
... resultaria na descompactação de todos os arquivos para /home/user/home/user/data
. Se tar
as barras iniciais não tivessem sido removidas, os arquivos /home/user/data
teriam sido substituídos.