Como verifico a integridade de um SSD?

81

Todos sabemos que os SSDs têm uma vida útil predeterminada limitada. Portanto, a pergunta para mim é como eu faço check-in (Ubuntu) Linux qual é o status de integridade atual do meu SSD? E talvez uma estimativa quanto tempo vai demorar?

A ferramenta gráfica é preferida, mas a ferramenta de linha de comando também seria adequada.

Estou usando o Xubuntu 12.04 LTS

keiki
fonte
1
Você pode adicionar a saída de smartctl -i /dev/sdasua pergunta?
Mitch
1
@ dschinn1001 Não exatamente, isso se aplica apenas a SSDs recentes. Sabe-se que o SSD de primeira e segunda geração tem vida útil limitada de acordo com a quantidade de operações de gravação no disco.
João André
1
Vindo das unidades giratórias da velha escola, usei ferramentas para testar o HD que escrevia e lia todo o disco algumas vezes, o que levava algumas horas. Parece que nenhuma das ferramentas mencionadas usa essa abordagem? Essa abordagem não faz sentido para o SSD? Bem, parece que o SSD registra suas próprias experiências e pode dizer se está com problemas. Eu entendi isso corretamente?
Mads Skjern 27/05
@MadsSkjern É perfeitamente viável usar uma ferramenta como badblocks para verificar o status de um SSD. No entanto, existem boas razões para NÃO o fazer. Na minha experiência, os SSDs geralmente falham após exceder um certo limite de gravações; portanto, um teste destrutivo de leitura e gravação, como o que pode ser realizado, badblockspode realmente reduzir a vida útil da unidade.
Elder Geek

Respostas:

35

Instale o Gnome Disk Utility e verifique o SMART Data and Tests quanto à contagem do nível de desgaste ou similar. Quanto maior esse número (%, de 1 a 100), mais "esgotado" é o seu SSD, o que significa que é mais provável que você tenha problemas. Mas se você tem um SSD recente, não precisa se preocupar com isso.

Instalado via

 sudo apt-get install gnome-disk-utility

inicie-o via

menu-> Configurações-> Utilitário de disco

ou via linha de comando

sudo gnome-disks
João André
fonte
2
Sim, eu não tinha certeza do nome porque o mudaram em 12h10
João André
8
O palimpsest não é reconhecido pelo Ubuntu 14.04, embora o gnome-disk-utility esteja instalado. Também não vejo um utilitário de disco nas configurações (ícone de engrenagem). palimpsesté um nome terrível, o nome varia com o idioma do usuário (por exemplo, inglês x outra coisa).
Paul
10
como uma nota para os leitores; palimpset é renomeado para gnome-disks (como mencionado em askubuntu.com/a/623306/4580 ).
Immeëmosol
2
Por que você diz "Se você tem um SSD recente, não precisa se preocupar com isso"?
JFA 22/03
2
Você entendeu isso de trás para frente. O número de desgaste começa em 100 e diminui com o uso. Portanto, quanto maior o número, MENOS usado é o SSD, veja aqui: superuser.com/questions/1037644/…
Logix
48

para verificar a saúde de um SSD

Para distribuições baseadas no Ubuntu, Mint ou Debian

# apt-get install smartmontools

O Media_Wearout_Indicator é o que você está procurando. Para 100 significa que o seu ssd tem 100% de vida útil, o número menor significa menos vida útil restante.

# smartctl -a /dev/sda | grep Media_Wearout_Indicator

Para mostrar suas informações sdd

# smartctl -a /dev/sda

Você pode ler o artigo completo no Nam Huy Linux Blog - Como verificar a vida útil do SSD no Linux

Blanca Higgins
fonte
1
Então, se o meu tem valor 199 - 199, é credível?
M4tm4t
7
Essa propriedade não aparece no meu SSD. Talvez eu devesse olhar para Wear_Leveling_Count? como em: sudo smartctl -a / dev / sda | grep Wear_Leveling_Count EDIT: Confirmado pela resposta abaixo: askubuntu.com/a/381779/221115 #
Jose Gómez
Em Kingston você tem #Wear_Range_Delta
phreakbox
Em KINGSTON SV300S37A240G, você deve procurar porSSD_Life_Left
Herlon Aguiar
Blanca Higgins, namhuy.net/1024/how-to-check-ssd-life-left.html está morto.
precisa saber é
35

Se você não possui um SSD da marca Intel: LEIA ISTO.

Cuidado !! - Fui levemente enganado por 'smartmontools'. Eu tenho um Samsung SSD, ea SmartMonitor / ferramenta 'smartctl' feliz forma deturpada que atributo '233' (hex 'E9') era 'Media_Wearout_Indicator'; de fato - não, para a Samsung (e outros fabricantes), é totalmente diferente. Esta e outras postagens em fórum, perguntas / respostas sobre troca de pilhas e blogs de usuários avançados que eu acho parecem "focados na Intel", com apenas dicas vagas de que "isso pode variar". (Versus as sugestões de que você precisa ficar atento à identificação incorreta e errônea do atributo pelos smartmontools).

