• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Mountoptionen von SSD in fstab

f.gruber

Hacker
Hallo,
ich habe kürzlich auf einem Notebook mit SSD Suse 15.3 installiert und sehe, dass in der Datei /etc/fstab nur die option defaults steht.

Ist es jetzt nicht mehr notwendig, die Option discard anzugeben?
Ich habe bisher bei SSD Geräten immer folgende Optionen verwendet: discard, noatime, nodiratime

Danke für Aufklärung.
 

susejunky

Moderator
Teammitglied
Hallo f.gruber,
f.gruber schrieb:
... ich habe kürzlich auf einem Notebook mit SSD Suse 15.3 installiert und sehe, dass in der Datei /etc/fstab nur die option defaults steht.

Ist es jetzt nicht mehr notwendig, die Option discard anzugeben?
welche Optionen sich hinter default verbergen ist u.a. abhängig vom Dateisystem (und Du hast leider nicht verraten, welche(s) Du verwendest); z.B.
Code:
> man ext4
...
       discard/nodiscard
              Controls  whether ext4 should issue discard/TRIM commands to the underlying block device when blocks are freed.  This is useful for SSD devices and sparse/thinly-provisioned LUNs, but it is off by default until sufficient testing has been done.
...
Bei meinem openSUSE Tumbleweed existiert ein systemd.timer der in regelmäßigen Abständen fstrim ausführt
Code:
> systemctl | grep timer
...
  fstrim.timer                                                                             loaded active waiting   Discard unused blocks once a week
...
>

Viele Grüße

susejunky
 
Nicht unbedingt @ susejunky

Einige "große" Distributionen haben mit discard nichts mehr am Hut.

https://manpages.ubuntu.com/manpages/bionic/de/man8/fstrim.8.html

Das mag bei Suse "im Moment" noch anders sein aber nicht mehr lange.

gruß
 

Christina

Moderator
Teammitglied
Bei openSUSE ist es auch nicht anders:
util-linux 2.36.2 — Leap 15.3
Manpage fstrim (Mai 2019)
Die häufige Ausführung von fstrim oder auch mount -o discard kann die Lebensdauer qualita-
tiv minderwertiger SSD-Geräte negativ beeinflussen. Eine für die meisten Arbeitsplatzrech-
ner und Server sinnvolle Zeitspanne ist einmal pro Woche.

Code:
systemctl list-timers

NEXT                        LEFT                LAST                        PASSED            UNIT                         ACTIVATES                     
…
Mon 2021-11-15 00:44:46 CET 3 days left         Mon 2021-11-08 10:38:12 CET 3 days ago        fstrim.timer                 fstrim.service

P.S. Ein kurzes Eintippen in die Suchfunktion hier im Forum ergibt, dass es diese Dienste fstrim.service und fstrim.timer schon seit openSUSE 13.2 gibt, also seit 4. November 2014.
 
OP
F

f.gruber

Hacker
Danke vielmals für die Hinweise.

Okay, ich habe mich mit dem Thema SSD unter Linux schon einige Jahre nicht mehr wirklich beschäftigt, was ich nun ein wenig nachgeholt habe.

Ich verwende als Dateisystem immer noch ext4. Ich konnte mich bisher nicht entschließen, auf btrfs umzusteigen. :irre:

Ich fasse also meine Erkenntnisse kurz zusammen:

Ein sogenanntes Online Discard über die Mount-Option discard in der /etc/fstab ist also definitiv bei Suse 15.3 nicht mehr nötig. Der Trim Befehl wird periodisch über einen systemd-timer ausgeführt, was aus der Ausgabe von
Code:
systemctl list-timers
ersichtlich ist.

Sind die Optionen noatime und nodiratime bei einer SSD noch angebracht?
 

Christina

Moderator
Teammitglied
f.gruber schrieb:
Sind die Optionen noatime und nodiratime bei einer SSD noch angebracht?
Woher hast du das alles eigentlich?

