fstrim เสื่อมสภาพ SSD หรือไม่


4

ฉันซื้อ samsung 840 pro 250 GB ssd ~ สองเดือนที่ผ่านมาและฉันสงสัยว่ามีการเขียนถึงเท่าใด จริงๆแล้วฉันมีพาร์ติชั่นอยู่สี่ตัว: /, / home, boot และ swap เมื่อต้องการทราบว่าฉันเขียนถึงบ้านมากแค่ไหน

$cat /sys/fs/ext4/sda7/lifetime_write_kbytes

ผลลัพธ์คือ8,985,606,440(ฉันเพิ่มเครื่องหมายจุลภาค) นั่นคือ 8TB ฉันสงสัยในตัวเองเด็กผู้ชายฉันต้องเขียนเยอะมาก ฉันสงสัยได้อย่างไร ฉันตรวจสอบว่าฉันเขียนมากแค่ไหนจากการท่องอินเทอร์เน็ตและงานทั่วไปอื่น ๆ จากนั้นฉันจำได้ว่าฉันตั้ง cron รายวันเพื่อทำ fstrim เพราะอินเทอร์เน็ตบอกให้ฉันทำ ดังนั้นฉันวิ่ง

$sudo fstrim -v /home

และเอาท์พุทเป็น606,591,360ไบต์ถูกตัดแต่ง

จากนั้นฉันก็วิ่ง

$cat /sys/fs/ext4/sda7/lifetime_write_kbytes

8,986,209,516อีกครั้งและนั่นเองที่ฉันได้รับ ดังนั้นการเขียนของฉันเพิ่มขึ้น 600MB ตอนนี้มันไม่เพียงพอที่จะเขียนถึง 8TB ของการเขียน แต่ฉันเพิ่งเรียกใช้ fstrim ไม่กี่นาทีก่อนหน้านี้ดังนั้นฉันคิดว่า fstrim มักจะจดจ้องมากกว่า 600 MB ฉันจะต้องยืนยันเรื่องนี้

ไม่ว่าการเขียนที่เกิดจาก fstrim จะมีผลต่อการลดอายุการใช้งานของ SSD หรือไม่? ฉันมีความประทับใจที่พวกเขาไม่ได้

แก้ไข

ฉันไม่ต้องคาดเดาว่างาน cron จะถูกปรับลดลงเท่าไหร่ ปรากฎว่าอินเทอร์เน็ตบอกให้ฉันบันทึกการทำงานของ fstrim เมื่อดูที่บันทึกฉันเห็นว่ามันถูกตัดโดยเฉลี่ยประมาณ 150 GB / วันตั้งแต่วันที่ 24 สิงหาคม 150 GB / วัน * 60 วันประมาณ 9 TB ดังนั้นฉันคิดว่า fstrim คิดเป็น 9TB ของการเขียนฉันต้องใช้ SSD

แก้ไข 2

สมาร์ทไม่ได้เปิดใช้งานบน SSD $sudo smartctl -s on /dev/sda7แต่ฉันวิ่ง $sudo smartctl -a /dev/sda7แล้วผมก็วิ่ง นี่คือผลลัพธ์:

smartctl 5.43 2012-06-30 r3573 [x86_64-linux-3.8.0-25-generic] (local build)
Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     Samsung SSD 840 PRO Series
Serial Number:    S1ATNSAD780426K
LU WWN Device Id: 5 002538 5a00ae961
Firmware Version: DXM05B0Q
User Capacity:    256,060,514,304 bytes [256 GB]
Sector Size:      512 bytes logical/physical
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 4c
Local Time is:    Wed Oct 30 09:43:18 2013 CDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

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

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (53956) seconds.
Offline data collection
capabilities:            (0x53) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    No Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   2) minutes.
Extended self-test routine
recommended polling time:    (  20) minutes.
SCT capabilities:          (0x003d) SCT Status supported.
                    SCT Error Recovery Control supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0032   099   099   000    Old_age   Always       -       458
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       28
177 Wear_Leveling_Count     0x0013   099   099   000    Pre-fail  Always       -       2
179 Used_Rsvd_Blk_Cnt_Tot   0x0013   100   100   010    Pre-fail  Always       -       0
181 Program_Fail_Cnt_Total  0x0032   100   100   010    Old_age   Always       -       0
182 Erase_Fail_Count_Total  0x0032   100   100   010    Old_age   Always       -       0
183 Runtime_Bad_Block       0x0013   100   100   010    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0032   072   068   000    Old_age   Always       -       28
195 Hardware_ECC_Recovered  0x001a   200   200   000    Old_age   Always       -       0
199 UDMA_CRC_Error_Count    0x003e   100   100   000    Old_age   Always       -       0
235 Unknown_Attribute       0x0012   001   001   000    Old_age   Always       -       4294967148
241 Total_LBAs_Written      0x0032   099   099   000    Old_age   Always       -       748699270

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]


SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
  255        0    65535  Read_scanning was never started
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

คุณกดปุ่มแลกเปลี่ยนบ่อยแค่ไหน? หากคำตอบคือ "เกือบจะไม่เคย" นั่นอาจจะนับได้ง่ายสำหรับการนับของคุณ
ChrisInEdmonton

3
ฉันเดาว่าคำสั่ง TRIM ที่ส่งโดย fstrim จะถูกนับเป็นการเขียนโดยไดรเวอร์ ext4 แม้ว่าพวกเขาจะไม่ได้เขียนจริง SMART พูดว่าอะไร? เรียกใช้smartctl -a /dev/sdsa7(คุณอาจต้องติดตั้ง smartmontools ก่อน) และดูที่ฟิลด์ Host_Writes * และ NAND_Writes *
wingedsubmariner

1
ซัมซุงไม่ได้รายงานการเขียนจริงและใน SMART คุณสามารถเพิ่มอายุการใช้งานของไดรฟ์ของคุณด้วยการตัดแต่งเพราะจะทำให้คอนโทรลเลอร์สามารถจัดเขียนได้อย่างเท่าเทียมกัน (ในทางกลับกัน Samsung Magician ใน Windows จะแสดงค่าที่ชื่อว่า "Total Bytes Written" แต่ฉันไม่แน่ใจว่าจะได้รับจากที่ใด)
Groo

1
ดังนั้นดูเหมือนว่าคำตอบคือ fstrim ไม่ได้เสื่อมสภาพ ssd ของคุณ; ในทางตรงกันข้ามมันเพิ่มอายุการใช้งานของมัน การเขียนที่รายงานใน lifecent_write_kbytes อ้างถึงการเขียนระบบไฟล์ที่ระดับนามธรรมที่สูงขึ้นและไม่จำเป็นต้องสอดคล้องกับการเขียนเชิงกายภาพไปยังไดรฟ์
Brian Moths

1
ที่นี่ชายคนหนึ่งเขียน 3 PB ไปยัง 128GB Samsung 840 PRO ก่อนที่มันจะตาย ฟังดูมั่นใจ
Nickolai Leschov

คำตอบ:


3

fstrim ไม่ทำให้ SSD ของคุณเสื่อมสภาพ ในทางตรงกันข้ามมันเพิ่มอายุการใช้งานของมัน การเขียนที่รายงานใน lifecent_write_kbytes อ้างถึงการเขียนระบบไฟล์ที่ระดับนามธรรมที่สูงขึ้นและไม่จำเป็นต้องสอดคล้องกับการเขียนเชิงกายภาพไปยังไดรฟ์ ดังนั้นแม้ว่าจะมีการรายงานการเขียน 40 TB ในตลอดอายุการใช้งาน_write_kbytes แต่$sudo smartctl -s on /dev/sda7ตามมาด้วยการ $sudo smartctl -a /dev/sda7เปิดเผยว่าฉันได้เขียน 750,000,000 บล็อกที่มีขนาด 512 ไบต์แต่ละรายการซึ่งออกมาเป็น 375GB ซึ่งเป็นค่าที่สมเหตุสมผลมากขึ้นสำหรับการใช้งานสองเดือน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.