Enquanto eu estava me preparando para copiar meu SSD para um novo disco rígido que havia comprado (por causa do que os smartmontools me disseram), eu inicializei no Windows (eu tenho um sistema de inicialização dupla), para aprender algo sobre SSDs com base no que apenas o Windows A ferramenta Samsung 'Samsung_Magician_v43.exe' tinha que me falar sobre o meu disco - era chocantemente pouco informativo.

Depois de horas de escavação - finalmente consegui executar as ferramentas somente do Windows: hddgaurdian - 'code.google.com/p/hddguardian' e também CrystalDiskInfo: surpresa! ambas as ferramentas dizem-me de forma independente que o meu SSD da Samsung está "muito bem" (o guardião do disco rígido diz "5 estrelas" e o Crystal Disk "98% OK"). Por outro lado, a ferramenta smartctl rotulou explicitamente o atributo com 'decimal- 233 /' hex-E9 'como "Indicador de desgaste de mídia" - e me disse que seu valor era "1" ou 1% - um indicador de (o risco de) falha pendente. Para ter a maior certeza possível, cavei e finalmente consegui localizar pelo menos algo do funcionário da Samsung: " http://www.samsung.com/global/business/semiconductor/minisite/SSD/us/download/ 07_Communicating_With_Your_SSD.pdf"O documento realmente implica que o atributo 'hex E9' / 'decimal' 233 'não é usado pela Samsung da mesma maneira. (Samsung: Estou muito decepcionado, por favor, corrija sua ferramenta de software oficial ou, pelo menos, faça-a claro que você não fornece informações de indicação de desgaste!)

Além disso - se você não tiver um SSD da Intel nem um SSD da Samsung - seja avisado, essas informações parecem variar entre os fabricantes. (por exemplo, consulte o gráfico de etiquetas de atributos em 'code.google.com/p/hddguardian/wiki/about_reliability' para obter a única indicação útil do grau de variabilidade que encontrei.)

O que é o seguinte: se você não possui um SSD da Intel, não se engane com os rótulos dos nomes de atributos falsos fornecidos pelo smartmonitor. Talvez ele melhore no futuro, mas a versão instalada por padrão para o Ubuntu 12.04 LTS (abril de 2014) foi falha total. Em vez de dizer que 'não sabe' - o smartctl acabou de rotular incorretamente o atributo. Não encontrei outra ferramenta para linux que tornasse as informações 'corretas' transparentes ou claras.

Matt S.
fonte
1
Adereços para incluir o link para a documentação da Samsung sobre seus atributos SMART. Não tenho idéia de quais são os outros aplicativos que você mencionou ou de que utilidade são, mas eu recomendo fortemente que você fique de olho no Atributo nº 5 "Contagem de setores realocados", pois esse será um bom indicador de quão próximo seu SSD está ao fracasso, como uma vez que ele é executado fora dos setores de reposição que tem que usar para substituir os que vão mal, então você vai estar se aproximando EOL em seu SSD
Maks
1
O PDF agora pode ser encontrado em samsung.com/global/business/semiconductor/minisite/SSD/M2M/…
Force
10

Para unidades Kingston em computadores baseados no Debian

Semelhante a esta resposta, execute

# apt-get install smartmontools

No entanto, quando executo o comando para mostrar as informações da unidade, parece que o SMART foi desativado:

# smartctl -a /dev/sda 
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.13.0-45-generic] (local build)
[ ... ]
SMART support is: Available - device has SMART capability.
SMART support is: Disabled

Você precisa habilitar isso executando o seguinte como root:

# smartctl -s on -a /dev/sda

Em seguida, você pode executar um autoteste fazendo um teste curto (o que levou cerca de 1 minuto):

# smartctl -t short -a /dev/sda

ou um teste mais completo (que me levou cerca de 1,5 horas):

# smartctl -t long -a /dev/sda

Observe que, na maioria das circunstâncias, você não precisa desmontar a unidade para executar esses testes. Se você faz, veja man smartctl.

Agora, quando você executar, smartctl -a /dev/sdadeverá ver um resultado do teste de autoavaliação. Provavelmente, isso é tudo o que você realmente precisa se preocupar:

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

