Como devo gravar em discos rígidos?

39

O Google fez um estudo minucioso sobre o disco rígido falhas de unidade que descobriram que uma parte significativa dos discos rígidos falha nos primeiros 3 meses de uso pesado.

Meus colegas de trabalho e eu estamos pensando que poderíamos implementar um processo de burn-in para todos os nossos novos discos rígidos, o que poderia nos poupar algum tempo de perda de tempo em unidades novas e não testadas. Mas antes de implementar um processo de burn-in, gostaríamos de obter algumas dicas de outras pessoas mais experientes:

  • Qual é a importância de gravar em um disco rígido antes de começar a usá-lo?
  • Como você implementa um processo de gravação?
    • Há quanto tempo você grava em um disco rígido?
    • Qual software você usa para gravar em drives?
  • Quanto estresse é demais para um processo de burn-in?

EDITAR: Devido à natureza do negócio, os RAIDs são impossíveis de usar na maioria das vezes. Temos que confiar em unidades individuais que são enviadas pelo país com bastante frequência. Fazemos backup de unidades o mais rápido possível, mas ainda encontramos falhas aqui e ali antes de termos uma oportunidade de fazer backup de dados.

UPDATE

Minha empresa implementou um processo de burn-in por um tempo agora, e provou ser extremamente útil. Nós imediatamente gravamos em todas as novas unidades que obtemos em estoque, o que nos permite encontrar muitos erros antes que a garantia expire e antes de instalá-los em novos sistemas de computador. Também se provou útil verificar se uma unidade foi mal. Quando um de nossos computadores começa a encontrar erros e um disco rígido é o principal suspeito, nós executamos novamente o processo de burn-in nessa unidade e observamos todos os erros para garantir que a unidade realmente era o problema antes de iniciar o processo de RMA ou no lixo.

Nosso processo de burn-in é simples. Nós temos um sistema Ubuntu designado com muitas portas SATA, e nós executamos badblocks no modo de leitura / gravação com 4 passagens em cada unidade. Para simplificar as coisas, escrevemos um script que imprime um aviso "OS DADOS SERÃO APAGADOS POR TODOS OS SEUS DRIVES" e, em seguida, executa os badblocks em todas as unidades, exceto na unidade do sistema.

    
por Phil 07.09.2011 / 22:05

10 respostas

34

How important is it to burn in a hard drive before you start using it?

Se você tiver um bom backup e bons sistemas de alta disponibilidade, não muito. Como a restauração de uma falha deve ser bem fácil.

How do you implement a burn-in process? What software do you use to burn in drives? How much stress is too much for a burn-in process?

Normalmente, executo badblocks contra um disco ou um novo sistema quando o recebo. Vou executá-lo sempre que eu ressuscitar um computador da pilha de peças sobressalentes. Um comando como este ( badblocks -c 2048 -sw /dev/sde ) irá escrever em cada bloco 4 vezes a cada vez com um padrão diferente (0xaa, 0x55, 0xff, 0x00). Esse teste não faz nada para testar muitas leituras / gravações aleatórias, mas deve provar que cada bloco pode ser escrito e lido também.

Você também pode executar o bonnie ++ ou iometer que são ferramentas de benchmarking. Estes devem tentar enfatizar um pouco seus impulsos. As unidades não devem falhar, mesmo se você tentar maximizá-las. Então você pode também tentar ver o que eles podem fazer. Eu não faço isso embora. Obter uma referência de E / S do seu sistema de armazenamento logo no momento da instalação / configuração pode ser muito útil no futuro quando você estiver analisando problemas de desempenho.

How long do you burn in a hard drive?

Uma única execução de badblocks é suficiente na minha opinião, mas acredito que eu tenha um sistema de backup muito strong, e minhas necessidades de HA não são tão altas. Eu posso pagar algum tempo de inatividade para restaurar o serviço na maioria dos sistemas que eu suporte. Se você está tão preocupado, que você acha que uma configuração multi-passe pode ser necessária, então você provavelmente deve ter RAID, bons backups e uma boa configuração de HA de qualquer maneira.

