Uma maneira boa, mas não infalível, de verificar a integridade de qualquer unidade é verificar os atributos SMART.
Abaixo, o atributo SMART definido para um disco Intel X25-M G2 de 160 GB, obtido usando smartctl v5.41. (A versão é importante, as versões anteriores do smartctl tinham diferentes mapeamentos de nomes de atributos e, na verdade, não entendiam corretamente a tabela específica para essa unidade).
# ./smartctl -data -A /dev/sda
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-2.6.18-194.32.1.el5] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 5
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
3 Spin_Up_Time 0x0020 100 100 000 Old_age Offline - 0
4 Start_Stop_Count 0x0030 100 100 000 Old_age Offline - 0
5 Reallocated_Sector_Ct 0x0032 100 100 000 Old_age Always - 1
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 4076
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 67
192 Unsafe_Shutdown_Count 0x0032 100 100 000 Old_age Always - 30
225 Host_Writes_32MiB 0x0030 200 200 000 Old_age Offline - 148418
226 Workld_Media_Wear_Indic 0x0032 100 100 000 Old_age Always - 755
227 Workld_Host_Reads_Perc 0x0032 100 100 000 Old_age Always - 49
228 Workload_Minutes 0x0032 100 100 000 Old_age Always - 16956537
232 Available_Reservd_Space 0x0033 099 099 010 Pre-fail Always - 0
233 Media_Wearout_Indicator 0x0032 098 098 000 Old_age Always - 0
184 End-to-End_Error 0x0033 100 100 099 Pre-fail Always - 0
Isso mostra que a unidade teve 1 setor realocado, usou 1% de seu espaço reservado disponível (atributo 232) e 2% de seus ciclos projetados de programa / exclusão (atributo 233). Ele teve 148418 * 32MiB (atributo 225) escrito para ele.
Se a unidade estiver exibindo um número significativo de setores realocados, isso pode causar preocupação, pois isso provavelmente aponta para um chip flash com falha (da mesma forma que um número significativo de setores realocados em um disco giratório geralmente aponta erros de superfície). End to End também são ruins - alguns discos X25-M G2 de 160GB falharam com relatórios de erros End to End grandes (> 1000). No entanto, existem apenas dois atributos de condição de erro úteis para esses discos, já que a maioria dos atributos úteis do SMART para discos normais não se aplica a SSDs.
No entanto, o SMART geralmente não é considerado 100% confiável. O estudo do Google sobre falhas no disco constatou que, embora houvesse boas correlações entre os vários indicadores de aviso prévio SMART e falha de unidade, não era uma ferramenta útil para prever falhas de unidades individuais. Por esse motivo, geralmente uso o SMART como uma forma de provar que um disco é ruim (se os erros estiverem aparecendo, provavelmente irá falhar em breve), em vez de provar que um disco ainda é bom.