37 votes

Quelle est la surcharge de performance du /home crypté ?

J'ai un netbook avec Windows sur la deuxième partition et Xubuntu ( / y /home ) sur la troisième partition. J'ai choisi de crypter mon dossier personnel lors de l'installation. Les performances du netbook sont adéquates pour la petite machine qu'il est, mais je cherche à les améliorer. Je n'ai pas pu trouver beaucoup d'informations sur la surcharge (CPU ou disque) associée au cryptage de la partition personnelle. J'ai exécuté la procédure suivante, en écrivant sur ma partition personnelle ainsi que sur la partition Windows montée :

dd if=/dev/zero of=~/dummy bs=512 count=10240

dd if=/dev/zero of=/media/Windows/dummy bs=512 count=10240

Le premier a retourné 2,4 Mo/s et le second 2,5 Mo/s. Puis-je donc en déduire que le cryptage des dossiers personnels n'entraîne qu'une faible surcharge ? Je ne suis pas sûr que les différents systèmes de fichiers fassent une différence ( / y /home sont ext3).

Mise à jour 1

Je ne sais pas pourquoi je n'ai pas utilisé /tmp au lieu du dossier Windows monté. Seulement /home est crypté, donc /tmp est ext3 non crypté. Les résultats de la dd comme ci-dessus sont stupéfiants :

~ : 2.4 MB/s

/tmp : 42.6 MB/s

Des commentaires s'il vous plaît ? La raison pour laquelle je pose cette question est que l'accès au disque sur le netbook est sensiblement lent.

Mise à jour 2

J'ai chronométré chacune des dd les opérations avec time :

~ :

real    0m2.217s  
user    0m0.028s  
sys     0m2.176s

/tmp :

real    0m0.152s  
user    0m0.012s  
sys     0m0.136s

Voir aussi : discussion sur UbuntuForums.org y rapport de bogue (2012/05/11 : il semble maintenant qu'il s'agisse d'un bogue relatif au SSD)

Edit : Sortie de mount :

/dev/sda3 on / type ext3 (rw,noatime,errors=remount-ro,user_xattr,commit=600)
proc on /proc type proc (rw,noexec,nosuid,nodev)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/USER/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=USER)

Mise à jour 2012/05/01 : Autres liens connexes pour référence : un (ancien) Phoronix test , a similaire question ici, un duplicate question ici et une similaire Question du super-utilisateur. Un bon résumé de la réponse aquí suggère que les pénalités de performance ne sont perceptibles que sur les processeurs et les SSD de petite taille/netbook (Atom).

1 votes

Oui, les différents systèmes de fichiers font une différence. Vous devez isoler le cryptage comme étant la seule différence significative entre les tests pour attribuer une quelconque différence au cryptage. Je suppose que /media/Windows est ntfs.

0 votes

Est-ce que ce n'est pas comparer EXT4 crypté avec NTFS ? La comparaison que vous voulez faire est sûrement entre EXT4 crypté et EXT4 normal. Edit : erk, ouais, ce que @jmtd a dit !

1 votes

Oui, je veux comparer l'ext3 crypté avec l'ext3 normal. Je viens de réaliser que je peux le faire en utilisant /tmp au lieu du dossier Windows monté. Je ne sais pas à quoi je pensais lorsque j'ai testé cela plus tôt dans la journée. Merci pour les indications. Je vais mettre à jour ma question.

21voto

HDave Points 3537

J'utilise la fonction de répertoire personnel crypté depuis des années et je peux vous dire que si elle se comporte bien dans des circonstances normales, elle met votre machine à genoux lorsque vous effectuez des opérations de fichiers intenses.

J'ai un Pentium i7 à quatre cœurs avec 16 Go de RAM de System7. À tous points de vue, c'est un ordinateur portable très rapide avec un disque SATA 7200 RPM. Aujourd'hui encore, alors que je décompressais un fichier contenant 20 000 petits fichiers texte (cela prend 10 minutes), mon système est pratiquement inutilisable. Tout ce qui touche au système de fichiers a un retard de 1 à 2 secondes... y compris le navigateur Web. Mon expérience est exactement celle de l'OP - le répertoire personnel crypté est environ 15x plus lent que le répertoire non crypté.

