11 votes

Quel est l'impact d'ecryptfs sur les performances des disques durs ?

Mon répertoire personnel est crypté avec ecryptfs. Est-ce que ecryptfs conduit à la fragmentation ?

J'ai l'impression que la lecture des fichiers, l'affichage des dossiers et la connexion sont devenus de plus en plus lents (alors qu'ils n'étaient pas très lents au début). Le disque dur fait beaucoup de bruit de recherche même si je n'ouvre qu'un fichier texte. Dans /home/.ecryptfs, je vois de nombreuses archives volumineuses (qui contiennent probablement les fichiers cryptés). Je me demande donc si la défragmentation en ligne du système de fichiers Linux peut apporter quelque chose.

Quelles sont les options dont je dispose pour améliorer les performances ? Dois-je décider s'il est préférable de se passer du cryptage ?

10voto

Simon Forrest Points 2079

Phoronix a effectué une série de tests et publié quelques articles sur les performances d'eCryptfs lors du chiffrement des répertoires personnels :

Ce que je retiens de ces articles, c'est que le chiffrement (comme prévu), selon les benchmarks, a un impact sur les performances de lecture et d'écriture dans une certaine mesure. Sur les petits processeurs (processeurs Atom) et sur les disques durs rapides (SSD), cela est peut-être plus perceptible. Cela dit, en utilisant eCryptfs, vous ne payez cette pénalité de performance que lorsque vous lisez/écrivez des données dans votre répertoire personnel (et non dans le reste du système, comme vous le feriez avec un chiffrement intégral du disque). En outre, avec des processeurs plus rapides, le temps passé à effectuer ce cryptage/décryptage est souvent compris dans le temps d'attente de l'E/S pour accéder aux données du disque, qui est généralement le goulot d'étranglement.

En ce qui concerne votre problème particulier, si vous entendez beaucoup de bruit de "recherche de disque dur", il me semble que votre système échange des données de la mémoire au disque, et vice-versa. Si vous avez choisi d'utiliser eCryptfs, Ubuntu cryptera automatiquement votre espace d'échange (ce qui est nécessaire pour sauvegarder vos données cryptées). Cependant, l'espace d'échange crypté est également très coûteux.

Personnellement, je surcharge mes systèmes avec beaucoup de RAM (8 Go sur la plupart de mes systèmes) et je désactive complètement le swap.

6voto

M.M Points 484

Je programme avec Python dans mon répertoire personnel et je dispose d'un environnement virtuel Python pour les paquets de projets.

Pour mes programmes, les temps de démarrage sont considérablement plus lents sur eCryptfs car Python émet de nombreux appels système stat() lors de la localisation des fichiers de module ; comme beaucoup de ces appels stat aboutissent à "file not found", et que ces résultats ne sont jamais mis en cache, mais que nous payons toujours une pénalité pour ecryptfs, les choses sont constamment léthargiques.

Mise à jour

J'ai fini par supprimer ecryptfs de mon dossier personnel en déplaçant le point de montage ecryptfs vers ~/private, en copiant la plupart des fichiers de ~/private vers mon dossier personnel non crypté. Les choses sont maintenant redevenues rapides. Peut-être que la pénalité de performance serait moindre avec un autre CPU, j'ai un Asus 1215N avec Atom.

5voto

Peter Hoeg Points 151

Je n'ai pas effectué de mesures rigoureuses, donc prenez ce qui suit avec un grain de sel, mais j'ai remarqué des performances extrêmement faibles avec ecryptfs dans les scénarios suivants par rapport à un LV dm-crypt (monté en tant que /home/nom d'utilisateur) :

  • du sur un dossier contenant de nombreux fichiers. Cela prend plusieurs minutes alors qu'il ne faut que quelques secondes pour utiliser dm-crypt sur l'ensemble de la partition - c'est de loin le pire des cas.

  • l'ouverture d'un dossier avec beaucoup d'éléments dans mutt prend plusieurs secondes (environ 20 sur un dossier avec 10000 éléments) alors que c'est presque instantané avec dm-crypt

  • les opérations git sont plus lentes (un peu, pas beaucoup) par rapport à dm-crypt

  • les applications telles que firefox prennent sensiblement plus de temps à démarrer, mais nous sommes toujours dans la fourchette des secondes

Je viens de passer à dm-crypt (avec pam_mount) et je ne peux pas être plus heureux !

1voto

Colin Ian King Points 16984

Les appels tels que truncate() et ftruncate() qui augmentent la taille des fichiers sont plus lents sur ecryptfs parce qu'ils doivent être remplis avec des zéros chiffrés, contrairement aux systèmes de fichiers normaux qui ne font que créer des trous dans le fichier.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X