Por que não consigo copiar um grande número de arquivos na minha unidade flash USB?

11

Atualização final:

Acontece que a unidade estava realmente com defeito e eu pude substituí-la - a substituição funciona muito bem!

O que acontece:

  1. Eu insiro a unidade flash.
  2. Eu tento copiar 2 GB de arquivos.
  3. Cerca de 600 MB (mas nem sempre a mesma quantidade) na transferência, aborta e desmonta vigorosamente a unidade.
  4. Conectá-lo novamente o monta como somente leitura devido a erros no sistema de arquivos.

Informações em /var/log/syslog:

4 de abril, 20:19:09 kernel my-laptop: [10720.130076] usb 1-4: novo dispositivo USB de alta velocidade usando ehci_hcd e endereço 2
4 de abril, 20:19:09 kernel do meu laptop: [10720.284655] scsi6: usb-storage 1-4: 1.0
4 de abril 20:19:10 Kernel do meu laptop: [10721.280796] scsi 6: 0: 0: 0: Acesso direto ao Corsair Survivor GTR 0.00 PQ: 0 ANSI: 2
4 de abril 20:19:10 kernel do meu laptop: [10721.281920] sd 6: 0: 0: 0: Attached scsi generic sg3 type 0
4 de abril 20:19:10 Kernel do meu laptop: [10721.284361] sd 6: 0: 0: 0: [sdc] 63438848 Blocos lógicos de 512 bytes: (32,4 GB / 30,2 GiB)
4 de abril 20:19:10 Kernel do meu laptop: [10721.284863] sd 6: 0: 0: 0: [sdc] A proteção de gravação está desativada
4 de abril 20:19:10 Kernel do meu laptop: [10721.284870] sd 6: 0: 0: 0: [sdc] Sentido do modo: 00 00 00 00
4 de abril 20:19:10 Kernel do meu laptop: [10721.284876] sd 6: 0: 0: 0: [sdc] Supondo que o cache da unidade: escreva completamente
4 de abril 20:19:10 Kernel do meu laptop: [10721.287862] sd 6: 0: 0: 0: [sdc] Supondo que o cache da unidade: escreva completamente
4 de abril 20:19:10 Kernel do meu laptop: [10721.287873] sdc: sdc1
4 de abril 20:19:10 Kernel do meu laptop: [10721.301238] sd 6: 0: 0: 0: [sdc] Supondo que o cache da unidade: escreva completamente
4 de abril, 20:19:10 kernel do meu laptop: [10721.301243] sd 6: 0: 0: 0: [sdc] Disco removível SCSI anexado
4 de abril 20:20:03 kernel do meu laptop: [10774.494709] FAT: erro no sistema de arquivos (dev sdc1)
4 de abril 20:20:03 kernel do meu laptop: [10774.494714] fat_free_clusters: excluindo a entrada FAT além do EOF
4 de abril, 20:20:03 kernel do meu laptop: [10774.494718] FAT: o sistema de arquivos foi definido como somente leitura
4 de abril, 20:22:04, kernel do meu laptop: [10895.160070] usb 1-4: redefina o dispositivo USB de alta velocidade usando ehci_hcd e o endereço 2
4 de abril, 20:22:04, kernel do meu laptop: [10895.700029] usb 1-4: dispositivo não aceita o endereço 2, erro -71
4 de abril, 20:22:04 kernel do meu laptop: [10895.820047] usb 1-4: redefina o dispositivo USB de alta velocidade usando ehci_hcd e o endereço 2
4 de abril, 20:22:04, kernel do meu laptop: [10895.950038] usb 1-4: descritor do dispositivo read / 64, erro -71
4 de abril, 20:22:05 kernel do meu laptop: [10896.191050] usb 1-4: descritor do dispositivo read / 64, erro -71
4 de abril, 20:22:05 kernel do meu laptop: [10896.420054] usb 1-4: redefina o dispositivo USB de alta velocidade usando ehci_hcd e o endereço 2
4 de abril, 20:22:05 kernel do meu laptop: [10896.840042] usb 1-4: dispositivo não aceita o endereço 2, erro -71
4 de abril, 20:22:05 kernel my-laptop: [10896.962678] usb 1-4: redefina o dispositivo USB de alta velocidade usando ehci_hcd e o endereço 2
4 de abril, 20:22:06 kernel do meu laptop: [10897.380047] usb 1-4: o dispositivo não aceita o endereço 2, erro -71
4 de abril, 20:22:06 kernel do meu laptop: [10897.380095] usb 1-4: desconexão USB, endereço 2
4 de abril, 20:22:06, kernel do meu laptop: [10897.380122] sd 6: 0: 0: 0: [sdc] Código de erro não tratado
4 de abril 20:22:06 kernel do meu laptop: [10897.380125] sd 6: 0: 0: 0: [sdc] Resultado: hostbyte = DID_ERROR driverbyte = DRIVER_OK
4 de abril 20:22:06 kernel do meu laptop: [10897.380130] sd 6: 0: 0: 0: [sdc] CDB: Write (10): 2a 00 00 12 9e 00 00 00 f0 00
4 de abril, 20:22:06, kernel do meu laptop: [10897.380141] end_request: erro de E / S, dev sdc, setor 1220096
4 de abril, 20:22:06, kernel do meu laptop: [10897.382530] sd 6: 0: 0: 0: [sdc] Código de erro não tratado
4 de abril 20:22:06 kernel do meu laptop: [10897.382534] sd 6: 0: 0: 0: [sdc] Resultado: hostbyte = DID_NO_CONNECT driverbyte = DRIVER_OK
4 de abril 20:22:06 kernel do meu laptop: [10897.382539] sd 6: 0: 0: 0: [sdc] CDB: Write (10): 2a 00 00 12 9e f0 00 00 f0 00
4 de abril, 20:22:06, kernel do meu laptop: [10897.382549] end_request: erro de E / S, dev sdc, setor 1220336
4 de abril 20:22:06 kernel do meu laptop: [10897.385121] FAT: FAT: Falha na leitura do FAT (blocknr 329)
4 de abril 20:22:06 kernel do meu laptop: [10897.385150] FAT: falha na leitura do FAT (blocknr 322)
4 de abril, 20:22:06, kernel do meu laptop: [10897.385173] FAT: falha na leitura do FAT (bloco 329)
4 de abril 20:22:06 kernel do meu laptop: [10897.385188] FAT: FAT: leitura falhada (blocknr 322)
4 de abril, 20:22:06 kernel do meu laptop: [10897.390581] FAT: não é possível ler o bloco do inode para atualização (i_pos 496133)
4 de abril, 20:22:06 kernel do meu laptop: [10897.830055] usb 1-4: novo dispositivo USB de alta velocidade usando ehci_hcd e endereço 3
4 de abril, 20:22:06 kernel my-laptop: [10897.962671] usb 1-4: descritor do dispositivo read / 64, erro -71
4 de abril, 20:22:07 kernel do meu laptop: [10898.200060] usb 1-4: descritor do dispositivo lido / 64, erro -71
4 de abril, 20:22:07 kernel my-laptop: [10898.432548] usb 1-4: novo dispositivo USB de alta velocidade usando ehci_hcd e endereço 4
4 de abril, 20:22:07 kernel my-laptop: [10898.560068] usb 1-4: descritor do dispositivo read / 64, erro -71
4 de abril, 20:22:07 kernel my-laptop: [10898.802603] usb 1-4: descritor do dispositivo read / 64, erro -71
4 de abril, 20:22:07 kernel my-laptop: [10899.030075] usb 1-4: novo dispositivo USB de alta velocidade usando ehci_hcd e endereço 5
4 de abril, 20:22:08, kernel do meu laptop: [10899.460032] usb 1-4: dispositivo não aceita o endereço 5, erro -71
4 de abril, 20:22:08, kernel do meu laptop: [10899.580064] usb 1-4: novo dispositivo USB de alta velocidade usando ehci_hcd e endereço 6
4 de abril, 20:22:08, kernel do meu laptop: [10900.000071] usb 1-4: dispositivo não aceita o endereço 6, erro -71
4 de abril 20:22:08 kernel do meu laptop: [10900.000101] hub 1-0: 1.0: não é possível enumerar o dispositivo USB na porta 4
4 de abril, 20:22:09 kernel my-laptop: [10900.322588] usb 4-2: novo dispositivo USB de velocidade total usando uhci_hcd e endereço 2
4 de abril, 20:22:09 kernel do meu laptop: [10900.466510] usb 4-2: não está funcionando na velocidade máxima; conectar a um hub de alta velocidade
4 de abril 20:22:19 Kernel do meu laptop: [10910.471597] usb 4-2: descritor de strings 0 erro de leitura: -110
4 de abril 20:22:24 Kernel do meu laptop: [10915.471643] usb 4-2: não é possível definir a configuração # 1, erro -110

