Muss ich bei einer SSD meine Einstellungen ändern, um die Lebensdauer der SSD zu verlängern?

35

Ich bin auf diesen Artikel gestoßen, der den folgenden Vorschlag enthält:

Swap und swappiness

Ich habe meine Swap-Partition auf der alten Festplatte behalten. Ein Austausch der SSD wäre schneller, würde aber auch die Lebensdauer der SSD verkürzen.

Mein System verfügt über genügend Arbeitsspeicher, daher habe ich den Swap-Wert auf 0 reduziert, um Ubuntu anzuweisen, nur dann zu tauschen, wenn dies unbedingt erforderlich ist. Ich tat dies, indem ich die Zeile vm.swappiness = 0 zu /etc/sysctl.conf hinzufügte.

Stimmt es, dass das Setzen von swappiness auf Null die Lebensdauer meiner SSD verlängert? Ich kann keine Referenzen dazu finden.

8128
quelle

Antworten:

30

Wenn Sie die Auslagerung auf 0 reduzieren, verwendet das Betriebssystem die SSD nur dann zum Auslagern, wenn kein freier Arbeitsspeicher mehr verfügbar ist.

Theoretisch kann dies die Lebensdauer der SSD verlängern, da die SSD weniger Schreibvorgänge erleidet. Es kommt darauf an, ob es die Lebensdauer der SSD praktisch verlängert:

  • Linux verwendet den Swap selten (insbesondere im Vergleich zu Windows), selbst wenn die Swap- Werte höher sind. Daher wird diese Einstellung das Swap- Verhalten auf Systemen mit viel RAM im Vergleich zur RAM-Nutzung wahrscheinlich nicht ändern. Wenn der Arbeitsspeicher knapp ist, kann das Auslagern mit dem Standardwert 60 recht häufig vorkommen. In diesem Fall hat eine geringere Auslagerung wahrscheinlich erhebliche Auswirkungen auf das Schreibzykluslimit der SSD.

  • Zumindest für MLC- basierte SSDs ist die Schreibbeständigkeit der SSDs für eine einfache Nutzung durch den Verbraucher immer noch recht hoch . Sie sagen, dass die aktuellen MLC-basierten SSDs ca. tolerieren können. 3000-5000 Schreibzyklen, bevor sie abgenutzt sind. Rechnet man mit dem Limit von 3000, bedeutet dies, dass eine 128-GB-SSD mit einem täglichen Schreibvolumen von 10 GB für ca. 200 Sekunden problemlos funktioniert. 38000 Tage, das heißt ca. 100 Jahre. Wenn Sie eine größere SSD haben, nutzt sich das natürlich viel später ab. Daher ist es sehr unwahrscheinlich, dass Ihre SSD aufgrund der abgenutzten Zellen abstirbt. (Wenn Sie Ihre SSD in einer Unternehmens- / Serverumgebung verwenden, sind die täglichen Schreibvorgänge natürlich viel höher, aber in Unternehmensumgebungen werden normalerweise SLC- basierte SSDs verwendet.)

  • Diese Schreibzyklusbegrenzung ist so hoch, dass die SSD-Hersteller (zunächst SAMSUNG) damit begannen, TLC- basierte SSDs für Verbraucher herzustellen , die ca. 1000 Schreibzyklen sind aber billiger. Diese Unternehmen geben an, dass auch die Schreibzyklusbegrenzung dieser SSD länger als die erwartete Verwendungsdauer des Produkts dauert. (Es ist unwahrscheinlich, dass wir im Jahr 2024 weiterhin unsere 128-GB-SSDs verwenden.) Wenn Sie jedoch über eine TLC-basierte SSD verfügen und häufig auf dieses Laufwerk schreiben, z auf die Lebensdauer Ihrer SSD.
  • Hier ist ein riesiger Thread, in dem Enthusiasten die Ausdauer der SSD testeten, indem sie ihnen ständig schreiben. Obwohl ihre Testmethode wahrscheinlich nicht ganz korrekt ist, sind ihre Ergebnisse ziemlich beeindruckend und beruhigend.