Ich habe gerade aus der Bücherei einen (Linux) Kofler von 2015 da.
In einer Tabelle mit verschiedenen Mountoptionen sind Deine gar nicht aufgelistet: gar nichts, was mit time zu tun hat.
 

josef-wien

Ultimate Guru
man fstrim schrieb:
Die häufige Ausführung von fstrim oder auch mount -o discard kann die Lebensdauer qualitativ minderwertiger SSD-Geräte negativ beeinflussen.
Das ist eine Behauptung ohne Nachweis.

discard teilt der SSD sofort mit, wenn ein logischer Sektor vom Dateisystem nicht mehr verwendet wird. fstrim ermittelt immer alle vom Dateisystem nicht mehr verwendeten logischen Sektoren und teilt jeden davon der SSD mit. discard kann bei viel beschäftigten Datenservern zu Verzögerungen der anderen Zugriffe führen (vor allem, wenn
Code:
grep queued /sys/class/ata_device/dev*/trim
"unqueued" ergibt). fstrim ist bei Datenservern sinnvollerweise zu einer Zeit durchzuführen, wo die übrige Belastung gering ist. Bei einem "normalen" PC ist die gewählte Variante Geschmackssache.

Der Kernel verwendet seit langer Zeit standardmäßig relatime, d. h. eine Änderung des Zeitpunkts eines Lesezugriffs wird nur dann vorgenommen, wenn der letzte derartige Zugriff eine bestimmte Zeit (standardmäßig sind es 24 Stunden) zurückliegt. Bei Datenservern ist diese Angabe insofern von Bedeutung, daß länger nicht verwendete Dateien gegebenenfalls auf ein langsameres Medium ausgelagert werden können. noatime gibt es noch viel länger, dadurch wird der Zeitpunkt eines Lesezugriffs nicht gespeichert. Die zusätzliche Angabe von nodiratime ist unnötig.



f.gruber schrieb:
Sind die Optionen noatime und nodiratime bei einer SSD noch angebracht?
Theoretisch ist alles gut, was unnötige Schreibzugriffe vermeidet. Praktisch wirst Du von dieser Verlängerung der Lebenszeit der SSD nichts haben.
 
OP
F

f.gruber

Hacker
Christina schrieb:
Kennst du den Unterschied zwischen "noatime" und "relatime"?
Etwas schwer zu verstehen für mich - leider.

Anscheinend wird durch die Verwendung der Option relatime die Anzahl unnötiger Festplattenzugriffe ja reduziert.
Ich schließe nun daraus, dass man auf noatime und nodiratime verzichten kann, wenn man relatime verwendet.

Also kann man die Mount-Option defaults verwenden, da sie ja relatime enthält.

Aber Schaden richtet man wohl auch keinen an, wenn man noatime und nodiratime stehen lässt :???:
Hier noch ein Link: https://stackpointer.io/unix/linux-io-performance-tuning-noatime-nodiratime-relatime/388/
 
OP
F

f.gruber

Hacker
josef-wien schrieb:
...
discard teilt der SSD sofort mit, wenn ein logischer Sektor vom Dateisystem nicht mehr verwendet wird. fstrim ermittelt immer alle vom Dateisystem nicht mehr verwendeten logischen Sektoren und teilt jeden davon der SSD mit.
...
Bei einem "normalen" PC ist die gewählte Variante Geschmackssache.

Bei Suse wird nun also über einen Systemd-timer fstrim periodisch ausgeführt. Daraus kann ich nun schließen, dass es nicht mehr sinnvoll ist, die Option discard in der /etc/fstab zu setzen.

Liege ich da richtig?
 

josef-wien

Ultimate Guru
Mit noatime (enthält nodiratime) wird relatime außer Kraft gesetzt. discard gemeinsam mit fstrim ist nutzlose Beschäftigung des PC, da fstrim jedes Dateisystem analyiert und dabei nichts zu Meldendes findet.
 

Christina

