Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédente | |||
| sysadmin:linux:gestion-swap [2026/09/17 12:17] – supprimée - modification externe (Date inconnue) 127.0.0.1 | sysadmin:linux:gestion-swap [2026/09/17 12:17] (Version actuelle) – ↷ Nom de la page changé de sysadmin:linux:swap à sysadmin:linux:gestion-swap yoann | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | {{tag> | ||
| + | |||
| + | ====== Gestion du swap ====== | ||
| + | |||
| + | Le swap est un espace mémoire complémentaire à la RAM formant la mémoire virtuelle disponible pour le système : | ||
| + | |||
| + | * Mémoire virtuelle = RAM + SWAP | ||
| + | |||
| + | Il est utilisé par le système lorsque l' | ||
| + | * Cela peut conduire au plantage des applications en cours d' | ||
| + | * Un swap modéré et également bénéfique au système : il permet de libérer des espaces peu utilisés en RAM au profit des mémoires tampons (caches disque et buffers I/O). | ||
| + | |||
| + | On cherche cependant toujours à limiter son usage car pour les types de swap se trouvant hors de la RAM, les temps d' | ||
| + | |||
| + | Sur les versions récentes de GNU/Linux plusieurs formes de swap peuvent coexister: | ||
| + | * les partitions d' | ||
| + | * les fichiers d' | ||
| + | * Le zram (système de fichier compressé en RAM). | ||
| + | |||
| + | |||
| + | < | ||
| + | Si plusieurs distributions GNU/Linux coexistent, elles peuvent utiliser une même partition d' | ||
| + | </ | ||
| + | |||
| + | ===== Volumétrie et cas d' | ||
| + | |||
| + | : | ||
| + | |||
| + | |||
| + | ==== Systèmes virtualisés ==== | ||
| + | |||
| + | Pour les systèmes virtualisés, | ||
| + | |||
| + | |||
| + | ==== Poste de travail ==== | ||
| + | |||
| + | Pour une station de travail : | ||
| + | * Le zram est une bonne alternative dans la plupart des cas : il sera potentiellement plus sollicité qu'un serveur ; | ||
| + | * Un fichier ou une partition fait aussi l' | ||
| + | * Pour pouvoir utiliser l' | ||
| + | |||
| + | ==== Systèmes embarqués ==== | ||
| + | |||
| + | Dans des cas spécifiques comme Raspberry Pi : | ||
| + | * Le zram pour éviter d' | ||
| + | * Ne pas désactiver le SWAP : peut causer des crashs de processus (applications ou processus système) | ||
| + | |||
| + | <note warning> | ||
| + | Ne créer des espaces d' | ||
| + | </ | ||
| + | |||
| + | ^ RAM (Go) ^ Taille du swap | | ||
| + | | RAM >= 6 | swap = RAM | | ||
| + | | 1 < RAM < 4 | swap = 1,5 x la RAM | | ||
| + | | RAM < 1 | swap = 2 x RAM | | ||
| + | |||
| + | |||
| + | |||
| + | ===== Lister les espaces d' | ||
| + | |||
| + | Plusieurs espaces d' | ||
| + | |||
| + | <code bash> | ||
| + | swapon -s | ||
| + | </ | ||
| + | |||
| + | ===== Paramétrages du swap ===== | ||
| + | |||
| + | <note warning> | ||
| + | La valeur du paramètre **swapiness** n'a rien à voir avec la quantité de RAM utilisée avant de commencer le processus de swap. | ||
| + | </ | ||
| + | |||
| + | ==== Modifier le seuil d' | ||
| + | |||
| + | La valeur par défaut est souvent définie à 60. | ||
| + | |||
| + | : | ||
| + | |||
| + | Cela signifie que quand il y a moins de 60% d' | ||
| + | |||
| + | On pourra diminuer cette valeur pour utiliser au mieux la RAM et optimiser les performances : il faut cependant garder en tête que le swap reste nécessaire au bon fonctionnement du système et qu'il n'est pas recommandé en général de le désactiver totalement. | ||
| + | |||
| + | |||
| + | Pour afficher la valeur du paramètre : | ||
| + | |||
| + | <code bash> | ||
| + | cat / | ||
| + | </ | ||
| + | |||
| + | |||
| + | Modification | ||
| + | |||
| + | <code bash> | ||
| + | sudo sysctl vm.swappiness=10 | ||
| + | |||
| + | # Désactiver/ | ||
| + | sudo swapoff -av | ||
| + | sudo swapon -av | ||
| + | |||
| + | sudo swapon --show | ||
| + | </ | ||
| + | |||
| + | Pour rendre la modification permanente, utiliser un fichier de configuration sous **/ | ||
| + | |||
| + | <file conf 99-swappiness.conf> | ||
| + | vm.swappiness=10 | ||
| + | </ | ||
| + | |||
| + | ===== Configurer un ZRAM ===== | ||
| + | |||
| + | <code bash> | ||
| + | apt install -y zram-tools | ||
| + | </ | ||
| + | |||
| + | Par défaut le ZRAM peut occuper jusqu' | ||
| + | |||
| + | |||
| + | |||
| + | ===== Création d'un fichier d' | ||
| + | |||
| + | La création/ | ||
| + | |||
| + | Les commandes ci dessous permettent de créer une fichier d' | ||
| + | |||
| + | <code bash> | ||
| + | # la commande fallocate réserve un bloc d' | ||
| + | sudo fallocate -l 4g /file.swap | ||
| + | |||
| + | # modifier les droits d’accès | ||
| + | sudo chmod 600 /file.swap | ||
| + | |||
| + | # déclarer le fichier comme espace d' | ||
| + | sudo mkswap /file.swap | ||
| + | |||
| + | # activer | ||
| + | sudo swapon /file.swap | ||
| + | </ | ||
| + | |||
| + | Pour que le fichier soit utilisé à chaque démarrage, modifier le fichier /etc/fstab | ||
| + | |||
| + | < | ||
| + | # Fichier d' | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Les priorités ===== | ||
| + | |||
| + | La commande **'' | ||
| + | |||
| + | <code bash> | ||
| + | swapon -s | ||
| + | Filename | ||
| + | / | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | |||
| + | Dans l' | ||
| + | |||
| + | Pour modifier les priorités : | ||
| + | |||
| + | <code bash> | ||
| + | # Plus la valeur est haute, plus priorité est élevée | ||
| + | swapon --priority=100 /dev/zram0 | ||
| + | swapon --priority=-10 /swapfile | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Suppression d'un fichier d' | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | # désactiver l' | ||
| + | sudo swapoff /file.swap | ||
| + | |||
| + | # Suppression du fichier | ||
| + | sudo rm / | ||
| + | </ | ||
| + | |||
| + | Modifier **/ | ||
| + | |||
| + | < | ||
| + | # Désactivation du fichier d' | ||
| + | # / | ||
| + | </ | ||
| + | |||
| + | Modifier le seuil d' | ||
| + | |||
| + | <code bash> | ||
| + | echo vm.swappiness=1 | sudo tee / | ||
| + | </ | ||
| + | |||
| + | Désactiver / réactiver le swap pour prendre en compte les modifcations: | ||
| + | <code bash> | ||
| + | sudo swapoff -av | ||
| + | sudo swapon -av | ||
| + | </ | ||
| + | |||
| + | ===== Gestion du swap ===== | ||
| + | |||
| + | Le wiki [[sysadmin: | ||
| + | |||
| + | ===== Références ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||