Aller au contenu principal
Sujet résolu
Ce sujet a été marqué résolu et ne nécessite aucune autre attention.
Sujet: SSD sous opensuse (discard/noatime) (Lu 8453 fois) sujet précédent - sujet suivant

SSD sous opensuse (discard/noatime)

Bonjour,

En regardant les options de montage de mes partitions de ssd, je me rends compte qu'il n'y a ni noatime, ni discard sur les partitions.
J'ai rajouté noatime car c'est une option très utile pour limiter l'usure des ssd, mais pour discard y a il une autre méthode de fstrim en place chez openSuse?

j'ai cherché rapidement pour l'instant je n'ai rien trouvé de catégorique.


EDIT: j'aurais du préciser mes partitions:
/boot ==> EXT4
LVM Encrypt
      / ==> EXT4
      /swap

DAns une telle configuration faut-il activer discard ou pas? ET comment s'effectue le trim du coup?

Edit2, il semblerait que ça soit fait par timer:
systemctl status fstrim.timer
● fstrim.timer - Discard unused blocks once a week
   Loaded: loaded (/usr/lib/systemd/system/fstrim.timer; enabled; vendor preset: enabled)
   Active: active (waiting) since Wed 2021-04-21 08:54:05 CEST; 1h 44min ago
  Trigger: Mon 2021-04-26 00:00:00 CEST; 4 days left
     Docs: man:fstrim

Mais si je fais un sudo fstrim -a ça ne semble pas vouloir du coup comment être sûr que le trim est bien fait?


Re : SSD sous opensuse (discard/noatime)

Répondre #1
Salut,

Dans la doc officielle : https://en.opensuse.org/SDB:SSD_discard_%28trim%29_support

Citer
TRIM is the actual ATA-8 command that is sent to a SSD to cause a sector range or set of sector ranges to be discarded. As such it should only apply to ATA devices, but is often used generically. Given the prevalence of ATA devices, trim is often the most used of these terms.

Mais c'est déjà largement au-delà de mes compétences ! :D


à plus,
oh!rocks

Re : SSD sous opensuse (discard/noatime)

Répondre #2
Ici `fstrim.timer` fait bien ses devoirs le lundi matin ; il prend deux minutes environ.

Éteins ton ordinateur dimanche soir et allume-le le lendemain.
Le moniteur du système devrait indiquer que fstrim est en train d'écarter tous les blocs inutilisés.

Re : SSD sous opensuse (discard/noatime)

Répondre #3
Hello ;=)
sauf erreur tu peut utiliser une commande voir le retour , fstrim --all devrait retourner 0 si tout se passe bien.

 selon man fstrim :
RETURN CODES
       0      success

       1      failure

       32     all failed

       64     some filesystem discards have succeeded, some failed

       The command fstrim --all returns 0 (all succeeded), 32 (all failed) or 64 (some failed, some succeeded).

Re : SSD sous opensuse (discard/noatime)

Répondre #4
Il ne retourne rien et c'est immédiat.
Du coup aucune idée de s'il fait quelque chose ou pas.

Mais echo $?
0
 donc je peux en déduire que "tout va bien" mais sans garantie qu'il fait son taf quoi. :/



Re : SSD sous opensuse (discard/noatime)

Répondre #5
Pour info l'usure des SSD c'est trés trés lent.
Moi j'ai arrêté de mettre des options pour les SSD.
La commande smarctl permet de savoir on en est sur sa durée de vie.
Et franchement c'est long a usé !! Pour mon plus "usé" avec 17To d’écrit en 4 ans je suis a 1% d'usure.
Tout les autres sont 0%.




Re : SSD sous opensuse (discard/noatime)

Répondre #6
Je sais que c'est long mais bon j'aime toujours l'optimisation maximale. :p

Re : SSD sous opensuse (discard/noatime)

Répondre #7
pas swap pour ssd !!! svp a lire

pourquoi le swap ? faire pour vieux hdd

nvme et ssd n'a pas besoins du swap !

svp
rodrigue

Re : SSD sous opensuse (discard/noatime)

Répondre #8
@rodrigue7800
Bonjour.
La présence d'un swap n'a aucun rapport avec le fait que ça soit un ssd.
On peut parfaitement mettre un swap sur un ssd, et il est même toujours conseillé d'en conserver un.

La légende de l'absence de swap sur un ssd vient de l'usure du ssd à cause du swap.
Mais si on a suffisamment de mémoire vive, le swap est très peu utilisé.
Certains logiciels nécessitent un swap, et ça évite aussi de se retrouver totalement planté si jamais la mémoire vive se remplis.

D'ailleurs pour l'hybernation "mixte" (veille sur disque dur) il est nécessaire d'avoir un swap (bon en vrais je n'utilise pas cette option, et avec les ssd ce genre d'option perd son intérêt).
;)

Re : SSD sous opensuse (discard/noatime)

Répondre #9
okay burns2 cas comme ca je t'avertai :) 8)

Re : SSD sous opensuse (discard/noatime)

Répondre #10
Hello.

Au final j'ai un doute sur le fait que le trim se fasse bien sur les partitions LVM.
Quand je fais:
sudo fstrim -av
/boot/efi : 1017,2 MiB (1066577920 octets) réduits sur /dev/nvme0n1p1
/boot : 0 B (0 octets) réduits sur /dev/nvme0n1p2

Aucune mention des volume LVM.
Comment être sûr que c'est bien effectué dessus?

EDIT: ok j'ai trouvé il faut modifier:
/etc/crypttab et rajouter discard

EDIT2: bon ben non ça ne change rien.

EDIT3: sudo mkinitrd voir si ça change quelque chose...
Aucun changement... Je ne pige pas pourquoi il ne prend pas en compte l'option. :/

EDIT4: ok dans les logs de boot:
[   11.194884] systemd[1]: /run/systemd/generator/systemd-cryptsetup@cr_nvme\x2dSanDisk_Extreme_Pro_500GB_XXXXX\x2dpart3.service:14: RequiresMountsFor= path is not absolute, ignoring: discard

Re : SSD sous opensuse (discard/noatime)

Répondre #11
:hello:

Ok j'ai trouvé, il faut rajouter none discard et pas juste discard dans /etc/crypttab.
Dans le doute j'ai refais sudo mkinitrd.

Et après reboot:
sudo fstrim -av
[sudo] Mot de passe de root :
/boot/efi : 1017,2 MiB (1066577920 octets) réduits sur /dev/nvme0n1p1
/boot : 1,8 GiB (1921732608 octets) réduits sur /dev/nvme0n1p2
/ : 219,1 GiB (235283996672 octets) réduits sur /dev/mapper/LVG_OPENSUSE-LVM_OS
Donc c'est bon il me fait bien du discard sur la partition lvm. :)

Re : SSD sous opensuse (discard/noatime)

Répondre #12
Citer
La commande smarctl permet de savoir on en est sur sa durée de vie.
dis, moi j'ai:
-bash: smarctl : commande introuvable
Pourquoi ???

Re : SSD sous opensuse (discard/noatime)

Répondre #13
@moniroje

Parce que c'est:
sudo smartctl



Exemple:
sudo smartctl -a /dev/sda

Re : SSD sous opensuse (discard/noatime)

Répondre #14
smarctl -x /dev/xxx

Donne plus d'information et notamment l'estimation de l'usure d'un SSD.