Se eu estiver com pressa, posso pular um burn-in. Meus backups e RAID devem estar bem.

    
por 07.09.2011 / 22:28
48

IMNSHO, você não deve confiar em um processo de burn-in para eliminar discos defeituosos e "proteger" seus dados. Desenvolver este procedimento e implementá-lo levará um tempo que poderia ser melhor usado em outros lugares e, mesmo que um drive passe por burn-in, ele poderá falhar meses depois.

Você deve estar usando RAID e backups para proteger seus dados. Uma vez que isso esteja no lugar, deixe que se preocupe com as unidades. Boas controladoras RAID e subsistemas de armazenamento terão processos de "depuração" que, de tempos em tempos, passam por cima dos dados e garantem que tudo está funcionando bem.

Uma vez que tudo esteja resolvido, não há necessidade de fazer a limpeza de disco, embora, como outros já mencionaram, não atrapalhe fazer um teste de carregamento do sistema para garantir que tudo esteja funcionando conforme o esperado. Eu não me preocuparia com discos individuais.

Como foi mencionado nos comentários, não faz muito sentido usar discos rígidos para seu caso de uso específico. Enviá-los por aí é muito mais provável de causar erros de dados que não estarão presentes quando você fez o burn-in.

A mídia de fita foi projetada para ser enviada por aí. Você pode obter 250MBps (ou até 650MBps compactados) com uma única unidade IBM TS1140, que deve ser mais rápida que seu disco rígido. E maior também - um único cartucho pode fornecer até 4 TB (sem compressão).

Se você não quiser usar fita, use SSDs. Eles podem ser tratados muito mais do que os HDDs e satisfazer todos os requisitos que você deu até agora.

Depois de tudo isso, aqui estão minhas respostas para suas perguntas:

  • Qual a importância de gravar em um disco rígido antes de começar a usá-lo?
    De jeito nenhum.
  • Como você implementa um processo de gravação?
    • Quanto tempo você queima em um disco rígido?
      Uma ou duas corridas.
    • Qual software você usa para gravar em unidades?
      Uma simples execução de, digamos, shred e badblocks será suficiente. Verifique os dados do SMART posteriormente.
  • Quanto estresse é demais para um processo de burn-in?
    Nenhum estresse é demais. Você deve ser capaz de jogar qualquer coisa em um disco sem explodir.
por 07.09.2011 / 22:21
7

Dado seu esclarecimento, não parece que qualquer processo de burn-in seria de alguma utilidade para você. As unidades falham principalmente devido a fatores mecânicos, geralmente calor e vibração; não por causa de algum tipo de bomba-relógio escondida. Um processo "burn-in" testa o ambiente de instalação tanto quanto qualquer outra coisa. Depois de mover a coisa, você volta para onde começou.

Mas aqui estão algumas dicas que podem ajudar você:

As unidades de laptop geralmente são projetadas para suportar mais empurrões e vibrações do que as unidades de desktop. Meus amigos que trabalham em lojas de recuperação de dados sempre enviam dados para clientes em unidades de laptop por esse motivo. Eu nunca testei esse fato, mas parece ser "conhecimento comum" em setores selecionados.

Flash drives (por exemplo, pen drives USB) são os mais resistentes a choques de qualquer mídia que você encontrar. Deve ser menos provável que você perca dados em trânsito se usar mídia flash.

Se você enviar uma unidade Winchester, faça uma varredura de superfície antes de colocá-la em uso. Ou melhor ainda, apenas não coloque em uso. Em vez disso, convém designar determinadas unidades como unidades de "envio", que veem todos os abusos, mas que você não confia na integridade dos dados. (Por exemplo, copiar dados na unidade para envio, copiar após o envio, muito checksums em ambos os lados, esse tipo de coisa).

    
por 08.09.2011 / 03:12
5

Eu não concordo com todas as respostas que basicamente dizem "Não se preocupe com burn-in, tenha bons backups".

Enquanto você sempre deve ter backups, passei 9 horas ontem (além do meu turno usual de 10 horas) restaurando de backups porque o sistema estava sendo executado com unidades que não foram gravadas.