Outras medidas tomadas:

  • Tentei conectá-lo a diferentes portas USB.
  • Tentei conectá-lo a uma das portas raiz do PC.
  • Eu corri badblocksno dispositivo e ele ficou limpo.
  • Tentei limpar a tabela de partição antes da formatação - não há diferença.
  • Eu tenho um disco rígido externo USB 2.0 de 1 TB que funciona bem e pode realizar grandes transferências sem incidentes.
  • smartctl -T normal /dev/sdX falha, dizendo "Terminar comando antecipadamente devido a uma resposta incorreta à página do modo IEC. Um comando SMART obrigatório falhou: saindo."

Nota: obrigado a djeikyb por me ajudar com algumas das etapas.

Nathan Osman
fonte
6
Algumas unidades são falsas. Se você o adquiriu como "novo" por um preço bom demais para ser verdade, foi. Muitas "novas" grandes e baratas unidades USB no "site de leilões" tiveram problemas. As unidades falsas são unidades, mas são mais antigas e menores - não como descrito. Por outro lado, a última mensagem sobre não correr na velocidade máxima é curiosa. A unidade está conectada a um hub moderno? Como não tenho uma solução, deixarei isso como ponto de partida para que outras pessoas entrem na conversa.
Paul
@ George Você pode nos dar alguns detalhes sobre a unidade real? Marca e modelo, particionamento, etc?
Oli
@Oli: São 32 GB e tudo está formatado como FAT32. Além disso, acho que tentei badblockse estava tudo bem.
Nathan Osman
@Paul: Quanto ao hub ... no começo eu estava usando um hub (USB 2), mas depois tentei conectá-lo diretamente ao PC ... a mesma coisa.
Nathan Osman
1
@ali: Quando tentei um benchmark de gravação com o Disk Utility do Ubuntu, ele sempre falhou com um "erro de E / S" no mesmo local.
Nathan Osman

