Bir SSD ile SSD ömrünü arttırmak için değiştirilebilmem gerekir mi?


35

Aşağıdaki öneri içeren bu makaleyle karşılaştım :

Takas ve takas

Takas bölümümü eski HDD’de tuttum. SSD'ye geçiş daha hızlı olur, ancak SSD'nin ömrünü de kısaltır.

Sistemimde bol miktarda bellek var, bu yüzden de Ubuntu’ya yalnızca kesinlikle gerektiğinde yer değiştirmesini söylemek için takas değerini 0’a düşürdüm. Bunu, /etc/sysctl.conf dosyasına vm.swappiness = 0 satırını ekleyerek yaptım.

Değişkenliğin sıfıra ayarlanması SSD'nin ömrünü artıracağı doğru mu? Buna başka hiçbir yerde referans bulamıyorum.

Yanıtlar:


30

Değişimin 0'a düşürülmesi, işletim sisteminin yalnızca boş RAM bulunmadığında takas için SSD kullanmaya başlayacağı anlamına gelir.

Teorik olarak bu, SSD'nin ömrünü uzatabilir çünkü SSD daha az yazı çeker. Neredeyse SSD'nin ömrünü uzatıp artırmadığına bağlı:

  • Linux, takas değerlerini (özellikle pencerelere kıyasla) nadiren daha yüksek takas değerleriyle de kullanır; bu nedenle bu ayar, RAM kullanımına kıyasla çok miktarda RAM bulunan sistemlerde takas davranışını değiştirmez. Eğer RAM konusunda yetersizseniz, takas işlemi 60'lık varsayılan değerle oldukça sık gerçekleşebilir; bu durumda, takası düşürmenin SSD'nin yazma döngüsü sınırı üzerinde önemli bir etkisi olacaktır.

  • SSD'nin yazma dayanıklılığı, en azından MLC tabanlı SSD'ler için basit bir tüketici kullanımı için hala oldukça yüksektir . Mevcut MLC tabanlı SSD'lerin ca. 3000-5000 yıpranmadan önce yazma çevrimleri. 3000 limit ile hesaplamak, günlük 10 GB yazma işlemine sahip 128 GB'lık bir SSD'nin ca. 38000 gün, bu ca. 100 yıl. Tabii ki daha büyük bir SSD varsa, bu daha sonra yıpranacaktır. Bu nedenle, SSD'nizin tükenmekte olan hücreler yüzünden ölmesi pek olası değildir. (Tabii ki SSD'nizi bir şirket / sunucu ortamında kullanıyorsanız, günlük yazma sayısı çok daha yüksektir, ancak şirket ortamlarında genellikle SLC tabanlı SSD'ler kullanılır.)

  • Bu yazma döngüsü sınırı o kadar yüksektir ki, SSD üreticileri (ilk önce SAMSUNG) tüketiciler için TLC tabanlı SSD'ler üretmeye başladılar , bu da yalnızca 1000 yazma çevrimi, ancak daha ucuz. Bu şirketler, bu SSD'nin yazma döngüsü sınırının bile ürünün kullanılması beklenenden daha uzun süreceğini söylüyor. (2024'te hala 128 GB'lık SSD'lerimizi kullanmamız muhtemel değildir) TLC tabanlı bir SSD'niz varsa ve bu sürücüye oldukça sık yazıyor olsanız da, örneğin 50GB / gün, takas değerinin azaltılmasının büyük bir etkisi olacaktır. SSD'nizin ömrü boyunca.
  • İşte meraklıların SSD'nin dayanıklılığını sürekli olarak yazarak test ettikleri dev bir konu . Test yöntemleri muhtemelen tamamen doğru olmamakla birlikte, sonuçları oldukça etkileyici ve rahatlatıcı.

Özetlemek gerekirse: Teoride evet, değişimin azaltılması, SSD'nin ömrünün uzamasına neden olacak, pratikte ise büyük olasılıkla olmayacaktır. Ancak, TLC tabanlı bir SSD'niz varsa ve RAM'de yetersizseniz ve genellikle SSD'ye sık sık yazıyorsanız, bunun da pratik bir etkisi olabilir.

MLC tabanlı 128 GB SSD kullanıyorum ve sistemimi ofis / tarama için kullanıyorum ve RAM kullanımımla karşılaştırıldığında bol miktarda RAM'im var, bu yüzden SSD'im yoğun yazma yükü altında değil (makinem 7/24 olsa da). Fakat hiç takas yapmam gerekmediğinden ve SSD'lerimi kurduğumda takas değiştirmeyi kendim için yaptığım takaslığı düşürmek o kadar kolay olduğu için, çünkü neden yapmıyorsunuz? (Aslında, sadece HDD'leri olan makinelerde bile, tüm makinelerimde değişebilirliği 0 olarak ayarlıyorum.)