Havia seis unidades em uma configuração RAIDZ2 (equivalente a ZFS para RAID-6) e tínhamos três unidades ao longo de 18 horas em uma caixa que funcionava por aproximadamente 45 dias.

A melhor solução que encontrei é comprar unidades de um determinado fabricante (não misturar e combinar) e, em seguida, executar a ferramenta fornecida para exercitar as unidades.

No nosso caso, compramos a Western Digital e usamos os diagnósticos de unidade baseados em DOS a partir de um ISO inicializável. Nós o acionamos, executamos a opção de gravar lixo aleatório em todo o disco e, em seguida, executamos o teste SMART curto seguido pelo longo teste SMART. Geralmente isso é suficiente para eliminar todos os setores defeituosos, ler / gravar realocações, etc ...

Ainda estou tentando encontrar uma maneira decente de "agrupar" para que eu possa executá-lo em 8 unidades por vez. Pode usar apenas 'dd if = / dev / urandom de = / dev / whatever' no Linux ou 'badblocks'.

EDIT: Eu encontrei uma maneira mais agradável de 'lote' isso. Eu finalmente cheguei a configurar um servidor de boot PXE em nossa rede para atender a uma necessidade específica, e notei que o Ultimate Boot CD pode ser inicializado PXE. Agora temos um punhado de máquinas de lixo eletrônico por aí que podem ser inicializadas pelo PXE para executar diagnósticos de unidade.

    
por 24.05.2014 / 00:20
4

