Question Est-ce la peine d'accorder Ext4 avec noatime?


Avec les versions précédentes d’Ubuntu (utilisant le système de fichiers Ext3), je l’accordais pour obtenir de meilleures performances avec des résultats visibles en définissant la noatime paramètre dans /etc/fstab.

Est-ce que ça vaut toujours la peine de faire cela avec le système de fichiers Ext4, qui est maintenant par défaut dans Ubuntu? Si oui, la procédure a-t-elle changé de quelque manière?

Un exemple de ce réglage peut être trouvé ici. 


71
2017-08-12 22:16


origine




Réponses:


Sur Ubuntu 10.04, relatime fait partie des options de montage par défaut, sauf en cas de substitution dans /etc/fstab. Les versions précédentes avaient relatime explicitement dans /etc/fstab. relatime donne les mêmes avantages (et la conservation du cycle d'écriture flash) que noatime, sans causer de problèmes aux notifiants de messagerie démodés.

L'article que vous citez vous recommande data=writeback. Ubuntu par défaut à data=ordered. La configuration d'Ubuntu est plus lente en cas de charge de disque importante, mais comporte beaucoup moins de risques de perte de données en cas de panne ou de panne de courant. Je ne recommanderais donc pas de changer par défaut d'Ubuntu.

En changeant commit=5 à commit=100 augmente la fenêtre de temps pendant laquelle les données seront perdues en cas de plantage, dans l'intérêt de la plupart des cas.

Résumé: laissez les paramètres tels quels, ils ont été choisis pour une raison.


AJOUTÉE: Il y a d'autres choses que les options de montage qui peuvent faire la différence. Changer de ext3 à ext4 est lui-même souvent une amélioration visible. Voici quelques conseils supplémentaires pour les utilisateurs d'ordinateurs portables.

  • Si vous avez un SSD lent, consultez ce fil à SU. Les conseils importants sont à utiliser tmpfs pour /tmp et pour le cache du navigateur (et peut-être l'historique).

  • Si vous avez un disque dur et que vous voulez qu’il arrête de tourner pendant des durées prolongées, installez noflushd, ce qui permet au disque de ralentir en retardant toutes les écritures jusqu'à ce que la mémoire vive soit pleine. (Bien sûr, les lectures peuvent provoquer une rotation du disque, vous aurez l’habitude de cat /files/I/m/likely/to/need >/dev/null avant que le disque ne tourne.) Pour que noflushd soit efficace, désactivez tous les swaps et montez vos systèmes de fichiers avec quelque chose comme: commit=3600.

    Utiliser noflushd efficacement signifie que vos données peuvent rester non écrites sur le disque pendant une période prolongée. C'est un risque à prendre en compte par rapport à l'avantage de ne pas avoir de bruit ou de chaleur provenant du disque pendant un certain temps. N'utilisez pas noflushd si vous n'êtes pas à l'aise avec ce risque.


62
2017-08-12 22:38



Je comprends le danger de peaufiner comme ça, certaines des étapes sur ce tutoriel, je ne suis pas d'accord, comme le comit=100 comme vous l'avez mentionné aussi. Mais je suis prêt à prendre des risques modérés pour améliorer les performances, car j'utilise un ordinateur portable et des sauvegardes (presque) régulières. - Decio Lira
@Decio: noatime contre atime peut faire une différence visible, mais je serais surpris que noatime contre relatime aurait. J'ai ajouté quelques astuces spécifiques à l'ordinateur portable à ma réponse. J'ai personnellement observé des améliorations visibles de ces conseils. Noflushd comporte un risque que je suis prêt à prendre lorsque je l’utilise. - Gilles
Ouais, je cherchais juste les différences entre noatime et relatime, et tu as raison. relatime (qui est maintenant par défaut dans ubuntu) est un bon compromis entre atime et noatime. - Decio Lira
J'ai lu à propos de data=writeback - il écrit simplement les données de fichier et les métadonnées dans un ordre aléatoire (par opposition à ordered qui écrit toujours des métadonnées après les données). Cela signifie que lorsque vous êtes en panne de courant, vous pouvez trouver votre fichier α octets de long, où 0 octet a été écrit. Et bien… Mais c'est absolument naturel! J'ai toujours pensé que le système de fichiers augmente d'abord la taille du fichier, puis écrit les données. Trouver qu'il peut être dans l'ordre inverse nécessite de transformer ce modèle pour ajouter la mise en cache dans la RAM. Je ne suis pas convaincu pourquoi ne pas utiliser writeback si cela peut aider à améliorer la latence. - Hi-Angel


Oui, il peut toujours être judicieux d'utiliser noatime à partir de Ubuntu 12.10

relatime est une option de montage par défaut. Et relatime est beaucoup mieux que atime. Le premier nécessite une écriture pour la première lecture après une écriture, le second nécessite une écriture pour chaque lecture. Mais avec noatime chaque lecture est libre d'une écriture.

Cela signifie essentiellement que le nombre d’écritures sur un disque pour relatime mount est proche du double par rapport à un noatime monter autre chose étant égal. C'est un problème sérieux pour les partitions sur les périphériques de mémoire flash.

La discussion détaillée par la communauté du noyau Linux est à http://kerneltrap.org/node/14148


16
2018-03-02 17:22



Le facteur deux n'est pas correct en général. En théorie, le facteur est compris entre 1 (fichier infiniment utilisé) et 2 (fichier utilisé à l'infini). Cela signifie que le facteur réel est fondamentalement égal à 1, les facteurs proches de 2 ne représentant que peu dans la moyenne. - Patrick Häcker
1 est pour les fichiers en écriture seule. 2 est pour tous les autres. Il n'y a pas de point dans les fichiers en écriture seule, mais ils peuvent apparaître de temps en temps. Donc, mon estimation initiale devrait être pertinente. - yanychar
@yanychar: merci d'avoir expliqué relatime inconvénients et le partage de la discussion de kerneltrap, mais en disant "il n'y a pas de point dans les fichiers en écriture seule"est un non-sens: tous /usr et /lib sont des fichiers en lecture seule. En fait, la plupart de l'arbre, sans /home et /var, sont en lecture seule. Fichiers à /etc aussi changer très rarement. - MestreLion
@MestreLion: Ubuntu installe des tonnes de paquets. Les paquets sont mis à jour de temps en temps. S'il n'y avait pas de lecture d'un fichier entre le moment où le package est installé et mis à niveau, le fichier était "en écriture seule". Il n'y a pas d'écritures supplémentaires avec relatime par rapport à noatime pour le fichier. Pour tout le reste, il y a une écriture supplémentaire lorsque le fichier est lu. - yanychar