Respostas:

13

Certamente a unidade está com defeito.

  1. Isso é um problema no sistema de arquivos? Não.

  2. Este é um problema de porta / barramento usb? Não.

  3. Este é um problema de driver usb? Não.

    • Mesmos problemas no Windows Vista.
    • !!! Seria útil saber da perspectiva do driver se há uma diferença entre um disco flash USB e um disco USB SATA.
  4. A unidade flash está quebrada? Provável.

    Prova a favor:

    • Erros de E / S em /var/log/syslog
    • Erros de E / S ocorrem em um local consistente.
    • Os passos acima.
djeikyb
fonte
Essa informação deve fazer parte da pergunta. ;)
htorque
@ hto: é agora.
Nathan Osman
Com base no erro de E / S no syslog, com certeza parece que a unidade foi interrompida. Verifique novamente se você está usando badblocks corretamente; deve receber o mesmo erro. O Smartctl também não funciona em flash sticks.
Psusi
@ psusi: Eu estava apenas correndo 'badblocks /dev/sdc'... preciso passar outros parâmetros?
Nathan Osman
@George Edison tentativa dd if = / dev / sdc de = / dev / null bs = 512 = iflag directa
psusi
6

Experimente a unidade em uma máquina Windows.

Se ele tiver o mesmo problema no Windows, isso não é um problema do ubuntu e provavelmente é uma falha de hardware ou firmware.

Nesse caso, eu o enviava de volta.

vagabundo
fonte
1
Tem o mesmo problema no Windows.
Nathan Osman
5

Para mim, os seguintes erros são os mais importantes.

