Lohnt es sich, Ext4 mit Noatime zu stimmen?


77

In früheren Versionen von Ubuntu (unter Verwendung des Ext3-Dateisystems) habe ich es für eine bessere Leistung mit auffälligen Ergebnissen optimiert, indem ich den noatimeParameter in gesetzt habe /etc/fstab.

Lohnt es sich immer noch, dies mit dem Ext4-Dateisystem zu tun, das jetzt standardmäßig in Ubuntu verwendet wird? Wenn ja, hat sich das Verfahren in irgendeiner Weise geändert?

Ein Beispiel für diese Abstimmung finden Sie hier.

Antworten:


66

Ist unter Ubuntu 10.04 relatimeTeil der Standard-Mount-Optionen, sofern sie nicht in überschrieben werden /etc/fstab. Die vorherigen Veröffentlichungen hatten relatimeexplizit in /etc/fstab. relatimebietet die gleichen Vorteile hinsichtlich der Geschwindigkeit (und des Erhalts des Flash-Schreibzyklus) noatime, ohne dass altmodische E-Mail-Benachrichtiger Probleme haben.

Der Artikel, den Sie zitieren, empfiehlt data=writeback. Ubuntu ist standardmäßig auf data=ordered. Die Einstellung von Ubuntu ist langsamer, wenn die Festplatte stark ausgelastet ist. Bei einem Absturz oder Stromausfall ist das Risiko eines Datenverlusts jedoch erheblich geringer. Daher würde ich nicht empfehlen, vom Ubuntu-Standard zu wechseln.

Durch Ändern commit=5von commit=100wird das Zeitfenster vergrößert, in dem Daten im Falle eines Absturzes verloren gehen, was in den meisten Fällen kaum von Vorteil ist.

Zusammenfassung: Lassen Sie die Einstellungen unverändert, sie wurden aus einem bestimmten Grund ausgewählt.


HINZUGEFÜGT: Es gibt andere Dinge jenseits der Mount-Optionen, die einen Unterschied machen können. Der Wechsel von ext3zu ext4ist selbst oft eine sichtbare Verbesserung. Hier sind ein paar weitere Tipps für Laptopbenutzer.

  • Wenn Sie eine langsame SSD haben, überprüfen Sie diesen Thread bei SU . Die wichtigen Tipps sind tmpfsfür /tmpund für den Browser-Cache (und möglicherweise für den Verlauf) zu verwenden.

  • Wenn Sie eine Festplatte haben und diese längere Zeit nicht mehr drehen soll , installieren Sie noflushd , wodurch die Festplatte heruntergefahren werden kann, indem alle Schreibvorgänge verzögert werden, bis der Arbeitsspeicher voll ist. (Natürlich können Lesevorgänge dazu führen, dass sich cat /files/I/m/likely/to/need >/dev/nulldie Festplatte dreht. Sie sollten sich angewöhnen, zu laufen, bevor sich die Festplatte dreht.) Damit noflushd effektiv ist, deaktivieren Sie alle Swap-Vorgänge und hängen Sie Ihre Dateisysteme mit so etwas wie ein commit=3600.

    Wenn Sie noflushd effektiv verwenden, können Ihre Daten längere Zeit nicht auf die Festplatte geschrieben werden. Dies ist ein Risiko, das gegen den Vorteil abgewogen werden muss, dass für eine Weile keine Geräusche oder Wärme von der Festplatte ausgehen. Verwenden Sie noflushd nicht, wenn Sie mit diesem Risiko nicht vertraut sind.


Ich verstehe die Gefahr von solchen Optimierungen, einige der Schritte in diesem Tutorial, mit denen ich nicht einverstanden bin, wie comit=100Sie auch erwähnt haben. Ich bin jedoch bereit, ein moderates Risiko einzugehen, um die Leistung zu steigern, da ich einen Laptop und (fast) regelmäßig Backups verwende.
Decio Lira

