Aller au contenu

Espace d'échange (swap)

Espace d'échange (en anglais swap) : zone de disque, fichier ou partition, où le noyau déplace des pages de mémoire peu utilisées pour libérer de la mémoire vive.

Seule la mémoire anonyme (le tas d'un programme, sans fichier d'origine) a besoin d'un espace d'échange ; le cache des fichiers se relit simplement depuis le disque. Les images cloud d'Ubuntu et de Debian n'en créent pas : swapon --show ne renvoie rien. Pour ajouter un fichier d'échange : sudo fallocate -l 2G /swapfile, sudo chmod 600 /swapfile, sudo mkswap /swapfile, sudo swapon /swapfile (sur Debian 13, sudo mkswap --file --size 2G /swapfile fait les trois premières étapes), puis la ligne /swapfile none swap sw 0 0 dans /etc/fstab. Le réglage vm.swappiness (0 à 200, 60 par défaut) oriente le noyau entre vider le cache et échanger ; il est sans effet sans espace d'échange.

Un petit espace d'échange amortit un pic et accueille des pages oubliées depuis des heures, mais une machine qui échange en permanence devient lente au point d'être indisponible : les limites de mémoire des services restent la vraie protection. Pièges : swapon refuse un fichier creux (skipping - it appears to have holes) et avertit sur des droits trop larges ; un fichier d'échange sur un volume monté en nofail disparaît en silence avec lui. Côté sécurité, l'espace d'échange contient des morceaux de la mémoire de tous les processus, mots de passe et clés compris.

Dans les cours

Voir aussi