[10897.385188] FAT: falha na leitura FAT (bloco 322) mesmo erro no bloco 329

Isso me mostra que é uma falha do dispositivo ou um FAT corrompido (tabela de alocação de arquivos) . Com base em informações adicionais, eu diria que o hardware real está com defeito. Esta seção do wiki mostra os componentes de uma unidade flash. Eu diria que o controlador de memória flash ou o chip de memória flash estão com falha. Se você puder devolver a unidade, faça-o. Se você ainda tiver a embalagem e a garantia originais, poderá conseguir uma substituição.

Para obter mais informações, execute o seguinte para testar o bloqueio incorreto e reportá-lo verbalmente em um arquivo (badblocks.txt).

sudo fsck.vfat -Vtv / dev / [your_usb_dev]> badblocks.txt # era sdc no arquivo de log

cole o badblocks.txt na sua pergunta para que possamos ver. Esse comando marcará todos os blocos defeituosos como inacessíveis no FAT e deve parar o sistema operacional tentando gravar nesses blocos com falha. Isto deve corrigir o seu problema.

Para encontrar seu disco, você precisa colocar no {/ dev / [your_usb_dev]} execute o comando abaixo. Cole também o conteúdo de my_partitions.txt para que possamos ver mais detalhes sobre sua unidade.

sudo fdisk -l> minhas_partições.txt

Uma última nota. O FAT de 32 bits tem um limite de arquivo de 4 GiB. Veja o final dessa seção no artigo da wiki. Portanto, se o arquivo for maior que o 4Gib, você receberá um erro de espaço insuficiente. Eu não acho que esse seja o problema aqui.

nelaaro
fonte
Vou tentar os comandos. Além disso, os arquivos que eu estava copiando não tinham mais que 700 MB (eram imagens ISO).
Nathan Osman
Eu recebo um erro ao executar o primeiro comando: "-t e -w exigem -a ou -r"
Nathan Osman
@ george-edison Eu diria que a unidade flash está com defeito no nível do hardware. Recentemente, recebi uma unidade de 16 Gb de um amigo que viajou para Tai Land para uma viagem de compras. Escusado será dizer que a unidade é realmente de 4 GB. Ele relata ter 16 GB, permitirá que você copie esse número de arquivos, mas aparece corrompido e inacessível quando tento recuperar os arquivos.
N
mike-s, se você olhar para trás aqui, retirei seu parágrafo. (1) o linux boxen é um computador pessoal e possui arquivos> 2,15gb para idades (2) a microsoft diz que o fat32 suporta ~ 4gb.
djeikyb
1

Tenho certeza que você tem agora um usb falso. Você acabou de mencionar todos os sintomas e a saída do linux é muito semelhante à que ele me mostra para as unidades falsas de 16 MB e 128 MB que tenho aqui. Lamento dizer, mas você foi enganado. Houve muitos casos, não apenas a corsair, mas qualquer outra empresa de pen drives, até exemplos extremos como este:

CASOS QUE JÁ ACONTECERAM -

Caixa grande de nada - http://forum.corsair.com/forums/showthread.php?s=826f662d847dd2e8283552f17c161de5&t=94466 .

Eu fui ao site da corsair e vi sua postagem aqui sobre isso http://forum.corsair.com/forums/showthread.php?s=826f662d847dd2e8283552f17c161de5&t=94466

Você pode encontrar alguns casos como o seguinte: http://hardforum.com/showthread.php?t=1397409 onde eles mencionam o golpe falso com alguns corsários

Um amigo da Costa Rica comprou este: http: //wn.com/PEN_DRIVE_64GB_Kingston_FAKE !!!! e como você pode ver no vídeo, ele foi roubado. Nós assistimos enquanto ele tentava copiar qualquer coisa além dos 4 GB que eram do tamanho real sem sorte.

Isso está acontecendo há muito tempo, veja este link para 2006: http://linuxrevolution.blogspot.com/2006/08/fake-usb-drives-sleuthing.html

SOFTWARE DE VERIFICAÇÃO FALSA

Aqui estão algumas maneiras de testar se você possui um pen drive FAKE: http://www.linuxquestions.org/questions/linux-hardware-18/fake-usb-stick-testing-tool-786415/

