Copiando muitos arquivos sem interromper os erros no OSX

16

Preciso copiar vários Gb de um HD externo para o meu gemido hd e alguns arquivos causarão erros. Se eu fizer isso com o localizador, ele será interrompido no primeiro erro.

Existe uma maneira de copiar tudo, independentemente dos erros? Algo como cópia da teracopia no Windows?

cfischer
fonte
Bem, se ocorrer um erro, você provavelmente não deseja copiar esse arquivo. Ou você só quer pular aqueles em que ocorre um erro? E, na verdade, a melhor pergunta seria: Por que você recebe esses erros? Que erros são esses?
Slhck 7/08
Quero copiar todos os outros arquivos e lidar com os erros, sejam eles quais forem depois.
cfischer
Quais erros você está recebendo especificamente?
Slhck 7/08/12
1
Espero que eles adicionem o recurso Windows Vista + ao Finder e continuem copiando enquanto avisam sobre erros.
Matthew Bloqueio

Respostas:

20

No terminal, digite

cp -Rp /Volumes/<source-volume>/<source-user>/<source-folder>/ /Volumes/<destination-volume>/<destination-folder>/

A pasta de destino deve ser uma nova pasta que você está criando.

Se você receber informações sobre a nova pasta após a execução, poderá ver o tamanho da pasta aumentar.

Exemplo

cp -Rp /Volumes/Macintosh HD/User/Bob/Desktop/stufftocopy/ /Volumes/external/newfolder

Ele copiará e exibirá erros para qualquer coisa que não possa copiar, mas sem parar.

* Se os nomes dos diretórios contiverem espaços, coloque aspas no caminho

Exemplo

cp -Rp "/Volumes/Macintosh HD/User/Bob/Desktop/stufftocopy/" /Volumes/external/newfolder
falcorklaatu
fonte
2
alguma explicação sobre a flag -Rp?
User337085 01/08
Isso deve ser diferente para osx, no linux -Rp significa recrutar e preservar atributos, nada a ver com erros.
Benubird
1
man cpno macOS me diz: "No modo -R, o cp continuará copiando mesmo se forem detectados erros."
adriaan
2

Você pode usar cpcomo sugerido ou rsync, mas, no caso de erro de E / S, às vezes não funciona.

Portanto, neste caso, você pode usar a ddferramenta para arquivos específicos que foram corrompidos.

ddsignifica "duplicação de disco". Este é um utilitário de linha de comando fornecido com o Mac OS X. Também está disponível uma versão gratuita para Windows.

Seja extremamente cuidadoso, mesmo se você estiver familiarizado com a linha de comando, pois o dd pode causar danos irrecuperáveis ​​aos seus dados se você não especificar a entrada e a saída corretamente. Você foi avisado.

Os argumentos de dd são diretos:

  • if = path_of_file_with_IO_errors especifica o caminho de entrada
  • of = path_of_clean_copy_to_create especifica o caminho de saída
  • conv = noerror, sync informa ao dd como tolerante a falhas

Seu caminho de saída não deve estar no mesmo disco que o arquivo danificado. Na verdade, você não deve continuar usando o cartão ou o disco com erros de E / S, porque provavelmente causará mais problemas no futuro. Após a recuperação dos dados, você deve descartá-los ou, no máximo, usá-los para armazenar coisas sem importância.

Devido a erros de E / S, o dd pode levar mais tempo para criar a cópia limpa do que uma cópia normal levaria.

Mas realmente vale a pena esperar, porque agora temos um arquivo limpo no qual podemos usar nosso arsenal de ferramentas de diagnóstico, visualização e recuperação de vídeo.

Os erros de E / S são um negócio sério e o descarte do cartão após a recuperação dos vídeos é provavelmente o CERTO A FAZER. Você também deve considerar que uma certa quantidade de filmagens não serão recuperados, ou com uma qualidade menos do que estelar.

Fonte: http://aeroquartet.com/wordpress/2012/06/06/how-to-copy-a-file-with-io-errors/

Exemplo:

dd if=/Volumes/CD/broken_movie.avi of=~/Movies/broken_movie.avi conv=noerror,sync

Veja também:

kenorb
fonte
1
Ouvi dizer que os autores do dd queriam chamá-lo de cc, para cópia carbono, mas cc já foi usado pelo compilador C. Eu gosto disso melhor do que "duplicação de disco"
Tim
1

Eu uso o Beyond Compare exatamente para esse fim (é um software comercial, mas tem uma avaliação gratuita). Você diz para copiar um arquivo, uma pasta ou uma unidade inteira ou qualquer combinação e ela termina no final da tarefa e relata os problemas à medida que avançam. Isso não ajuda a recuperar nenhum arquivo corrompido, mas termina o trabalho, não importa quantos problemas ele encontre.

Tim D
fonte