Se você gosta de detalhes, também verá uma tabela como esta:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x0032   095   095   050    Old_age   Always       -       0/178007034
  5 Retired_Block_Count     0x0033   100   100   003    Pre-fail  Always       -       0
  9 Power_On_Hours_and_Msec 0x0032   092   092   000    Old_age   Always       -       7626h+46m+45.580s
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       8
171 Program_Fail_Count      0x000a   100   100   000    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
174 Unexpect_Power_Loss_Ct  0x0030   000   000   000    Old_age   Offline      -       4
177 Wear_Range_Delta        0x0000   000   000   000    Old_age   Offline      -       1
181 Program_Fail_Count      0x000a   100   100   000    Old_age   Always       -       0
182 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
187 Reported_Uncorrect      0x0012   100   100   000    Old_age   Always       -       0
189 Airflow_Temperature_Cel 0x0000   030   035   000    Old_age   Offline      -       30 (Min/Max 24/35)
194 Temperature_Celsius     0x0022   030   035   000    Old_age   Always       -       30 (Min/Max 24/35)
195 ECC_Uncorr_Error_Count  0x001c   120   120   000    Old_age   Offline      -       0/178007034
196 Reallocated_Event_Count 0x0033   100   100   003    Pre-fail  Always       -       0
201 Unc_Soft_Read_Err_Rate  0x001c   120   120   000    Old_age   Offline      -       0/178007034
204 Soft_ECC_Correct_Rate   0x001c   120   120   000    Old_age   Offline      -       0/178007034
230 Life_Curve_Status       0x0013   100   100   000    Pre-fail  Always       -       100
231 SSD_Life_Left           0x0013   100   100   010    Pre-fail  Always       -       0
233 SandForce_Internal      0x0032   000   000   000    Old_age   Always       -       3498
234 SandForce_Internal      0x0032   000   000   000    Old_age   Always       -       2885
241 Lifetime_Writes_GiB     0x0032   000   000   000    Old_age   Always       -       2885
242 Lifetime_Reads_GiB      0x0032   000   000   000    Old_age   Always       -       868

Se você está procurando o significado de todos esses valores, consulte a documentação da Kingston .

Mike
fonte
Se você estiver indo para downvote, pelo menos, deixar um comentário ...
Mike
1
Nem todos os SSDs da Kingston suportam todos eles. Alguns que não (como o meu UV400 ) parecem mostrar números aleatórios nos campos que não oferecem suporte.
Otus
a resposta está faltando algumas dicas mais úteis sobre os detalhes inteligentes. Apenas para garantir que o leitor esteja lendo adequadamente a tabela de valores resultante. Em resumo, parece-me que o valor SSD_Life_Left é o indicador mais direto. Se 100, novo SSD, se 1, um SSD morto-vivo.
Mh-cbon
@ mh-cbon Como a resposta já é relativamente prolífica, eu simplesmente vinculei a documentação da Kingston, já que existem muitos detalhes. No entanto, se você acha que pode melhorar a resposta, fique à vontade para editá-la.
Mike
5

Wear_Leveling_Count é o atributo certo para rastrear. No entanto, como os outros atributos, 100 é o melhor valor e 0 é o pior. Pense nisso como "porcentagem de vida restante".

Jim Van Zandt
fonte
3
Pode variar de fabricante para fabricante, mas isso provavelmente está muito errado. Em desta página explicando micron (aka. Cruciais, como em "m4 fundamental", etc.) códigos, este é "A contagem média de eliminação de todas as boas blocos." Esse é um número que aumentará com o uso. Se você ler um pouco sobre o nivelamento de desgaste , perceberá que ele deve atingir pelo menos dezenas de milhares antes que a unidade esteja desativada (ou seja, você provavelmente não viverá para vê-la morrer dessa maneira).
Goldilocks
2
O meu diz 1461.
CMCDragonkai
4

A melhor maneira de verificar a integridade de um SSD é seguir as recomendações do fabricante. Como elas variam de fabricante para fabricante e podem mudar com o tempo, é uma boa ideia verificar com o fabricante da sua unidade se tiver alguma dúvida. Com base nas classificações MTBF (o padrão JEDEC JESD218A define o método) fornecido pela maioria dos fabricantes, um SSD deve durar mais de um milhão de horas sem problemas.

Eu tenho vários destes cobrindo vários fabricantes. Posso garantir que os atributos SMART variam entre os fabricantes. Para fins de comparação, veja um exemplo da OCZ e dados inteligentes de uma unidade Corsair F40, além de uma discussão sobre a confiabilidade desses dados.

Embora os dados SMART possam certamente ter valor, uma vez que todos os dispositivos falham eventualmente, o importante é que você faça backup dos dados regularmente. Isso garante que seus dados estão seguros enquanto você espera (provavelmente por vários anos) que seu SSD falhe. À medida que os custos caem e as capacidades aumentam, é mais provável que você substitua um SSD devido a restrições de espaço do que a falhas. (Na minha experiência 10x mais provável). Eu simplesmente faria backup regularmente e não me preocuparia.

Fontes:

Experiência, http://www.hardcoreware.net/mtbf-ssd-what-does-it-mean-for-you/

Elder Geek
fonte
0

Para (pelo menos algumas) unidades NVMe, você pode fazer

smartctl -a /dev/nvme0

Você pode procurar uma linha como:

Percentage Used:                    5%

Aqui, os números mais baixos são melhores e 100%significa que a unidade está "desgastada". A documentação do fabricante sugere que é possível obter números acima de 100% se você continuar usando a unidade além desse ponto ( exemplo da Seagate, consulte a página 12 ).

Observe que se você usar o espaço para nome ou os dispositivos de partição, como /dev/nvme0n1ou /dev/nvme0n1p1, ele não funcionará e você receberá uma mensagem como Read NVMe SMART/Health Information failed: NVMe Status 0x4002.

Nate Eldredge
fonte