Ubuntu möchte TRIM für SSDs standardmäßig in Ubuntu 14.04 aktivieren. Mit anderen Worten, Ubuntu verwendet TRIM noch nicht, sodass Ihre SSD mit der Zeit langsamer wird. Aber warum verwendet Ubuntu TRIM nicht bereits?
Diese Nachricht wird wahrscheinlich viele Leute überraschen, die davon ausgegangen sind, dass Ubuntu und andere Linux-Distributionen bereits TRIM verwenden. TRIM verhindert, dass SSDs mit der Zeit langsamer werden, und ist ein notwendiger Bestandteil der SSD-Wartung.
Warum TRIM wichtig ist
Wir haben abgedeckt warum TRIM wichtig ist Vor. Wenn Sie eine Datei auf einer alten magnetischen Festplatte löschen, markiert der Computer diese Datei einfach als gelöscht. Die Daten der Datei bleiben auf der Festplatte hängen - das ist warum gelöschte Dateien wiederhergestellt werden können . Der Computer überschreibt schließlich die gelöschten Dateien, wenn er ihre Sektoren mit neuen Daten überschreibt.
Solid-State-Laufwerke (SSDs) funktionieren anders . Wenn Sie eine Datei auf eine SSD schreiben, muss der Computer zuerst alle Daten in den Sektoren löschen, in die er die Daten schreibt. Es kann nicht nur die Sektoren in einem Vorgang „überschreiben“ - es muss sie zuerst löschen und dann in die leeren Sektoren schreiben.
Dies bedeutet, dass eine SSD mit der Zeit langsamer wird. Das Schreiben in die Sektoren der SSD erfolgt beim ersten Mal schnell. Nachdem Sie einige Dateien gelöscht und erneut versucht haben, darauf zu schreiben, dauert es länger. Dies ist ein wesentlicher Grund dafür, dass sich Googles ursprüngliches Nexus 7 im Laufe der Zeit so stark verlangsamt hat. Google hat dies durch die Implementierung von TRIM in Android 4.3 behoben. (Android verwendet auch den Linux-Kernel.)
Wenn TRIM aktiviert ist, teilt das Betriebssystem der SSD jedes Mal mit, wenn eine Datei gelöscht wird. Das Laufwerk kann dann die Sektoren löschen, die den Inhalt der Datei enthalten, sodass das Schreiben in die Sektoren in Zukunft schnell erfolgen wird.
Mit anderen Worten, wenn Sie TRIM nicht verwenden, wird Ihre SSD mit der Zeit langsamer. Aus diesem Grund verwenden moderne Betriebssysteme wie Windows 7+, Mac OS X 10.6.8+ und Android 4.3+ TRIM. TRIM wurde bereits im Dezember 2008 unter Linux implementiert, aber Ubuntu verwendet es nicht standardmäßig.
VERBUNDEN: Was ist ein Solid State Drive (SSD) und brauche ich eines?
Warum wird Ubuntu nicht standardmäßig TRIM?
Der wahre Grund, warum Ubuntu standardmäßig keine TRIM-SSDs verwendet, liegt darin, dass die Implementierung von TRIM durch den Linux-Kernel langsam ist und bei normaler Verwendung zu einer schlechten Leistung führt.
Unter Windows 7 und 8 sendet Windows jedes Mal einen TRIM-Befehl, wenn eine Datei gelöscht wird, und weist das Laufwerk an, die Bits der Datei sofort zu löschen. Linux unterstützt dies, wenn Dateisysteme mit der Option "Verwerfen" bereitgestellt werden. Ubuntu - und andere Distributionen - tun dies jedoch aus Leistungsgründen nicht standardmäßig.
Das OpenSUSE-Wiki enthält einige detaillierte Informationen von Entwicklern, die mit dem Linux-Kernel besser vertraut sind als wir. Es ist etwas veraltet, aber wahrscheinlich immer noch wahr, wenn es um Leistung geht:
„Die Kernel-Implementierung von Echtzeit-Trim in 11.2, 11.3 und 11.4 ist nicht optimiert. Die Spezifikation. fordert Trimmen, das eine vektorisierte Liste von Trimmbereichen unterstützt, aber ab Kernel 3.0 wird Trimmen nur vom Kernel mit einem einzigen Verwerfungs- / Trimmbereich aufgerufen, und bei aktuellen SSDs von Mitte 2011 hat sich gezeigt, dass dies zu einer Leistungsverschlechterung anstelle einer Leistungssteigerung führt. Es gibt nur wenige Gründe, die Echtzeit-Discard-Unterstützung für Kernel mit Kerneln vor 3.1 zu verwenden. Es ist nicht bekannt, wann die Funktion zum Verwerfen von Kerneln optimiert wird, um mit SSDs der aktuellen Generation vorteilhaft zu funktionieren. “ [ Quelle ]
Mit anderen Worten, der Linux-Kernel verarbeitet solche TRIM-Befehle in Echtzeit langsam und nicht optimiert. Wenn Sie TRIM ähnlich wie Windows aktivieren, dh die Option "Verwerfen" verwenden, wird das System tatsächlich langsamer, als wenn TRIM überhaupt nicht verwendet würde. Ubuntu und andere Linux-Distributionen aktivieren "Verwerfen" standardmäßig nicht für Ihre Dateisysteme, und Sie sollten dies auch nicht tun.
Es geht auch anders
Da der Echtzeit-TRIM-Vorgang zum Verwerfen des Linux-Kernels nicht gut funktioniert, verwenden die meisten Linux-Distributionen - einschließlich Ubuntu - TRIM nicht automatisch. Android hat TRIM auch erst mit Android 4.3 verwendet.
Es gibt aber auch eine andere Möglichkeit, TRIM zu verwenden. Anstatt bei jedem Löschen einer Datei einfach den Befehl TRIM auszugeben, kann die Funktion FITRIM verwendet werden. Dies geschieht über den Befehl fstrim. Im Wesentlichen analysiert der Befehl fstrim das Dateisystem und informiert das Laufwerk darüber, welche Blöcke nicht mehr benötigt werden, damit das Laufwerk sie verwerfen kann. Dadurch wird TRIM von einer Echtzeitoperation zu einer geplanten Aufgabe. Mit anderen Worten, fstrim kann TRIM als Cron-Job ausführen. Es gibt keinen Grund, dies nicht zu tun. Es wird nichts verlangsamen. Es ist nur eine weitere Hausputzaufgabe, die das System nach einem Zeitplan ausführen muss.
VERBUNDEN: Warum ist mein Nexus 7 so langsam? 8 Möglichkeiten, es wieder zu beschleunigen
Dies ist der Ansatz, den Google mit Android 4.3 gewählt hat. Android führt einfach gelegentlich eine fstrim-Aufgabe aus, um das Dateisystem zu TRIMMEN und zu beheben das Problem, das all diese ursprünglichen Nexus 7s verlangsamte .
Ubuntu versucht auch, TRIM automatisch zu aktivieren, indem das System regelmäßig fstrim ausführt. Dies wird hoffentlich Teil von Ubuntu 14.04 sein, damit Ubuntu-Benutzer nicht gezwungen sind, sich mit Leistungseinbußen bei SSDs zu befassen oder fstrim selbst auszuführen.
So aktivieren Sie TRIM
Es wird nicht empfohlen, Ihre Dateisysteme mit dem Vorgang "Verwerfen" zu mounten, da dies bei normaler Verwendung wahrscheinlich zu einer langsameren Leistung führt. Sie können TRIM jedoch selbst verwenden, indem Sie gelegentlich den Befehl fstrim ausführen oder einen eigenen Cronjob erstellen, der fstrim nach einem Zeitplan ausführt.
Um Ihre SSD unter Ubuntu zu trimmen, öffnen Sie einfach ein Terminal und führen Sie den folgenden Befehl aus:
sudo fstream -v /
Sie können den obigen Befehl gelegentlich ausführen, um Leistungseinbußen auf SSDs zu vermeiden. Wie oft Sie es ausführen müssen, hängt davon ab, wie oft Dateien von Ihrer SSD gelöscht werden. Wenn Sie versuchen, den Befehl mit einem Laufwerk auszuführen, das TRIM nicht unterstützt, wird ein Fehler angezeigt.
Wenn Sie TRIM regelmäßig ausführen möchten, können Sie einfach einen Cronjob erstellen, der den Befehl fstrim für Sie ausführt. Hier erfahren Sie, wie Sie einen Barebone-Cron-Job erstellen, der dies automatisch erledigt.
Führen Sie zum Öffnen zunächst den folgenden Befehl aus der Nano-Texteditor mit Root-Berechtigungen:
Sudonna / Etc / c Ron. Täglich / erste Felge
Geben Sie den folgenden Code in die Datei ein:
#!/bin/sh
fstrim /
Speichern Sie die Datei, indem Sie Strg + O drücken und zur Bestätigung die Eingabetaste drücken. Drücken Sie Strg + X, um nano nach dem Speichern der Datei zu schließen.
Führen Sie zuletzt den folgenden Befehl aus, um das Skript ausführbar zu machen:
sudo chmod + x /etc/cron.daily/fstrim
Ubuntu wird fstrim jetzt nach einem Zeitplan ausführen, genau wie andere Systemwartungsaufgaben.
Beachten Sie, dass TRIM nur auf modernen Dateisystemen unterstützt wird. Sie benötigen also etwas wie ext4 und nicht ext3 oder ext2. Wenn Sie nicht wissen, welches Dateisystem Sie verwenden, machen Sie sich keine Sorgen - ext4 ist standardmäßig ausgewählt.
Ein Großteil dieser Ratschläge gilt auch für andere Linux-Distributionen. Während Linux vor langer Zeit die TRIM-Unterstützung im Kernel implementiert hat, scheint die TRIM-Unterstützung für typische Benutzer in Linux-Distributionen standardmäßig nie aktiviert worden zu sein.
Bildnachweis: Mace Ojala auf Flickr (beschnitten)