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


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 .

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

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.