Obtendo o erro "Bad file descriptor" durante tar

1

Estou tentando tar um diretório com este comando "tar -cpSWf myfile.tar workdir; gzip myfile.tar", mas recebo este erro para alguns dos arquivos em workdir dir.

 tar: my/sub/dir/file1.oa: Cannot seek to 1536: Bad file descriptor

Eu executo o mesmo comando no outro diretório e não há esse erro. É porque os arquivos .oa estão corrompidos ou o disco está falhando? Este é um problema comum ao usar o tar? Existe alguma maneira de reparar esse erro?

    
por user11496 17.02.2014 / 03:53

1 resposta

1

Perguntas

Is it because the .oa files are corrupted, or the disk is failing? Is this a common issue when using tar? Is there any way to repair this error?

Não é realmente relevante se esse problema é típico ou não (eu não o encontrei antes), eu começaria tentando tar em um único arquivo e ver se não é possível isolar o problema pouco mais, e também repita.

$ tar -cpSWf somefile.tar my/sub/dir/file1.oa

Também como um aparte, você pode salvar uma etapa e tarar e compactar tudo de uma vez:

$ tar zcpSWf somefile.tar.gz ...

Eu também procuraria remover temporariamente as opções SW para ver se isso tem algum impacto na sua capacidade de tar desses arquivos problemáticos também.

Se esses erros forem um aviso de que há setores defeituosos no disco rígido, talvez seja necessário executar um fsck ou usar uma ferramenta como HDAT2 para tentar reparar qualquer setor danificado. Esse trabalho de reparo ainda pode deixar o arquivo .oa em um estado corrompido.

    
por 17.02.2014 / 04:22

Tags