SSD'ye ömrü boyunca ne kadar veri yazılmıştır?


15

Diskin ömrü boyunca SSD'ime kaç GB yazıldığını gösteren bir Terminal komutu var mı? Soruyorum çünkü kaç döngü yapıldığını öğrenmek istiyorum. SSD, tipine bağlı olarak yaklaşık 1000-2000 döngü yapabilir.


Mac'inizde hangi SSD var?
bmike

250 GB'lık bir sürücüye 1000 döngü yazarsanız, bu 250 TB veri yazdığınız anlamına gelir. Her gün 50 GB yazsanız bile onu öldürmek 13 yıl alacaktı.
Thomas Ayoub

2
Aslında SSD'mde günde ortalama 32 GB. Ben zaten 42 TB yazılan giriş var ve "aşınma seviyesi" sadece% 88 ve toplam yazma "99%" (ne olursa olsun) DriveDx göre. Sürücüm toplam 20 aydır açık. Kesinlikle hata veya kötü sektörlerim yok.
zagadka314

1
@ThomasAyoub 50GB / gün, takas sayesinde hafife alınacak bir cehennemdir ! 120GiB SSD'm Host_Writes_MiB 317296939 (Bu 2421 döngü ) ve Wear_Leveling_Count FAILING_NOW. Macbook'um 13 yaşına yakın değil, daha çok 4 yaşında.
Navin

2
@ O zaman iyi, tamamen yanlış olduğumu kabul ediyorum.
Thomas Ayoub

Yanıtlar:


7

SSD'nizin aşağıdaki SMART özelliklerini uygun bir araçla okuyun *:

241 - Yazılan Toplam LBA'lar: Cihazın ömrü boyunca yazılan toplam 512 bayt sektör sayısı.

242 - Toplam LBA Okuma: Cihazın ömrü boyunca okunan toplam 512 bayt sektör sayısı.

İkinci bir özellik kümesi:

174 - Host_Reads_MiB
175 - Host_Writes_MiB

Ancak ikinci sette bulunan değerlerin gerçekten mantıklı olup olmadığını bilmiyorum (en azından benim için Fusion sürücüsünün bir parçası olarak 120 GB SSD ile) SSD'ye SSD'ye rağmen SSD'ye çok daha fazla veri yazılıyor boyutunun yalnızca 1 / 25'ine sahiptir:

0xae Host_Reads_MiB          ----CK   100   100   000    -    12268569 (~12 TiB)  
0xaf Host_Writes_MiB         ----CK   100   100   000    -    16481745 (~16 TiB) 

3 TB HDD'ye (Fusion sürücüsünün ikinci kısmı) kıyasla:

0xf1 Total_LBAs_Written      ------   100   253   000    -    21361815408 (~10 TiB)  
0xf2 Total_LBAs_Read         ------   100   253   000    -    23925221693 (~11 TiB)

Smartmontools yüklendikten sonra "242 Total_LBAs_Written" özniteliği varsa, aşağıdaki komutlar yazılı verileri GB olarak verir:

smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xf1 | awk '{ print $8/1953125 }'

veya TB cinsinden:

smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xf1 | awk '{ print $8/1953125000 }'

"DiskIdentifier" ile bulunan dahili SSD'nizin tanımlayıcısını değiştirin diskutil list. Muhtemelen disk0.

Aşağıdaki komut, "175 - Host_Writes_MiB" özniteliği mevcutsa GB cinsinden yazılan verileri verir (sonuca dikkatli davranın):

smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xaf | awk '{ print $8/953.67 }'

Daha önce de belirtildiği gibi, "DiskIdentifier" ı bulunan dahili SSD'nizin tanımlayıcısıyla değiştirin diskutil list. Muhtemelen disk0.

Yukarıdaki smartctl komutları çok güvenilir değildir (en azından benim için).
"SMART Verilerini Oku başarısız oldu: Tanımsız hata: 0" gibi bir hata alırsanız, smartctl -A /dev/disk0önce deneyin .
"SMART Disabled (Hatalı SMART) gibi bir hata alırsanız, etkinleştirmek için 'on' argümanıyla -s seçeneğini kullanın smartctl -s on -A /dev/disk0
.

* smartmontools


OS X varsayılan olarak SSD'lerde SMART'ı etkinleştirmiyor mu? Etkinleştirilmesi geçmiş geçmiş bilgilerini sağlayacak mı?
grg

@grgarside Göndermeden önce Fusion-SSD'mi kontrol ettim ve SMART etkinleştirildi. Ancak bu özellikleri bulamadı.
klanomath

"APPLE SSD SM256E" (rMBP) cihazımda "Kullanılabilir", ancak smartctl ile "Devre dışı" görünüyor.
grg