2
@Decio: noatimevs atimekann einen sichtbaren Unterschied machen, aber ich wäre überrascht, dass noatimevs relatimedies tun würde. Ich habe meiner Antwort einige Laptop-spezifische Tipps hinzugefügt. Ich habe persönlich sichtbare Verbesserungen aus diesen Tipps beobachtet. Noflushd birgt ein Risiko, das ich eingehen wollte, als ich es benutzte.
Gilles

Ja, ich habe nur über die Unterschiede zwischen Noatime und Relatime gegoogelt, und Sie haben Recht. relatime (das jetzt in ubuntu voreingestellt ist) ist ein guter kompromiss zwischen atime und noatime.
Decio Lira

Ich habe darüber gelesen data=writeback- es schreibt einfach Dateidaten und Metadaten in zufälliger Reihenfolge (im Gegensatz dazu, ordereddass immer Metadaten nach den Daten geschrieben werden) . Dies bedeutet, dass Sie bei einem Stromausfall Ihre Datei mit einer Länge von α Bytes finden können, wobei tatsächlich 0 Bytes geschrieben wurden. Naja… aber das ist absolut natürlich! Ich habe immer gedacht, dass das Dateisystem zuerst die Dateigröße erhöht und dann die Daten schreibt. Wenn Sie feststellen möchten, dass dies in umgekehrter Reihenfolge geschehen kann, müssen Sie dieses Muster umwandeln, um die Zwischenspeicherung im RAM zu erhöhen. Ich bin nicht überzeugt, warum ich es nicht verwenden soll, writebackwenn es zur Verbesserung der Latenz beitragen kann.
Hi-Angel

17

Ja, ab noatimeUbuntu 12.10 kann die Verwendung dennoch sinnvoll sein

relatimeist eine Standard-Mount-Option. Und relatimeist viel besser als atime. Ersteres erfordert ein Schreiben für das erste Lesen nach einem Schreiben, letzteres erfordert ein Schreiben für jedes Lesen. Aber mit noatimejedem Lesevorgang wird frei geschrieben.

Dies bedeutet im Grunde, dass sich die Anzahl der Schreibvorgänge auf eine Festplatte für die relatimeBereitstellung nahezu verdoppelt, während die Anzahl der Schreibvorgänge auf eine Festplatte bei noatimegleicher Qualität liegt. Partitionen auf Flash-Speichergeräten sind ein ernstes Problem.

Die ausführliche Diskussion der Linux-Kernel-Community finden Sie unter http://kerneltrap.org/node/14148


3
Der Faktor zwei ist im Allgemeinen nicht korrekt. Theoretisch liegt der Faktor zwischen 1 (unendlich oft genutzte Datei) und 2 (unendlich selten genutzte Datei). Dies bedeutet, dass der wahre Faktor im Grunde genommen 1 ist, da die seltenen Faktoren nahe 2 im Durchschnitt nicht signifikant sind.
Patrick Häcker

1 ist für schreibgeschützte Dateien. 2 ist für alle anderen. Schreibgeschützte Dateien haben keinen Sinn, können jedoch von Zeit zu Zeit angezeigt werden. Also sollte meine ursprüngliche Schätzung relevant sein.
Yanychar

@yanychar: Dank zur Erläuterung relatimeNachteile und die gemeinsame Nutzung der KernelTrap Diskussion, aber sagen , „ es gibt keinen Punkt in schreibgeschützte Dateien “ ist Unsinn: alle /usrund /libsind schreibgeschützte Dateien. Tatsächlich ist der größte Teil des Baums, ohne /homeund /var, schreibgeschützt. Dateien /etcändern sich auch sehr selten.
MestreLion

2
@MestreLion: Ubuntu installiert Unmengen von Paketen. Die Pakete werden von Zeit zu Zeit aktualisiert. Wenn zwischen der Installation und dem Upgrade einer Datei keine Lesevorgänge stattfanden, war die Datei schreibgeschützt. Es gibt keine zusätzlichen Schreibvorgänge für die Datei im relatimeVergleich zu noatime. Für den Rest gibt es ein zusätzliches Schreiben, wenn die Datei gelesen wird.
Yanychar
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.