Outro é este: http://fixfakeflash.wordpress.com/2010/08/20/linux-h2testw-alternative-program-called-f3-by-michel%C2%A0machado/ Para testar pen drives FAKE.

O site da Ferramenta F3 : http://oss.digirati.com.br/f3/ onde você pode compilar o programa com o gcc. Ferramenta muito simples que verifica o tamanho das unidades flash. Se você ler a página da Web, verá que esse usuário TAMBÉM teve uma experiência como você e eu.

De qualquer forma, você pode ter uma unidade flash real de 512 MB a 1 GB que é falsificada como uma de 32 GB.

Eu sei que você pode não dar uma resposta correta aqui a ninguém, pois essas são realmente más notícias. Eu sinto você desde que eu comprei um 32gb também, um amigo um 128mb e minha namorada um 16gb. todos corsário ou kingston. Portanto, revise todas as informações desta página com a mente aberta. Boa sorte, amigo.

RECOMENDAÇÃO - Pela minha experiência, recomendo executar os programas mencionados acima e, ao comprar um pen drive, teste-os no minuto em que você colocar as mãos nele. Um teste rápido é preencher a unidade flash cheia de arquivos até seu tamanho máximo.

Luis Alvarado
fonte
Eu duvido que seja falso (ele vem com embalagem e acessórios adequados, idênticos ao modelo adequado) - mas não vou descartar. Uma coisa a observar - o erro geralmente era de 2 a 3 GB na unidade, portanto a capacidade real teria que ser> 3 GB.
Nathan Osman
@ George Obrigado. Eu também penso a mesma coisa.
Luis Alvarado
1

Lembre-se de que o FAT32 é um sistema de arquivos muito delicado e não gosta que a eletricidade seja desligada durante o trabalho. Portanto, você sempre deve remover com segurança a unidade da porta USB. Se você o removeu sem segurança pelo menos uma vez no passado - então pode haver algo quebrado na estrutura do FAT -, execute-o dosfsckantes de usá-lo novamente.

Por que desmontar por erro? Bem, provavelmente depende da configuração padrão - apenas tenta remontar como somente leitura, para que você possa fazer backup dos dados atuais e fazer todas as verificações. Suponho que funcione como se a errors=remount-roopção estivesse definida.

Eu vi um problema semelhante aqui no linuxquestions.org .

bartosz.r
fonte
1

Você está copiando arquivos para o diretório raiz da unidade USB que já possui muitos outros arquivos?

É uma limitação do FAT não permitir mais que um certo número de arquivos armazenados em seu diretório raiz (os subdiretórios podem conter mais arquivos).

Se for esse o caso, tente copiar os arquivos para um subdiretório na unidade USB.

Joni Nevalainen
fonte
Não. Eu estava copiando 6 arquivos para o dispositivo quando estava vazio.
Nathan Osman
Os limites podem ser vistos aqui: ask-leo.com/…
desgua
E aqui para ext4: serverfault.com/questions/104986/…
desgua
-1

Se o sistema de arquivos do seu USB for fat 32 ou 16, o tamanho máximo do arquivo é de 4 GB (menos 1 byte) para fat32 e fat 16 menos. tente formatar o seu sistema de arquivos USB para NTFS.

FAT16, FAT32, NTFS ou exFAT em unidades flash USB?

Vassilis
fonte
4
Copiar arquivos em qualquer sistema de arquivos não desmonta uma unidade. Este não é um problema do sistema de arquivos.
Takkat 21/03/11
1
Para o ubuntu, reiserfs, extfs e outros são muito mais apropriados (usuários, permissões).
usuário desconhecido
Bem, primeiro de tudo, nenhum dos arquivos tem mais de 10 MB. Em segundo lugar, ele precisa estar acessível em máquinas Windows e talvez em Mac.
Nathan Osman
Eu usaria NTFS, nesse caso, a instalação de aplicativos de compatibilidade necessárias / pacotes no Linux e Mac OS máquinas x
Pitto
se você tentar redefinir todas as informações usando o criador do disco de inicialização, ele desmontará? Porque se for falso, deve ser mostrado no tamanho do arquivo, certo?
Alvar