Meu disco rígido híbrido Seagate Momentus XT está corrompendo arquivos no Linux. Gostaria de receber ajuda de qualquer pessoa, mas gostaria de saber se outros usuários do Momentus XT podem reproduzir esse problema; Forneci instruções passo a passo para reproduzir esse problema nos fóruns da comunidade da Seagate .
Até o momento, quatro usuários reproduziram esse problema nos seguintes laptops e distribuições de SO /:
- Cinco laptops: Lenovo Thinkpad T60, T61, T510, MSI MS-1656-ID1 e MacBook Pro (15 "no final de 2009).
- Quatro sistemas operacionais / distribuições: Ubuntu 11.04, Fedora 15, openSUSE e Mac OS X.
As instruções para reproduzir o problema são simples. Aqui está uma breve descrição verbal:
- Crie um arquivo de teste grande, salve-o em outro dispositivo de armazenamento ( não no Momentus XT) e calcule a soma de verificação SHA-1.
- Escreva o arquivo de teste no Momentus XT.
- Leia o arquivo de teste do Momentus XT, calcule o SHA-1 e compare essa soma de verificação com a soma de verificação do original. Deveríamos ter uma partida. Provavelmente, reproduzimos o problema se eles não corresponderem. (Somente 'provavelmente', porque é possível que outros problemas causem uma incompatibilidade. Consulte o tópico da Seagate sobre como identificar esse problema específico, comparando os arquivos com
cmp -l
.) - Repita do passo (2).
O segmento da Seagate tem mais detalhes. Aqui estão algumas anotações dos meus testes (consegui reproduzir esse problema em três unidades Momentus XT consecutivas; fiz RMA duas vezes e agora estou no terceiro):
- O que parece estar acontecendo é que o Momentus XT às vezes esquece de gravar dados na unidade, de modo que quando eu leio a unidade, obtenho o que estava originalmente no setor, e não os dados corretos. Isso ocorre em blocos de tamanhos diferentes; tamanhos típicos são 1 MiB e 512 KiB.
- Problema ocorre no ext2, ext4, Btrfs, NTFS e FAT32. Estranhamente, não consegui reproduzir esse problema no ext3.
- A gravação com o
oflag=direct
sinalizador de saídadd
evita esse problema. A confirmação rápida de dados em discowhile true; do sync; sleep 0.01; done
também evita o problema. - Eu só consegui reproduzir esse problema por meio de uma interface SATA e eSATA. Uma conexão USB parece evitar o problema. (Não tenho certeza se isso se deve à velocidade de transferência.)
- Os problemas ocorrem com mais frequência com arquivos grandes (> 2 GB). Não consegui produzir problemas com arquivos menores que 85 MB.
- Não consegui reproduzir o problema no Windows XP com NTFS.
- Gazoi nos fóruns da Seagate não conseguiu reproduzir o problema no FreeBSD 8.2 com o UFS2.
- O Momentus XT passa no teste SMART estendido e
badblocks -w
sem problemas. - Meu laptop (MS-1656-ID1) passou com sucesso por 24 horas cada um dos aplicativos Memtest86 +, Memtest86, memtester e MPrime.
- Testei dois outros dispositivos de armazenamento (um Seagate Momentus 7200.4 e um SSD Intel 320 series) com o mesmo procedimento, e ambos passam sem problemas.
Se você possui um Momentus XT, tente reproduzir esse problema e deixe-me saber o que acontece.
O que mais posso fazer para diagnosticar o problema?
iflag=direct
sinalizador de entrada com dd. Quando eu não estou usando dd, eu liberar o cache comsudo sh -c "sync && echo 1 > /proc/sys/vm/drop_caches"