Zusammenfassend lässt sich sagen: Theoretisch gesehen führt eine Verringerung der Austauschbarkeit zu einer längeren Lebensdauer der SSD, in der Praxis ist dies wahrscheinlich nicht der Fall. Wenn Sie jedoch eine TLC-basierte SSD haben, der Arbeitsspeicher knapp ist und Sie im Allgemeinen häufig auf die SSD schreiben, kann dies auch einen praktischen Effekt haben.

Ich habe eine MLC-basierte 128-GB-SSD und verwende mein System hauptsächlich für Office / Browsing. Im Vergleich zu meiner RAM-Auslastung verfügt meine SSD nicht über eine hohe Schreiblast (obwohl mein Computer rund um die Uhr in Betrieb ist). Aber weil ich überhaupt keinen Austausch benötige und es so einfach ist, den Austausch zu verringern, den ich selbst bei der Installation meiner SSDs vorgenommen habe, setzen Sie den Austausch auf 0. Warum nicht? (Eigentlich habe ich swappiness auf allen meinen Rechnern auf 0 gesetzt, auch auf Rechnern, die nur Festplatten haben.)

Sie können überprüfen, wie viel Schreibzugriff Ihre SSD im Laufe ihres Lebens erlitten hat. Suchen Sie smartctlnach der Zeile mit Total_LBAs_Written. Dies zeigt Ihnen, wie viel 512-Bit-Sektoren auf die SSD geschrieben wurden. (Ja, ich weiß, dass die SSDs physisch 4K-Blöcke haben, nicht 512b, aber SMART sagt immer noch: Sector Size: 512 bytes logical/physicalund mit 512 Blöcken erhalte ich Ergebnisse, die mit der tune2fs -lLifetime- Schreibausgabe vergleichbar sind .) Also multiplizieren Sie diese Zahl mit 512 und Sie erhalten die Schreibvorgänge in Byte , oder kurz:

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

wird in GiBs für / dev / sda ausgedruckt. (Ändern Sie einfach den Gerätenamen in den Namen Ihrer SSD.) 800 GB schreiben in etwas mehr als einem Jahr, das bedeutet, dass nur 7 Schreibzyklen vom 3000 verwendet werden.

Falkner
quelle
Mit einem Dateisystem kann man TRIMMEN, um die Schreibverstärkung zu reduzieren. Gibt es ein Äquivalent für eine SWAP-Partition?
Bryce
Diese Antwort scheint anzunehmen, dass "swappiness" von 0 bis 100 reicht, wobei 0 kein Swap bedeutet (und 100 kein RAM?). Eine andere Antwort geht jedoch auf den swappinessWert näher ein und gibt an, dass die Zahl im Bereich von 0 bis 200 liegt und ein relatives Gewicht für verschiedene Arten des Austauschs darstellt.
Palswim
7

Das ganze Gerede über die Abnutzung von SSDs ist "Rätselraten". Ich hatte die gleichen Gefühle, fing aber an, sie kommerziell zu nutzen. Ich habe einen der schnellsten Orakelhaufen an der Ostküste. Vor 3 Jahren haben wir SSDs für unser gesamtes Speicher- UND temporäres Dateisystem eingeführt. Wir schreiben Milliarden von Operationen pro Tag auf die SSDs. Nach 3 Jahren haben wir immer noch nicht annähernd 10% Burnout. Wenn ich das im Handel tun kann, werden sie nie tragen in einer Wohnsituation aus. Also - ich habe eine SSD-Lösung speziell für Swap Space auf meiner Linux-Workstation und BAM implementiert !!!

Ihr Kilometerstand kann variieren, aber SSD ist in jeder Hinsicht der richtige Weg.

Dave

