O que é uma maneira rápida de copiar muitos arquivos de um disco rígido interno para um 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 ... você escolhe.

Eu quero copiar tudo para um disco rígido USB externo (capacidade de 1,5 tb).

O PC desktop 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.

Começou a copiar, mas parece estar a decorrer muito lentamente. Cerca de 10 minutos depois e é feito apenas cerca de 500 MB. Tenho certeza de que isso é mais lento do que o que poderia conseguir com menos dados totais.

Então, estou pensando se há uma maneira mais rápida de fazer isso.

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

    
por jonathanconway 22.08.2009 / 10:49

4 respostas

10

Verifique se você está usando uma porta USB2.0 e verifique se o controlador USB 2.0 diz "alta velocidade" - muitos fabricantes desonestos vendem os dispositivos USB "full speed (12)" com um etiqueta proeminente "USB 2.0", que é tecnicamente precisa, mas engana as pessoas que acham que o USB 2.0 implica "Alta velocidade".

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

mount -o remount,async... /dev/usbdisk ...
    
por 22.08.2009 / 10:57
10

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

Resumindo:

rsync -avP src/ dst/

Se você estiver transferindo por meio de uma interface de rede, adicione o argumento -C para ativar a compactação. Na maioria dos casos, você terá acesso à largura de banda para não prejudicar as apresentações, mesmo que o conteúdo já esteja compactado.

Se puder, você deve tar seus dados antes de transferi-los, isso irá aliviar o sistema de arquivos de ter que criar muitos arquivos, adicionar timestamps, alocar espaço ... em cada arquivo. Você provavelmente verá uma melhora na velocidade da cópia.

    
por 14.02.2011 / 14:31
9

Se eu tivesse uma quantidade enorme de dados para copiar, eu tiraria a unidade do gabinete externo e a colocaria internamente no computador, e a colocaria de volta no gabinete quando eu terminasse. Eu mantenho um par de cabos SATA e compartimentos de unidade abertos para esse tipo de necessidade. Abrir o gabinete e religá-lo depois consome tempo, mas a cópia em si será mais rápida.

    
por 22.08.2009 / 13:08
3

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

To being with, I simply plugged in and mounted the hard drive and dragged the top-level folder onto the drive.

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

Would it be better to copy it in portions of 500MB or so, rather than all at once?

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

    
por 22.08.2009 / 12:03