web-dev-qa-db-fra.com

Comment configurer la prise en charge TRIM pour les volumes logiques LVM?

Je suis en train de configurer un cahier à des fins de démonstration logicielle. La machine dispose d'un processeur Intel Core i7, de 8 Go de RAM, d'un SSD de 128 Go et exécute le bureau Ubuntu 12.04 LTS 64 bits. Dans l'état actuel des choses, le disque SSD est configuré pour avoir un seul groupe de volumes, avec/boot,/swap et/all dans leur volume logique respectif. Ils consomment collectivement 30 Go d'espace. Je prévois d'utiliser le reste des volumes logiques pour KVM invités, tous exécutant Ubuntu 12.04 Server.

Je voudrais m'assurer que le SSD est utilisé de manière optimale. Bien que sur ce site, il existe d'excellentes informations sur la configuration de la prise en charge TRIM pour les configurations de système de fichiers n'impliquant pas LVM, je n'ai pas trouvé de guide explicite concernant ma configuration planifiée.

J'ai trouvé cette page qui parle de l'ajout de issue_discards à /etc/lvm/lvm.conf. Mais dans ledit fichier sur ma machine, je n'ai pas trouvé le contenu cité. J'ai vérifié deux fois man lvm.conf(5), je n'ai vu aucune mention de cette option non plus.

Ainsi, je ne sais pas quoi faire. En outre, même si l’ajout de l’option est la bonne chose à faire, devrais-je, dans le /etc/fstab de ma machine, ajouter des options de montage telles que noatime etc?

Tous les conseils, indications et/ou conseils supplémentaires sont grandement appréciés.

8
Zack Perry

Pour les googleurs - l'option issue_discards n'est pas nécessaire pour que TRIM fonctionne lorsque on parle de supprimer des fichiers. Le seul effet est que vous modifiez votre LVM (par exemple, en réduisant ou en supprimant des volumes logiques). Mais les utilisateurs réguliers ne le font généralement pas du tout.

Ce paramètre est recommandé pour ceux qui, par exemple, provisionnent des machines virtuelles sur des groupes de volumes LVM et les suppriment souvent. Sinon, vous n'en avez pas besoin. Pour plus d'informations, reportez-vous à la page de manuel lvm.conf. Extrait du Guide d'administration RHEL 6.2 LVM:

La version Red Hat Enterprise Linux 6.2 prend en charge le paramètre issue_discards dans le fichier de configuration lvm.conf. Lorsque ce paramètre est défini, LVM émet des exclusions sur les volumes physiques sous-jacents d'un volume logique lorsque ce dernier n'utilise plus l'espace disponible sur les volumes physiques. Pour plus d'informations sur ce paramètre, reportez-vous à la documentation en ligne du fichier /etc/lvm/lvm.conf, également décrite à l'annexe B, Fichiers de configuration LVM.

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Logical_Volume_Manager_Administration/LVM_overview.html

J'ai écrit un blog à ce sujet: http://lukas.zapletalovi.com/2013/11/how-to-trim-your-ssd-in-Fedora-19.html

9
lzap

J'ai rétroporté LVM 2.02.95 vers Ubuntu 12.04 et je l'ai mis dans un ppa. Pour l'utiliser, lancez les commandes suivantes:

Sudo apt-add-repository ppa:kalakris/lvm
Sudo apt-get update
Sudo apt-get install lvm2

Après cette mise à niveau, la commande issue_discards dans /etc/lvm/lvm.conf sera reconnue comme prévu.

3
kalakris

L'option issue_discards n'est actuellement pas prise en charge sur la version de LVM fournie avec 12.04.

À partir du Changelog LVM :

Version 2.02.85 - 29 avril 2011

Ajoutez le nouveau paramètre obtenir_device_list_from_udev au fichier lvm.conf.
Obtient par défaut la liste des périphériques d’udev si LVM2 est compilé avec le support udev.
Ajouter un test pour vgimportclone et l'interrogation de noms de fichiers avec des pv dupliqués.
Évitez d’utiliser la mémoire libérée lorsqu’on trouve une PV en double.
Ajoutez "devices/issue_discards" à lvm.conf.
...

Dans la version 12.04, la version LVM est 2.02.66 (la version 12.10 est livrée avec la version 2.02.95).

Définir cette option ne fait maintenant aucun mal, car elle est ignorée en silence.
Voir Red Hat Bugzilla 8202

2
H.-Dirk Schmitt