SSD'nizin yaşamı boyunca ne kadar sıkıntı çektiğini kontrol edebilirsiniz , bu smartctldoğrultuda arama yapın Total_LBAs_Written, bu size SSD'ye ne kadar 512b sektörün yazıldığını gösterecektir. (Evet, SSD'lerin fiziksel olarak 4K bloklar, 512b değil, SMART'ın hala söylediklerini biliyorum: Sector Size: 512 bytes logical/physicalve 512 blok ile tune2fs -lÖmür boyu yazılan çıktıyla karşılaştırılabilir sonuçlar alıyorum .) Yani 512 ile bu sayıyı çarpıp yazmayı bayt cinsinden alıyorsunuz . veya kısaca:

sudo smartctl -a /dev/sda | grep Total_LBAs_Written | awk '{print $10*512/1024/1024/1024 " GiB"}'

/ dev / sda için GiB olarak basılacaktır. (Sadece cihaz adını SSD'nizin adına göre değiştirin.) 128 GB'lık SSD'm ca. 800 GB bir yıldan biraz daha uzun bir süre yazıyor, bu 3000'den yalnızca 7 yazma çevrimi anlamına geliyor.


Bir dosya sistemi ile, biri yazma kuvvetlendirmesini azaltmak için TRIM yapabilir. Bir SWAP bölümü için bir eşdeğeri var mı?
Bryce

Bu cevap, “takas” ın 0 ile 100 arasında değiştiğini ve sıfır olmadığı ve takas yapılmadığı (ve 100’ün RAM’in olmadığı anlamına geldiği varsayılıyor) görünüyor. Ancak, bir başka cevapswappiness , sayının 0 ila 200 arasında değiştiğini ve farklı değişim türlerine göre göreceli bir ağırlığı temsil ettiğini belirten değerle ilgili daha fazla ayrıntıya girer .
palswim

7

Bütün bu SSD'leri takmakla ilgili konuşmalar "tahminde bulunmaktır". Aynı hislere sahibim ama ticari olarak kullanmaya başladım. Doğu yakasındaki en hızlı oracle kümelerinden birine sahibim. 3 yıl önce tüm depolama VE geçici dosya sistemlerimiz için SSD'leri kurduk. SSD'lere günde milyarlarca yazma işlemi yapıyoruz. 3 yıl sonra hala% 10 tükenmişliğin yakınında hiçbir yere gelmedik. Bunu ticari olarak yapabilirsem, asla bir konut durumunda asla eskimeyeceklerdir. Bu yüzden, özellikle linux iş istasyonum ve BAM'daki takas alanı için bir SSD çözümü uyguladım !!!

Yani, kilometreleriniz değişiyor ama SSD her yöne gitmenin yolu.

Dave


Sunucular için tasarlanan SSD'ler, tüketicilere yönelik (ucuz) olanlardan daha fazla yazabilir.
jarno

1
Anladım, ancak şirket genelinde 7 gün 24 saat çalışan iş istasyonlarına yüklenen tüketici SSD'lerim var ve deltaları her iki günde bir yedeklemekteyiz, ancak 2 yılda tek bir başarısızlık yaşamadık. Fiziksel bir eğirme tabağı için MTBF'nin 3 yıl olduğunu ve 25 yılı aşkın bir süredir satış / servis sistemleri tecrübem olduğunu unutmayın, bu oldukça doğru. SSD'ler ticari veya tüketici olarak diğer tüm seçeneklerden daha iyi performans gösterir.
TekOps 17

3

Evet . SSD ömrünü artırmak için değiş tokuş etmek zorundasınız.

Değiş tokuş, ne kadar takas dosyasının kullanıldığını kontrol etmenizi sağlar. Değişkenlik değerleri 0'dan 100'e kadar değiştirilebilir. Değişkenlik değerleri ne kadar yüksek olursa, değişim alanı o kadar fazla çekirdeği kullanmaya çalışırsa, değişkenlik değerleri o kadar düşük olursa, çekirdeğin ayarlarımıza bağlı olarak değiştirme alanı o kadar az veya hiç kullanmayacak demektir.

Varsayılan takas değeri 60'tır, eğer çok miktarda RAM'iniz varsa, SSD'nize ancak bir HDD'ye yazan ve okunan takas alanını kullanmaktan kaçınmalısınız. 4 GB veya daha fazla RAM içeren bir sistemde, takas dosyası bir HDD’de olacak şekilde takas ayarlarını 10 hatta 0 arasında değiştirerek takas kullanımını azaltmaya çalışın.

Bir takas alanını çalıştırmak çok disk G / Ç yoğundur ve aslında SSD için kötüdür. Bir SSD çok fazla yazma işlemine yalnızca kötü işlemeden önce baş edebilir ve başka bir sürücü almaya zorlanırsınız. Bu nedenle, eğer mümkünse, takas alanınızı ikincil, dönen bir sürücüye… SSD'den uzaklaştırın.

Bir Katı Hal Sürücüsü yazma işlemleriyle nispeten hızlı bir şekilde aşınır. Özellikle en eski SSD kuşakları bu açıdan savunmasızdı, fakat daha az derecede, yeni kuşaklar için geçerli olan durum bu.

Yeni bir diskte yeni bir bölüm oluşturabilir veya bunun yerine sadece bir takas dosyası oluşturabilirsiniz; yeni bir bölüm oluşturmak neredeyse her zaman çok daha iyi performansla sonuçlanacaktır.

Taşınacak alternatif bir sürücünüz yoksa, yalnızca fiziksel RAM'iniz% 100 dolduğunda takas özelliğini etkinleştirecek bir ayarı değiştirebilirsiniz; bu, takas dosyanızdaki yükü azaltacaktır ve SSD'nize yardımcı olacaktır. Terminal'i açmak için klavyenizdeki Ctrl+ Alt+ tuşlarına basın T. Açıldığında, aşağıdaki komutları çalıştırın:

echo 0 > /proc/sys/vm/swappiness

SSD'nin aşınma ve yıpranması yazma çevrimleriyle ilgilidir

Bir Katı Hal Sürücüsü yazma işlemleriyle nispeten hızlı bir şekilde aşınır. Özellikle en eski SSD kuşakları bu açıdan savunmasızdı, fakat daha az derecede, yeni kuşaklar için geçerli olan durum bu.

Kesmeyi Kullan

TRIM, SSD'lerle kullandığınız bir avantajdır. Yazılımda çalışır ve dosya sistemi tarafından artık hangi bloklara ihtiyaç duyulmadığını ve güvenli bir şekilde temizlenip üzerine yazılabileceğini söyleyerek SSD kontrol cihazı ile iletişim kurar. Bu gerçekten bir performans artışıyla sonuçlanmayacak, ancak SSD'nizin ömrünü uzatacak.

Kaynaklar: Linux SSD Tweaks & SSD'nizi optimize etmek için nasıl yapılır


Neyin yanlış olduğunu bilmek isterim? OP, SSD ömrünü artırmak için değiş tokuşunu değiştirmesi gerekip gerekmediğini sordu ve cevabı evet değiş tokuş etmek zorunda olması gerektiğidir.
Mitch

Ubuntu'nun en son sürümlerinin otomatik olarak SSD'ler için TRIM kullandığını biliyorum.
Paddy Landau,

En son Ubuntu, belirli SSD modelleri için TRIM'i kullanır. @PaddyLandau
Bryce,

2

Değişkenliğin sıfıra ayarlanması SSD'nin ömrünü artıracağı doğru mu?

Linux'un bellek bloklarını takas bölümüne daha az sıklıkta hareket ettirmesine neden olacaktır. Değişiminize yazma, normalde değiş tokuşunuz SSD'deyse yazma döngüleri kullanır. Takas işleminin yalnızca gerektiğinde kullanıldığını ve yeterli RAM'iniz varsa, onsuz daha iyi olabileceğini unutmayın (hazırda bekletme modu istemiyorsanız, ancak bu başka bir sorun).

Bu eylemlerin etkileri değişebilir, ancak bunu sadece SSD'deki bazı yazma döngülerini kurtarmak için yapmak yanlış yapmaktır. Modern SSD'ler (2012'den itibaren) tonlarca yazma döngüsüne sahiptir ve neredeyse tüm RAM'lerinizi kullandığınızda uygulamalarınız için performans düşebilir. Programların kurulumu sırasında takas yerine olduğundan daha fazla yazma döngüsü kullanıyorsunuz. Unutmayın, bu takas yalnızca varsayılan olarak gerektiğinde kullanılır.

Takas için kullanılan SSD yazma çevrimleriniz hakkında endişeleniyorsanız, yeterli RAM’iniz varsa takas işlemini tamamen devre dışı bırakabilir / devre dışı bırakabilir ve takasla uğraşmak yerine HDD’de geçici bir takas özelliğini etkinleştirebilirsiniz. Bu en iyi rota olurdu.


0

Sisteminizi 4 GB veya daha fazla RAM için yeterli bellek / ram varsa, en iyi değeri "0" olarak değiştirmenizi tavsiye ederim. Yüksek ram sistemiyle 10'da takas olmasına rağmen, çoğu durumda zaten ram olduğundan ubuntu'nun takas bölümüne bir şey koyduğunu görmüyorum.

Biraz google araması yaptım ve bu sayfayı buldum http://namhuy.net/1563/how-to-tweak-and-optimize-ssd-for-ubuntu-linux-mint.html

Ubuntu sisteminiz için SSD'yi daha verimli hale getirmenize ve optimize etmenize yardımcı olabilir;


0

Değişimin değişmesi aslında bir etkiye sahip olmayabilir. RAM'de kısa olan sistemlerde onunla çok oynadık ve SSD'ye mümkün olduğu kadar çok baskı yapmak istiyoruz ve aslında bellekte kalan materyaller (ihtiyaç duyuldukları anlamına gelir) çok az etki yarattı. Bu bir tartışma noktası olabilir.


0

smartctlÇıktıyı kontrol etme fikrini sevdim , ancak kodum biraz daha kompakt. İnsanların niçin bilmediklerini, awkbunun içinde grepyerleşik bir yeteneğe sahip olduğunu anlamadım .

sudo smartctl -a /dev/sdb | awk ' ($0 ~ /Total_LBAs_Written/) {print ($10*512)/(1024^3) " GiB"}'

Bu kullandığım kod olmasına rağmen:

sudo smartctl -a ${device} | awk ' ($0 ~ /Total_LBAs_Written/) { if (($10*512)/(1024^3) > 1000) { msg="TiB"; size=($10*512)/(1024^4); } else { msg="GiB"; size=($10*512)/(1024^3); }; printf "\nThis device has had %.2
f %s written to it.\n",size,msg; }'
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.