Bagaimana menentukan jumlah siklus penulisan atau masa pakai yang diharapkan untuk SSD di Linux?

10

Kami telah menjalankan SSD (Intel X25-M) di server Linux (RHEL 5) untuk sementara waktu, tetapi tidak pernah melakukan upaya untuk mencari tahu berapa banyak beban penulisan pada tahun lalu. Apakah ada alat di Linux untuk memberi tahu kami tentang berapa banyak yang telah ditulis ke disk dari waktu ke waktu atau (bahkan lebih baik) berapa banyak yang telah diakumulasikan? Hanya mencari petunjuk untuk melihat apakah itu hampir mati atau tidak ...

JZeta
sumber

Jawaban:

13

Intel SSD memang menyimpan statistik tentang penulisan total dan sejauh apa umurnya.

Berikut ini adalah dari Intel X25-M G2 160GB (SSDSA2M160G2GC)

# smartctl -data -A /dev/sda
smartctl 5.40 2010-10-16 r3189 [x86_64-redhat-linux-gnu] (local build)
Copyright (C) 2002-10 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       -       6855
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       68
192 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       30
225 Host_Writes_32MiB       0x0030   200   200   000    Old_age   Offline      -       148487
226 Workld_Media_Wear_Indic 0x0032   100   100   000    Old_age   Always       -       3168
227 Workld_Host_Reads_Perc  0x0032   100   100   000    Old_age   Always       -       1
228 Workload_Minutes        0x0032   100   100   000    Old_age   Always       -       1950295543
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

Nilai mentah Host_Writes_32MIB menunjukkan berapa banyak 32MiB unit data yang telah ditulis ke drive ini.

Nilai Media_Wearout_Indicator menunjukkan Anda persentase yang dinormalisasi dari seberapa jauh melalui masa pakai yang berguna dari drive. Ini dimulai pada 100 (atau 099, saya lupa yang mana), dan hasil ke 001, di mana Intel menganggap drive telah melebihi masa manfaatnya. Intel menggunakan MWI sebagai bagian dari klaim garansi juga - begitu MWI mencapai 001, garansi berakhir.

MWI yang mencapai 001 tidak berarti drive akan gagal dengan segera! Intel akan memiliki toleransi bawaan untuk menangani varian dalam unit flash. Saya telah melihat drive terakhir melewati titik ini, dan saya aktif memakai-menguji beberapa SSD Intel 320 series untuk melihat berapa lama mereka bertahan.

Namun, karena garansi berakhir ketika MWI mencapai 001, saya akan mengganti drive apa pun pada saat itu.

Daniel Lawson
sumber
Untuk referensi di masa mendatang, Media_Wearout_Indicatormulai dari 100 untuk Intel 520 Series SSD saya.
pableu
Perlu dicatat bahwa meskipun drive tidak "gagal" setelah mencapai 001, di beberapa titik setelah itu (mungkin jauh setelah itu), kemampuan beberapa drive untuk menyimpan data ketika daya yang hilang turun ke waktu singkat yang mengkhawatirkan. . Saya pikir sudah ada beberapa tes ketahanan yang dipasang online yang mengukur ini.
sa289
6

Drive Corsair juga mengekspor indikator persentase sisa masa pakai yang serupa. Dalam kasus mereka itu adalah atribut 231:

231 SSD_Life_Left           0x0013   100   100   010    Pre-fail  Always       -       0

(Perhatikan bahwa jika smartctl menampilkan ini sebagai Temperatur, Anda perlu memperbarui basis data perangkat Anda. Di sistem Debian saya, artinya menjalankan /usr/sbin/update-smart-drivedb)

Sebuah posting blog Corsair tampaknya menunjukkan bahwa nilai tidak pernah pergi di bawah 10% jadi saya kira itu harus diganti sebesar 10%.

Saya juga memiliki drive OCZ dengan pengontrol Sandforce yang sama yang juga mengekspor nilai SSD_Life_Left yang sama.

Graham
sumber
3

Media_Wearout_Indicator adalah apa yang Anda cari. Untuk 100 berarti SSD Anda memiliki 100% masa pakai, angka yang lebih rendah berarti sisa masa pakai yang lebih sedikit.

# smartctl -a /dev/sda | grep Media_Wearout_Indicator

Output dari laptop saya

233 Media_Wearout_Indicator 0×0032 100 100 000 Old_age Always – 0

Jika Anda ingin melihat lebih banyak detail dan atribut lengkap dari drive Anda, Anda dapat menjalankannya

# smartctl -data -A /dev/sda

dan hasilnya

# smartctl -data -A /dev/sda
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-49-generic] (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: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0×0032 100 100 000 Old_age Always – 0
9 Power_On_Hours 0×0032 000 000 000 Old_age Always – 232959027031342
12 Power_Cycle_Count 0×0032 100 100 000 Old_age Always – 279
170 Unknown_Attribute 0×0033 100 100 010 Pre-fail Always – 0
171 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 0
172 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 0
174 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 278
184 End-to-End_Error 0×0033 100 100 090 Pre-fail Always – 0
187 Reported_Uncorrect 0×0032 100 100 000 Old_age Always – 0
192 Power-Off_Retract_Count 0×0032 100 100 000 Old_age Always – 278
225 Load_Cycle_Count 0×0032 100 100 000 Old_age Always – 10752
226 Load-in_Time 0×0032 100 100 000 Old_age Always – 65535
227 Torq-amp_Count 0×0032 100 100 000 Old_age Always – 66
228 Power-off_Retract_Count 0×0032 100 100 000 Old_age Always – 65535
232 Available_Reservd_Space 0×0033 100 100 010 Pre-fail Always – 0
233 Media_Wearout_Indicator 0×0032 100 100 000 Old_age Always – 0
241 Total_LBAs_Written 0×0032 100 100 000 Old_age Always – 10752
242 Total_LBAs_Read 0×0032 100 100 000 Old_age Always – 21803
249 Unknown_Attribute 0×0013 100 100 000 Pre-fail Always – 357

http://namhuy.net/1024/how-to-check-ssd-life-left.html

Alison Salazar
sumber
Sangat berguna untuk menyebutkan bahwa dalam hal ini nilai yang dinormalisasi harus digunakan.
Falcon Momot
1

Tidak juga. Jika drive tidak menyimpan statistik, Anda tidak akan tahu pasti. Bahkan kemudian drive akan mengabstraksi algoritma tingkat penulisan dan semacamnya untuk mencoba mengoptimalkan hal-hal di bawah tenda, jauh dari panggilan sistem dan antarmuka. Dengan kata lain, drive dapat dengan mudah berbohong kepada Anda tentang di mana data sebenarnya ditulis di "media" sehingga Anda tidak akan tahu sel apa yang mendapatkan aktivitas.

Itu masih tidak menjamin kapan / jika Anda akan melihat kegagalan atau kesalahan. Berkendara bisa gagal besok, bisa gagal dalam tiga tahun.

Taruhan terbaik adalah menyimpannya dalam konfigurasi RAID dan memiliki rencana untuk menggantinya ketika gagal (sebelum drive lain gagal) dan memastikan cadangan Anda saat ini.

Bart Silverstrim
sumber