Je n'y ai pas pensé parce que j'y suis tellement habitué (c'est mon quatrième ordinateur portable). Au cas où quelqu'un aurait un conseil pour l'améliorer, je me suis dit que j'allais chercher ici.

Je crypte mon répertoire personnel parce que je dois le faire. Si vous n'êtes pas obligé... alors ne le faites pas.

2 votes

Ce disque dur de 7200rpm est définitivement un goulot d'étranglement. Aussi, vous devriez probablement utiliser ionice pour toutes les opérations non critiques et de longue durée, à forte intensité d'E/S, afin de ne pas réduire les performances pour d'autres choses, comme l'utilisation de votre navigateur Web.

9voto

ChristianM Points 683

Dd n'est PAS un bon moyen de mesurer les performances d'un disque dur. Il y a trop de variables impliquées et tout bon test devrait être fait de nombreuses fois de toute façon.

Le cryptage génère une surcharge, en particulier sur les processeurs "inférieurs" qui équipent les netbooks. Ils sont moins chers pour une raison après tout.

Je n'ai pas de données sur le cryptage des disques, mais j'ai fait des tests sur https vs http pour un serveur web et le coût est substantiel mais pas mortel. CEPENDANT, votre répertoire personnel a tendance à être un désordre avec des programmes écrivant dans leurs répertoires cachés de façon aléatoire et constante. Voir Firefox pour un mauvais garçon à cet égard. C'est un léger ralentissement constant sur un netbook qui est déjà plus lent et qui a souvent un disque dur lent.

Exécutez-le à nouveau avec bonnie++ un autre utilisateur recommandé mais cette fois, faites-le avec DEUX utilisateurs différents, l'un avec un disque dur crypté, l'autre sans. Assurez-vous que les deux répertoires personnels sont remplis de la même manière.

Cela vous donne un test beaucoup plus précis. Je ne serais pas surpris de voir une baisse de performance de 20% ou plus. C'est ce qu'a fait mon serveur web quand on lui a demandé de crypter tout ce qu'il envoyait. Et vous lisez et écrivez des données cryptées.

3voto

Sunny Points 268

Bien que le chiffrement ajoute certainement des frais généraux, le chiffrement de la partition personnelle ne devrait pas avoir un impact important sur les performances de votre système. La plupart des programmes que vous exécutez sont lus à partir de /bin ou /usr, et la plupart des écritures régulières du système se trouvent dans /var ou /tmp.

Seuls vos fichiers d'utilisateur sont dans /home, donc vous verrez un impact si vous traitez de gros fichiers, que je mets généralement sur une partition séparée de toute façon, en gardant mon home pour les documents seulement.

2 votes

De nombreux programmes utilisent des fichiers cachés (fichiers point) dans votre répertoire personnel. Alors qu'ils devraient utiliser tmp pour les écritures fréquentes, vous pourriez essayer de crypter uniquement un sous-répertoire de /home.

0voto

La vitesse de transfert n'est pas une mesure suffisante pour évaluer les frais généraux du cryptage : il se peut simplement que le goulot d'étranglement soit la capacité d'E/S de votre disque dur. Vous pouvez également examiner l'utilisation du processeur, qui peut (ou non) être différente selon que vous utilisez le cryptage ou non.

1 votes

Comment la capacité IO peut-elle influencer cela ? J'écris des données avec dd à un dossier ext3 crypté et non crypté. Si l'écriture de données cryptées est 20 fois plus lente, cela suggère que le processus de cryptage est le goulot d'étranglement, car le disque est capable d'écrire plus rapidement dans le dossier non crypté.

1 votes

Eh bien, cela vient de la mise à jour que vous avez fournie à votre question initiale, qui n'était pas disponible lorsque j'ai écrit la réponse. Si l'écriture de données sur une partition chiffrée est 20 fois plus lente que sur une partition non chiffrée, alors il est évident que le processus de chiffrement entraîne une surcharge.

2 votes

Par exemple, bonnie++ est un meilleur compteur d'entrées-sorties que dd. Il suffit de "sudo apt-get install bonnie++" pour l'installer.

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