TekOps
quelle
Für Server bestimmte SSDs können mehr Schreibvorgänge ausführen als die für Verbraucher bestimmten (billigeren).
Jarno
1
Verstanden, aber ich habe Consumer-SSDs in Workstations installiert, die rund um die Uhr im gesamten Unternehmen bereitgestellt werden, und wir sichern alle paar Tage die Deltas, hatten jedoch innerhalb von zwei Jahren keinen einzigen Ausfall. Denken Sie daran, dass die MTBF für einen physischen Spinnteller 3 Jahre beträgt und nach meiner Erfahrung im Verkauf / Service von Systemen über 25 Jahre ziemlich genau ist. SSDs übertreffen alle anderen Optionen, ob kommerziell oder für Endverbraucher.
TekOps
3

Ja . Sie müssen die Austauschbarkeit ändern, um die Lebensdauer der SSD zu verlängern.

Mit Swappiness können Sie steuern, wie viel Auslagerungsdatei verwendet wird. Swappiness-Werte können von 0 auf 100 geändert werden. Je höher die Swappiness-Werte, desto mehr versucht der Kernel, den Swap Space zu nutzen, desto niedriger die Swappiness-Werte, desto weniger oder gar keinen Swap Space, je nach unserer Einstellung.

Der voreingestellte Swap-Wert von ist 60. Wenn Sie über ausreichend RAM verfügen, sollten Sie den Swap-Bereich vermeiden, der auf Ihre SSD, aber auf eine Festplatte schreibt und liest. Versuchen Sie bei Systemen mit 4 GB oder mehr RAM, die Verwendung von Swap zu reduzieren, indem Sie die Swap-Einstellungen auf 10 oder sogar 0 ändern, wobei sich die Swap-Datei auf einer Festplatte befindet.

Das Ausführen eines Swap Space ist sehr festplattenintensiv und für eine SSD sogar schlecht. Eine SSD kann nur so viele Schreibvorgänge ausführen, bis sie fehlerhaft wird und Sie gezwungen sind, ein anderes Laufwerk zu kaufen. Verschieben Sie Ihren Auslagerungsspeicher, wenn dies überhaupt möglich ist, auf ein sekundäres, sich drehendes Laufwerk… weg von der SSD.

Ein Solid State Drive nutzt sich durch Schreibvorgänge relativ schnell ab. Besonders die ältesten SSD-Generationen waren in dieser Hinsicht anfällig, aber in geringerem Maße ist dies bei den neueren Generationen immer noch der Fall.

Sie können entweder eine neue Partition auf einer neuen Festplatte erstellen oder stattdessen einfach eine Auslagerungsdatei erstellen. Das Erstellen einer neuen Partition führt fast immer zu einer viel besseren Leistung.

Wenn Sie kein alternatives Laufwerk zum Wechseln haben, können Sie eine Einstellung ändern, die den Austausch nur dann aktiviert, wenn Ihr physischer RAM zu 100% voll ist. Dadurch wird die Auslastung Ihrer Auslagerungsdatei verringert und Ihre SSD unterstützt. Drücken Sie einfach Ctrl+ Alt+ Tauf Ihrer Tastatur, um das Terminal zu öffnen. Führen Sie beim Öffnen die folgenden Befehle aus:

echo 0 > /proc/sys/vm/swappiness

SSD-Verschleiß hat mit Schreibzyklen zu tun

Ein Solid State Drive nutzt sich durch Schreibvorgänge relativ schnell ab. Besonders die ältesten SSD-Generationen waren in dieser Hinsicht anfällig, aber in geringerem Maße ist dies bei den neueren Generationen immer noch der Fall.

Verwenden Sie Trim

TRIM ist ein Vorteil, den Sie mit SSDs nutzen. Es wird in einer Software ausgeführt und kommuniziert mit dem SSD-Controller. Dabei wird angegeben, welche "Blöcke" vom Dateisystem nicht mehr benötigt werden und sicher gelöscht und überschrieben werden können. Dies führt nicht wirklich zu einer Verbesserung der Leistung, sondern verlängert die Lebensdauer Ihrer SSD.

Quellen: Linux SSD Tweaks & How-to zur Optimierung Ihrer SSD

