Làm cách nào để xác định số chu kỳ ghi hoặc tuổi thọ dự kiến ​​cho SSD trong Linux?


10

Chúng tôi đã chạy SSD (Intel X25-M) trong máy chủ Linux (RHEL 5) trong một thời gian, nhưng chưa bao giờ thực hiện bất kỳ nỗ lực nào để tìm hiểu xem nó đã tải bao nhiêu trong năm qua. Có công cụ nào trong Linux để cho chúng tôi biết khoảng bao nhiêu đã được ghi vào đĩa theo thời gian hoặc (thậm chí tốt hơn) nó đã tích lũy bao nhiêu? Chỉ cần tìm một gợi ý để xem nó có gần chết hay không ...

Câu trả lời:


13

SSD Intel giữ số liệu thống kê về tổng số lần ghi và thời gian tồn tại của nó.

Dưới đây là từ 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

Giá trị thô Host_Writes_32MIB cho biết có bao nhiêu đơn vị dữ liệu 32MiB đã được ghi vào ổ đĩa này.

Giá trị Media_Wearout_Indicator cho bạn thấy tỷ lệ phần trăm được chuẩn hóa cho khoảng thời gian sử dụng hữu ích của ổ đĩa. Điều này bắt đầu từ 100 (hoặc 099, tôi quên cái nào) và chuyển xuống 001, tại thời điểm đó, Intel coi ổ đĩa đã vượt quá tuổi thọ hữu ích của nó. Intel cũng sử dụng MWI như một phần của yêu cầu bảo hành - một khi MWI đạt 001, bảo hành đã hết hạn.

Tuy nhiên, MWI đạt 001 không có nghĩa là ổ đĩa sẽ bị hỏng ngay lập tức! Intel sẽ có dung sai được tích hợp để xử lý các phương sai trong các đơn vị flash. Tôi đã thấy các ổ đĩa vượt qua thời điểm này và tôi đang tích cực thử nghiệm một số ổ SSD Intel 320 để xem chúng còn tồn tại bao lâu nữa.

Tuy nhiên, khi hết hạn bảo hành khi MWI đạt 001, tôi sẽ thay thế bất kỳ ổ đĩa nào tại thời điểm đó.


Để tham khảo trong tương lai, mức Media_Wearout_Indicatorkhởi điểm là 100 cho SSD Intel 520 Series của tôi.
pableu

Điều đáng chú ý là ngay cả khi ổ đĩa không "thất bại" khi nó đạt tới 001, tại một số điểm sau đó (có thể là một chặng đường dài sau đó), khả năng giữ lại dữ liệu của một số ổ đĩa bị mất đi trong khoảng thời gian ngắn đáng báo động . Tôi nghĩ rằng đã có một số bài kiểm tra độ bền được đăng trực tuyến đã đo lường điều này.
sa289

6

Các ổ Corsair cũng xuất một chỉ báo tỷ lệ phần trăm còn lại tương tự. Trong trường hợp của họ, đó là thuộc tính 231:

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

(Lưu ý rằng nếu smartctl hiển thị đây là Nhiệt độ bạn cần cập nhật cơ sở dữ liệu thiết bị của mình. Trên hệ thống Debian của tôi có nghĩa là đang chạy /usr/sbin/update-smart-drivedb)

Một bài đăng trên blog của Corsair dường như cho thấy rằng giá trị không bao giờ xuống dưới 10% vì vậy tôi cho rằng nó nên được thay thế ở mức 10%.

Tôi cũng có một ổ đĩa OCZ với cùng bộ điều khiển Sandforce, cũng xuất cùng giá trị SSD_Life_Left.


3

Media_Wearout_Indicator là những gì bạn đang tìm kiếm. Đối với 100 có nghĩa là ssd của bạn có 100% cuộc sống, số thấp hơn có nghĩa là ít cuộc sống hơn.

# smartctl -a /dev/sda | grep Media_Wearout_Indicator

Đầu ra từ máy tính xách tay của tôi

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

Nếu bạn muốn xem thêm chi tiết và các thuộc tính đầy đủ từ ổ đĩa của mình, bạn có thể chạy

# smartctl -data -A /dev/sda

và đầu ra

# 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


Thật hữu ích khi đề cập rằng trong trường hợp này, giá trị chuẩn hóa nên được sử dụng.
Falcon Momot

1

Không hẳn vậy. Nếu ổ đĩa không giữ số liệu thống kê, bạn sẽ không biết chắc chắn. Thậm chí sau đó, ổ đĩa sẽ trừu tượng hóa các thuật toán mức ghi và như vậy để cố gắng tối ưu hóa mọi thứ dưới mui xe, tránh xa các cuộc gọi và giao diện hệ thống. Nói cách khác, ổ đĩa có thể dễ dàng nói dối bạn về nơi dữ liệu thực sự được ghi trên "phương tiện" để bạn không biết những tế bào nào đang hoạt động.

Điều đó vẫn không đảm bảo khi / nếu bạn sẽ thấy lỗi hoặc lỗi. Lái xe có thể thất bại vào ngày mai, có thể thất bại trong ba năm.

Đặt cược tốt nhất là giữ nó trong cấu hình RAID và có kế hoạch thay thế nó khi nó bị lỗi (trước khi ổ đĩa khác bị lỗi) và đảm bảo rằng các bản sao lưu của bạn hiện tại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.