Qual é a maneira mais rápida de copiar muitos arquivos de um disco rígido interno para armazenamento externo (USB)?

8

Eu tenho uma grande quantidade de dados - cerca de 500 GB - no disco rígido interno de um PC de mesa. Isso inclui músicas, vídeos, PDFs ... o nome dele.

Quero copiar tudo para um disco rígido USB externo (capacidade de 1,5 TB).

O PC de mesa roda o Ubuntu. Para começar, simplesmente conectei e montei o disco rígido e arrastei a pasta de nível superior para a unidade.

Ele começou a copiar, mas parece estar ocorrendo muito lentamente. Cerca de 10 minutos depois e apenas 500 MB. Tenho certeza de que isso é mais lento do que eu poderia conseguir com menos dados totais.

Então, eu estou querendo saber se existe uma maneira mais rápida de fazer isso.

Seria melhor copiá-lo em seções (ou seja, 500 MB ou mais) em vez de todos de uma vez?

jonathanconway
fonte

Respostas:

10

Verifique se você está usando uma porta USB2.0 e verifique se o controlador USB 2.0 diz "alta velocidade" - muitos fabricantes de má reputação vendem os dispositivos USB "velocidade máxima (12)" com uma etiqueta destacada "USB 2.0" na eles, que são tecnicamente precisos, mas enganam as pessoas que pensam que o USB 2.0 implica "alta velocidade".

Verifique também se o seu disco rígido USB tem a opção de montagem " sincronizar " ativada? Essa é outra causa de desaceleração. Você pode remontar o sistema de arquivos com

mount -o remount,async... /dev/usbdisk ...
rkthkr
fonte
+1 .. 500MB / 10min = 50MB / min = 5MB / 6seg = 0,83MB / s = 6,7Mb / s. nem está atingindo velocidade máxima.
quack quixote
10

Qualquer que seja a sua interface para o disco rígido, você deve usar o rsync para copiar os dados, ele pode retomar transferências e arquivos individualmente (--partial), fornece progresso e somas de verificação são verificadas na mídia de destino.

Em resumo:

rsync -avP src/ dst/

Se você estiver transferindo através de uma interface de rede, adicione o argumento -C para ativar a compactação, na maioria dos casos você estará limitado à banda para que não prejudique o desempenho, mesmo que o conteúdo já esteja compactado.

Se você puder tar os dados antes de transferi-los, isso aliviará o sistema de arquivos de ter que criar muitos arquivos, adicionar registros de data e hora, alocar espaço ... em cada arquivo.
Você provavelmente verá uma melhoria na velocidade da cópia.

Shadok
fonte
1
Eu sei que estou atrasado para este, mas o rsync realmente me salvou. Eu tive que recuperar alguns dados para um cliente e a cópia do arquivo no meu sistema Xubuntu estava travando (máquina antiga, unidades antigas). O RSYNC é alimentado diretamente através da cópia do arquivo. Eu usei opções ligeiramente diferentes. fonte de rsync dest -r -v --ignore-existente
pStan
9

Se eu tivesse uma quantidade enorme de dados para copiar, retiraria a unidade do gabinete externo e a colocaria internamente no computador, e colocaria de volta no gabinete quando terminasse. Eu mantenho alguns cabos SATA e compartimentos de unidades abertos para esse tipo de necessidade. Abrindo o gabinete e fechando-o novamente, consome muito tempo, mas a cópia em si será mais rápida.

Paul Tomblin
fonte
3

Você não mencionou o sistema de arquivos no disco USB. É um sistema de arquivos nativo do Linux ou você está usando o ntfs / fat32? Eu acho que se você precisar passar por um fusível, isso lhe custará desempenho.

Para começar, simplesmente conectei e montei o disco rígido e arrastei a pasta de nível superior para a unidade.

Se você tiver tantos dados para copiar, pessoalmente eu ignorarei a GUI, pois isso adicionará uma sobrecarga à sua operação de cópia. Em vez disso, usaria um dos muitos comandos da CLI (cp, rsync, cpio, tar, etc.) para copiar arquivos.

Seria melhor copiá-lo em partes de 500 MB ou mais, em vez de tudo de uma vez?

Se você estiver trabalhando com algo como o rsync, não deve haver razão para copiar arquivos em pequenos conjuntos.

Zoredache
fonte
você está certo, o desempenho do NTFS no linux é sloooooow.
quack quixote