Linux(RHEL 5)サーバーでSSD(Intel X25-M)をしばらく実行してきましたが、過去1年間にどれだけの書き込み負荷がかかっているかを把握するための努力はしていません。 Linuxで、時間の経過とともにディスクに書き込まれたおおよその量、または(さらに良いことに)ディスクに蓄積された摩耗量を知らせるツールはありますか?それが死に近いかどうかを確認するためのヒントを探しています...
インテルSSDは、合計書き込みの統計と、それがどのくらいの期間、寿命である可能性が高いかを保持します。
以下は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
Host_Writes_32MIBのraw値は、このドライブに書き込まれた32MiB単位のデータの数を示します。
Media_Wearout_Indicatorの値は、ドライブの耐用年数全体の正規化された割合を示します。これは100(または099、どちらを忘れたか)から始まり、001まで続きます。この時点で、Intelはドライブが耐用年数を超えたと見なします。インテルはMWIを保証請求の一部としても使用しています。MWIが001に達すると、保証の有効期限が切れます。
MWIが001に達しても、ドライブがすぐに故障するわけではありません。インテルには、フラッシュユニットのばらつきに対処するための許容誤差が組み込まれています。私はドライブがこの時点をはるかに超えて持続するのを見てきました、そして私はいくつかのIntel 320シリーズSSDをどれだけ長く持続させるかを積極的に摩耗テストしています。
ただし、MWIが001に達すると保証が期限切れになるため、その時点でドライブを交換します。
コルセアドライブも同様の寿命の左の指標をエクスポートします。彼らの場合、それは属性231です:
231 SSD_Life_Left 0x0013 100 100 010 Pre-fail Always - 0
(smartctlがこれを温度として表示している場合は、デバイスデータベースを更新する必要があります。私のDebianシステムでは、/usr/sbin/update-smart-drivedb
)
Corsairブログの投稿 は、値が10%を下回らないことを示しているようです。そのため、10%で置き換える必要があると思います。
また、同じSSD_Life_Left値をエクスポートする同じSandforceコントローラーを備えたOCZドライブもあります。
Media_Wearout_Indicatorは、探しているものです。 100は、ssdの寿命が100%であることを意味し、数値が小さいほど、残っている寿命が少ないことを意味します。
# smartctl -a /dev/sda | grep Media_Wearout_Indicator
私のラップトップからの出力
233 Media_Wearout_Indicator 0×0032 100 100 000 Old_age Always – 0
ドライブの詳細と完全な属性を確認したい場合は、
# smartctl -data -A /dev/sda
そして出力
# 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
あんまり。ドライブが統計情報を保持していない場合は、確実にわかりません。その場合でも、ドライブは書き込みレベリングアルゴリズムなどを抽象化して、システムコールやインターフェースから離れて、内部で物事を最適化しようとします。言い換えると、ドライブは、データが実際に「メディア」に書き込まれる場所について簡単に嘘をつくことができるため、どのセルがアクティビティを取得しているかがわかりません。
それでも、失敗やエラーが発生する場合や発生するかどうかは保証されません。ドライブは明日故障する可能性があり、3年後に故障する可能性があります。
最善の策は、RAID構成でそれを保持し、障害が発生したときに(他のドライブが故障する前に)交換して、バックアップが最新であることを確認する計画を立てることです。