tar: elimine a mensagem de erro: 'tar: Removendo `/' principal dos nomes dos membros '

16

Eu corro isso de um cronjob:

tar -czvf /var/backups/svn.tgz /var/svn/*

Isso gera isso no stderr:

tar: Removing leading `/' from member names

Eu gostaria de evitar isso porque não é um erro real (para mim!). Eu quero no stderr apenas coisas com as quais eu deveria me preocupar?

Como posso matar essa mensagem?

Sinto que é uma questão de usar a opção tar -C, mas não tenho certeza e não sei como.

Obrigado pela ajuda,
Dan

dan
fonte
Veja também tar: Removendo `/ 'principal dos nomes dos membros
Restabeleça Monica - M. Schröder

Respostas:

12

suas opções:

-P, --absolute-names : don't strip leading `/'s from file names

ou

-C /

(e um caminho relativo para que as coisas cheguem ao alcatrão) ... depende do que você deseja.

Exemplo de uso de criação de um arquivo tar usando a opção -C (removendo a barra inclinada):

tar -czf /tmp/archive.tgz -C /etc .
iiegn
fonte
2
Eu não quero -P. Eu quero -C, mas não consigo fazê-lo funcionar.
dan
5
Eu descobri: tar -czvf /var/backups/svn.tgz -C / var / svn /
dan
Emprestando um aviso sobre -P de outro encadeamento: arquivos com locais absolutos são um risco de segurança. Os invasores podem usar esses arquivos para induzir os usuários a instalar arquivos em locais críticos do sistema.
Gmode 31/07/19
Arquivos com locais absolutos são um risco de segurança. Os invasores podem usar esses arquivos para induzir os usuários a instalar arquivos em locais críticos do sistema.
AB
0

Você pode escrever

# ( tar czvf tar.file /path 2>&1 ) >log.file

A mensagem será gravada em log.file

Andreas
fonte