Mitch
quelle
Ich würde gerne wissen was falsch ist Der OP fragte, ob er seine Swap-Fähigkeit ändern müsse, um die Lebensdauer der SSD zu verlängern, und die Antwort lautete: Ja, er muss die Swap-Fähigkeit ändern.
Mitch
Ich verstehe, dass die neuesten Versionen von Ubuntu automatisch TRIM für SSDs verwenden.
Paddy Landau
Das neueste Ubuntu verwendet TRIM nur für bestimmte Modelle von SSDs. @PaddyLandau
Bryce
2

Stimmt es, dass das Setzen von swappiness auf Null die Lebensdauer meiner SSD verlängert?

Dies würde dazu führen, dass Linux Speicherblöcke seltener in die Swap-Partition verschiebt. Beim Schreiben in den Swap werden normalerweise Schreibzyklen verwendet, wenn sich der Swap auf der SSD befindet. Denken Sie daran, dass der Swap nur verwendet wird, wenn er benötigt wird, und wenn Sie über genügend Arbeitsspeicher verfügen, ist er möglicherweise besser geeignet (es sei denn, Sie möchten einen Ruhezustand, aber das ist ein anderes Problem).

Die Auswirkungen dieser Aktionen können variieren, aber wenn Sie nur einige Schreibzyklen auf der SSD speichern, ist dies falsch. Moderne SSDs (etwa ab 2012) weisen eine Vielzahl von Schreibzyklen auf, und die Leistung Ihrer Anwendungen kann sich verringern, wenn Sie fast den gesamten Arbeitsspeicher verbrauchen. Bei der Installation von Programmen werden mehr Schreibzyklen verwendet als bei der fälligen Auslagerung. Denken Sie auch hier daran, dass Swap nur verwendet wird, wenn dies standardmäßig erforderlich ist.

Wenn Sie sich Sorgen über die für den Austausch verwendeten SSD-Schreibzyklen machen, können Sie den Austausch ganz entfernen / deaktivieren, wenn Sie über genügend Arbeitsspeicher verfügen, und nur einen temporären Austausch auf einer Festplatte aktivieren, anstatt die Austauschbarkeit zu beeinträchtigen. Das wäre der beste Weg.

Braiam
quelle
0

Ich würde Ihnen dringend empfehlen, die Austauschbarkeitseinstellung auf einen niedrigeren Wert zu setzen. Der beste Wert ist "0", wenn Sie über genügend Arbeitsspeicher / RAM für Ihr System verfügen (4 GB RAM oder mehr). Obwohl swappiness bei 10 mit hohem RAM-System, sehe ich kaum Ubuntu etwas auf Swap-Partition setzen, da meistens schon alles auf RAM sind.

Ich habe ein bisschen Google-Suche und ich fand diese Seite http://namhuy.net/1563/how-to-tweak-and-optimize-ssd-for-ubuntu-linux-mint.html

könnte Ihnen helfen, die SSD für Ihr Ubuntu-System zu optimieren und effizienter zu betreiben und Ihre SSD länger am Leben zu halten

Damon Phillips
quelle
0

Das Ändern der Austauschbarkeit hat möglicherweise keine wirklichen Auswirkungen. Wir haben viel damit gespielt, in Systemen, in denen der Arbeitsspeicher knapp ist, und wir möchten so viel wie möglich auf die SSD übertragen, und es hat tatsächlich nur geringe Auswirkungen darauf, dass die Elemente im Arbeitsspeicher verbleiben (was bedeutet, dass sie benötigt werden). Dies kann ein strittiger Punkt sein.

TekOps
quelle
0

Ich mochte die Idee, die smartctlAusgabe zu überprüfen , mein Code ist jedoch etwas kompakter. Ich habe nie verstanden, warum die Leute einfach nicht wissen, dass awkdas so istgrep Fähigkeit darin eingebaut ist.

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

Obwohl dies der Code ist, den ich benutze:

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; }'
blake private_last_name
quelle