@grgarside ile etkinleştirin smartctl -s on /dev/DiskIdentifier. Sonra verileri elde edebileceksiniz. Tekrar devre dışı bırakmak için:smartctl -s off /dev/DiskIdentifier
klanomath

1
smartctl Homebrew veya port kullanarak kolayca kurulabilen ve hatta bunun için bir GUI olduğunu eklemek isteyebilirsiniz .
n1000

5

Orijinal yazı, SSD'lerin sorunu aşırı basitleştiren 1000-2000 döngü sınırına sahip olduğundan bahsediyor. Bir SSD'deki tek tek hücreler böyle bir sınıra sahip olabilir, ancak SSD çok fazla çözüm uygular: aşırı provizyon ve yazma seviyelemeden Sandforce'un "DuraWrite" adını verdiği tescilli çoğaltma, sıkıştırma ve veri farklılaştırma tekniklerine kadar.

Orijinal gönderiye dönün: iostatilgili olsa da, teknikler toplu etkinlik gösterir, ancak her hücre için kaç program / silme döngüsü gerçekleştirildiğini ve oradan SSD'de ne kadar yaşam kaldığını bilmek için geriye doğru çalışmak çok zordur.

SSD'leri belirtilen kapasitelerinin% 20'sine kadar doldurmaktan ve kullanılmış SSD'leri yeterli yedekleme olmadan dağıtmaktan kaçınmak yararlı olabilir.

Ars Technica, SSD'lerin nasıl çalıştığı hakkında birkaç yararlı makaleye sahiptir. En doğrudan yararlı olan şudur: " Tüketici sınıfı SSD'ler aslında uzun süredir cehennemdir ". Daha fazla ayrıntı için buraya bakın , özellikle sayfa 5.


4

Ben yüklü GSmartControl ile Homebrew ( brew install gsmartcontrol) ve bu var:

GSmartControl ekran görüntüsü OSX

SMART özellik no. 173 (Silme Sayısı veya Aşınma Düzeyi), kullanılan genel sektör yazımları anlamına gelmelidir.

MacBook 2015'im bunu yanıtladı (0xf1 kimliği yok):

smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/disk0 
smartctl 6.4 2015-06-04 r4109 [x86_64-apple-darwin15.0.0] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     APPLE SSD SM0256G
...
LU WWN Device Id: 5 002538 900000000
Firmware Version: BXW1SA0Q
User Capacity:    251 000 193 024 bytes [251 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS T13/1699-D revision 4c
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
...
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID#  ATTRIBUTE_NAME          FLAGS    VALUE WORST THRESH FAIL RAW_VALUE
0x01 Raw_Read_Error_Rate     -O-RC-   200   200   000    -    0
0x05 Reallocated_Sector_Ct   PO--CK   100   100   000    -    0
0x09 Power_On_Hours          -O--CK   099   099   000    -    180
0x0c Power_Cycle_Count       -O--CK   099   099   000    -    650
0xa9 Unknown_Attribute       PO--C-   229   229   010    -    1975773037504
0xad Unknown_Attribute       -O--CK   200   200   100    -    4296081414
0xae Unknown_Attribute       -O---K   099   099   000    -    2547718
0xaf Program_Fail_Count_Chip -O---K   099   099   000    -    1304888
0xc0 Power-Off_Retract_Count -O--C-   099   099   000    -    1
0xc2 Temperature_Celsius     -O---K   059   022   000    -    41 (Min/Max 19/78)
0xc5 Current_Pending_Sector  -O---K   100   100   000    -    0
0xc7 UDMA_CRC_Error_Count    -O-RC-   200   199   000    -    0
                             ||||||_ K auto-keep
                             |||||__ C event count
                             ||||___ R error rate
                             |||____ S speed/performance
                             ||_____ O updated online
                             |______ P prefailure warning

ATA_READ_LOG_EXT (addr=0x00:0x00, page=0, n=1) failed: 48-bit ATA commands not implemented
Read GP Log Directory failed

Device Statistics (GP/SMART Log 0x04) not supported

-2

Bu soruya burada çok ayrıntılı bir cevap verildi

Aşağıdaki komut

iostat -Id disk0

cihazın takıldığı andan iostat komutunun çalıştırıldığı ana kadarki veri aktarım istatistiklerini yansıtır.


6
Bu yararlı bilgiler sağlarken, bu 'diskin ömrü boyunca' nasıl uygulanır?
grg

2
Bu sadece önyükleme ya da bir şey beri okuma + yazma MB toplamı yazar. Genellikle Etkinlik Monitörü, Disk sekmesindeki istatistiklerin aynısı.
Adam Hošek
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.