Seu processo está errado. Você deve usar matrizes de raid. Onde eu trabalho, criamos conjuntos de ataque robustos que são projetados para serem transportados. Não é ciência de foguetes. Choque de montagem dos drives em gabinetes oversize com grandes isoladores de vibração de borracha irá melhorar a confiabilidade enormemente. (As unidades Seagate constelações-es, são como um exemplo classificado para choque 300G, mas apenas vibração 2G, não operacional: assim, o caso de transporte precisa de vibração isolar a unidade. link ou link [part # 50178])

No entanto, você realmente quer gravar em discos rígidos de teste, então aqui vai.

Eu trabalhei em sistemas como discos rígidos e gravar em alguns problemas, mas ...

Para testes de ciclos de vida acelerados de PCBs para gerar falhas, nada supera alguns ciclos de aquecimento / resfriamento. (operar ciclos de frio quente funciona ainda melhor ... mas é mais difícil para você fazer, especialmente com bancos de HDDs)

Arranja uma câmara ambiental grande para o número de unidades que você adquire de cada vez. (Estes são muito caros, seria mais barato enviar arrays RAID) Você não pode economizar nas câmaras de teste, você precisará de controle de umidade e rampas programáveis.

Programe em duas rampas de temperatura repetitivas, até a temperatura mínima de armazenamento, até a temperatura máxima de armazenamento, torne as rampas íngremes o suficiente para perturbar o engenheiro de aplicação do fabricante da sua unidade de disco rígido. 3 ciclos de frio-quente em 12 horas devem ver as unidades falharem muito rapidamente. Execute as unidades pelo menos 12 horas como esta. Se algum trabalho depois eu ficarei surpreso.

Eu não pensei nisso: em um lugar onde trabalhei, um engenheiro de produção fez isso, para obter mais produtos embarcados com o mesmo equipamento de teste, houve um grande aumento nas falhas nos testes, mas os mortos na taxa de chegada caiu para praticamente zero.

    
por 08.09.2011 / 03:13
3

Qual é a importância de gravar em um disco rígido antes de começar a usá-lo?

Depende.
Se você está usando em um RAID que fornece redundância (1, 5, 6, 10)? Não muito.
Se você está usando standaolone? Um pouco, mas é melhor você apenas executar o smartd ou algo para monitorá-lo, pelo menos na minha opinião.

Isso naturalmente leva à minha resposta a " Como você implementa um processo de burn-in? " - não sei.
Em vez de tentar "gravar" os discos, eu os executo em pares redundantes e uso o monitoramento preditivo (como o SMART) para informar quando uma unidade está ficando instável. Descobri que o tempo extra necessário para fazer um burn-in completo (realmente exercitando todo o disco) é substancialmente mais caro do que lidar com uma falha de disco e troca. Combinando RAID e bons backups, seus dados devem ser muito seguros, mesmo quando se lida com a mortalidade infantil (ou com a outra extremidade da cura da banheira quando você começa a ter seus impulsos morrem de velhice)

    
por 07.09.2011 / 22:25
2

Spinrite (grc.com) irá ler e escrever todos os dados na unidade. É uma boa coisa para fazer uma nova unidade, mesmo que você não esteja tentando fazer com que ela falhe. Leva muito tempo para ser executado no nível 4, normalmente em alguns dias para unidades de tamanho atual. Também devo acrescentar que é não destrutivo. Na verdade, se houver dados em pontos ruins, ele será movido e recuperado. É claro que você nunca executaria um SSD.

    
por 08.09.2011 / 00:33
1

Tenho certeza de que uma verificação comparativa e de erros uma vez por semana será suficiente para "gravar" em discos rígidos. Embora desde o seu post eu nunca tenha ouvido falar de tal coisa.

Citado de "6_6_6" no Stroagereview.com

1. Connect the drive to a running system. Read SMART values.

2. Do a SMART short self test. Do a SMART long self-test.

3. Zero fill / Wipe the drive with the manufacturer's utility. Entire drive.

4. Run HDTach full read/write. Everest / Sandra, etc all have stress tests. Run hard drive part continously for hours.

5. Run Victoria for Windows Read/Write test and make sure no slow sectors.

6. Drop to DOS. Run MHDD, run a LBA test and see check for slow sectors. Run Read/Write/Verify test. Run drive internal ATA secure erase command.

7. Do a full format.

8. Compare SMART values. If no anomalies, all good to go. Install your OS and continue.

No geral, eu pessoalmente acho que é uma má ideia.

EDIT: Origem: link

    
por 07.09.2011 / 22:10
0

Primeiro, concordo com outros pôsteres que o seu caso de uso sugere que as unidades de fita serão a melhor opção.

Se isso não for possível, se você tiver que pilotar unidades em todo o país, um verdadeiro RAID não parece ser uma opção, já que você terá que transportar muito mais unidades, aumentando o risco de falhas. No entanto, que tal um esquema de espelhamento simples, enviando uma unidade e mantendo a outra no site de origem?

Em seguida, se a unidade falhar na chegada, uma nova cópia poderá ser feita e enviada. Se a unidade for boa na chegada, a peça sobressalente poderá ser reutilizada, seja para envio ou para backup dos dados originais.

    
por 08.09.2011 / 12:26
0

Você não disse realmente porque os drives estão sendo enviados - isso é apenas uma maneira de enviar dados, eles têm aplicativos completos / imagens do sistema operacional prontas para serem inicializadas em um PC ou outra coisa?

Concordo com as outras respostas de que o RAID ou os backups são melhores do que a verificação, devido aos riscos de enviar uma unidade causando problemas mecânicos.

Uma maneira mais geral de colocar isso seria "confiar em dados redundantes para capturar e corrigir erros" - envie duas unidades para cada conjunto de dados ou envie dados redundantes em uma única unidade. Algo como Parchive permite adicionar um nível definido de redundância aos dados, permitindo a recuperação mesmo se uma grande parte dos dados estiver corrompida . Como os discos são bastante baratos hoje em dia, comprar um disco maior do que o estritamente necessário costuma ser mais barato do que digitalizar a unidade, enviar uma unidade de substituição ou transportar duas unidades.

Isso protegeria contra falhas não catastróficas da unidade - no entanto, ainda é melhor não reutilizar uma unidade enviada, exceto para envio, como sugerido anteriormente, ou seja, exibi-la como uma fita que deve ser extraída para uma 'real' unidade que está permanentemente instalada e não é enviada em nenhum lugar.

Isso permite que você envie uma grande quantidade de dados (ou até mesmo aplicativos / imagens do sistema operacional) e reduza o impacto de erros de disco em qualquer nível econômico.

    
por 08.09.2011 / 13:18