[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] problema com o tar
From: |
Gustavo Chaves |
Subject: |
Re: [shell-script] problema com o tar |
Date: |
07 May 2005 23:26:17 -0300 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.4 |
>>>>> On Fri, 6 May 2005 12:50:59 -0700 (PDT), Rodrigo Monteiro
>>>>> <address@hidden> said:
> estou fazendo um backup de alguns dirs em um servidor
> e tem um arquivo de log que esta sendo atualizado
> sempre, em qualquer hora. o problema com o tar eh que
> sempre que ele chega nesse arquivo de log ele diz q o
> arquivo esta sendo alterado constantemente, e para por
> causa desse erro. como faco para contornar esse
> problema?
> uso tar -cf /diretorio e depois bzip2 arquivo.tar
> e nao da para copiar o conteudo desse dir para outro
> lugar por falta de espaco em disco.
Eu nunca havia visto este problema, mas consegui reproduzi-lo fazendo
um tar de um arquivo que estava "crescendo" simultaneamente. A
mensagem obtida foi a seguinte:
tar: txt: arquivo alterado enquanto estava sendo lido
Não encontrei nada a respeiro na documentação do tar, mas olhando o
código vi que a mensagem é gerada na função dump_regular_finish do
módulo create.c. Ela é chamada no final do dump de um arquivo e
compara o ctime do mesmo com o valor que tinha antes de começar o
dump. Note que se trata do ctime, que é alterado quando qualquer
meta-informação sobre o arquivo muda (coisas como o dono, o grupo, as
permissões de acesso ou o seu tamanho), e não do mtime.
Só que pelo que eu entendi, trata-se meramente de uma mensagem de
alerta (um warning) e não de um erro, de modo que o tar não deveria
parar no meio do caminho e nem retornar qualquer código de erro.
Sugiro que você confira o conteúdo do arquivo gerado pelo tar pra
verificar se realmente ele ficou truncado. Além disso, o seu script
deveria verificar o código de término (exit code) do tar pra ver se
ele sinaliza algum erro.
Gustavo.