Moderator
Teammitglied
josef-wien schrieb:
f.gruber schrieb:
Sind die Optionen noatime und nodiratime bei einer SSD noch angebracht?
Theoretisch ist alles gut, was unnötige Schreibzugriffe vermeidet. Praktisch wirst Du von dieser Verlängerung der Lebenszeit der SSD nichts haben.

@f.gruber Schaue dir doch mal den "health status" deiner SSD an.
Code:
/usr/sbin/smartctl -a /dev/sd{x}
f.gruber schrieb:
Bei Suse wird nun also über einen Systemd-timer fstrim periodisch ausgeführt.
Schon seit 7 Jahren.
In seinem Linux-Buch (2015) spricht sich Michael Kofler gegen mount … -o discard und für wöchentliches fstrim aus.
f.gruber schrieb:
Aber Schaden richtet man wohl auch keinen an, wenn man noatime und nodiratime stehen lässt :???:
Hier noch ein Link: https://stackpointer.io/unix/linux-io-performance-tuning-noatime-nodiratime-relatime/388/
Die Antwort steht doch im verlinkten Artikel (25 Oct 2014):
It depends on the needs of the users and the applications or services being run on the system.
 
A

Anonymous

Gast
josef-wien schrieb:
Mit noatime (enthält nodiratime) wird relatime außer Kraft gesetzt. ....

Häh, Lötzinn, :roll:

Halbwahrheit !!

Linux speichert standardmässig die letzte Zugriffszeit einer Datei (atime). Wenn diese Informationen nicht gebraucht werden, können Partitionen mit der Option noatime, nodiratime bzw. relatime gemountet werden. Dies bringt einen kleinen Geschwindigkeitsschub und reduziert die Anzahl an Schreibzyklen (interessant z. B. für SSD). Nachteilig ist allerdings, dass einige speziellere Anwendungen die Dateizugriffszeiten zwingend benötigen. So verwendet der Text basierte E-Mail-Klient MUTT die Ordnerzugriffszeiten um Ordner auf neue E-mails zu prüfen und Programme welche selten benötigte Dateien auf sekundäre Festplatten verschieben würden nicht mehr richtig funktionieren (in den allermeisten Fällen handelt es sich jedoch um Spezialanwendungen und noatime stellt kein Problem dar).

https://wiki.archlinux.de/title/Noatime

etliche andere Beispiele die folgen können..
 

susejunky

Moderator
Teammitglied
montagne schrieb:
josef-wien schrieb:
Mit noatime (enthält nodiratime) wird relatime außer Kraft gesetzt. ....

Häh, Lötzinn, :roll:

Halbwahrheit !!
Zitat aus man mount (System: openSUSE Tumbleweed 20211107):
Code:
noatime
              aktualisiert  die  Inode-Zugriffszeiten  auf  diesem  Dateisystem  nicht  (zum  Beispiel  für schnelleren Zugriff auf die Nachrichtenwarteschlange zum Beschleunigen von
              News-Servern). Dies funktioniert für alle Inode-Typen (auch Verzeichnisse), es impliziert also nodiratime.

Viele Grüße

susejunky
 
A

Anonymous

Gast
Suchmaschine deiner Wahl.
Zu faul zum Linken nur dieser eine..

https://opensource.com/article/20/6/linux-noatime
 

Christina

Moderator
Teammitglied
montagne schrieb:
Linux speichert standardmässig die letzte Zugriffszeit einer Datei (atime). Wenn diese Informationen nicht gebraucht werden, können Partitionen mit der Option noatime, nodiratime bzw. relatime gemountet werden. Dies bringt einen kleinen Geschwindigkeitsschub und reduziert die Anzahl an Schreibzyklen (interessant z. B. für SSD).

montagne schrieb:
Häh, Lötzinn, :roll:

Halbwahrheit !!
… denn dieses Thema ist für HDDs (rotierende Magnetscheiben) mindestens genauso interessant.
 
Oben