| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| swap [Le 11/09/2022, 11:34] – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | swap [Le 14/02/2026, 17:15] (Version actuelle) – [Créer un fichier d'échange] reformulation (l'ajout de fichiers n'est pas particulièrement recommandé) krodelabestiole |
|---|
| <note tip>La copie de la RAM vers la swap consomme des ressources. \\ Plus la copie de la RAM se déclenche tard moins les ressources sont utilisées.</note> | <note tip>La copie de la RAM vers la swap consomme des ressources. \\ Plus la copie de la RAM se déclenche tard moins les ressources sont utilisées.</note> |
| |
| === Réglage permanent dans Ubuntu 14.04 à 18.04 ( Systemd )=== | === Réglage permanent dans Ubuntu 14.04 à 18.04 (Systemd)=== |
| |
| <note important>La mention barrée ci-dessous est totalement fausse. Le paramètre //swapiness// est beaucoup plus complexe que cela. Pour simplifier il ne gère pas seulement la tendance du noyau à échanger des pages entre la RAM et le swap, mais surtout l'équilibre entre le cache disque et l'utilisation de la mémoire par les applications. **Modifier ce paramètre risque fort d'être contre-productif et donc de diminuer les performances de votre système au lieu de les améliorer**.\\ | <note important>La mention barrée ci-dessous est totalement fausse. Le paramètre //swapiness// est beaucoup plus complexe que cela. Pour simplifier il ne gère pas seulement la tendance du noyau à échanger des pages entre la RAM et le swap, mais surtout l'équilibre entre le cache disque et l'utilisation de la mémoire par les applications. **Modifier ce paramètre risque fort d'être contre-productif et donc de diminuer les performances de votre système au lieu de les améliorer**.\\ |
| qui avec les réglages par défaut, répond "60". \\ | qui avec les réglages par défaut, répond "60". \\ |
| |
| ===Régler le déclenchement du fichier d'échange dès que la mémoire est utilisée a 95%=== | ===Régler le déclenchement du fichier d'échange dès que la mémoire est utilisée à 95%=== |
| |
| L'application de cette procédure avec une valeur faible du swappiness n'est pas conseillée : | L'application de cette procédure avec une valeur faible du swappiness n'est pas conseillée : |
| **Plus d'un espace d'échange peuvent être affectés à votre système Ubuntu.** | **Plus d'un espace d'échange peuvent être affectés à votre système Ubuntu.** |
| De plus, chacun de ces espaces peut être utilisé de manière inégale. Pour connaître les espaces d'échange actuellement activés dans votre système Ubuntu et leur niveau d'utilisation, utilisez la commande ''swapon'' de la façon suivante : | De plus, chacun de ces espaces peut être utilisé de manière inégale. Pour connaître les espaces d'échange actuellement activés dans votre système Ubuntu et leur niveau d'utilisation, utilisez la commande ''swapon'' de la façon suivante : |
| <code bash>swapon -s</code> | <code bash>swapon --show</code> |
| | |
| | **NB** : ou a défault l'option "-s" qui est obsolète. "--show" affiche un résultat mieux formaté. |
| |
| Le terminal vous affiche le résultat de cette commande sous forme de tableau. Ce tableau retourne les informations suivantes : | Le terminal vous affiche le résultat de cette commande sous forme de tableau. Ce tableau retourne les informations suivantes : |
| * //Filename// : le nom du fichier ou de la partition utilisée en tant qu'espace d'échange ; | * //Name// : le nom du fichier ou de la partition utilisée en tant qu'espace d'échange ; |
| * //Type// : le type d'espace d'échange (un fichier [//file//] ou une partition de disque dur [//partition//]) ; | * //Type// : le type d'espace d'échange (un fichier [//file//] ou une partition de disque dur [//partition//]) ; |
| * //Size// : la taille réservée à cet espace d'échange, en kibioctets ; | * //Size// : la taille réservée à cet espace d'échange, en kibioctets ; |
| |
| Voici un exemple du retour de cette commande : | Voici un exemple du retour de cette commande : |
| <box 60% classes orange | Commande : swapon -s> | <box 60% classes orange | Commande : swapon --show> |
| <file>utilisateur@Nomdel'Ordinateur:~$ swapon -s | <file>utilisateur@Nomdel'Ordinateur:~$ swapon --show |
| Filename Type Size Used Priority | NAME TYPE SIZE USED PRIO |
| /dev/sda3 partition 5241852 0 -1 | /dev/sda5 partition 2,3G 365,9M -2 |
| /file.swap file 524284 0 -2 | |
| </file> | </file> |
| </box|Terminal> | </box|Terminal> |
| |
| **NB** : l'option "-s" est obsolète. Utiliser “–show” qui affiche un résultat mieux formaté. Exemple : | |
| |
| [user@host~} swapon --show | |
| NAME TYPE SIZE USED PRIO | |
| /dev/sda5 partition 2,3G 365,9M -2 | |
| \\ | |
| |
| ==== Créer un fichier d'échange ==== | ==== Créer un fichier d'échange ==== |
| Afin d'ajouter davantage d'espace d'échange utilisable par votre système Ubuntu, nous vous recommandons la création de fichiers d'échange ou bien si vous voulez tout simplement remplacer une partition swap par un fichier. | |
| |
| <note tip>Le fichier d'échange doit être créé dans une partition formatée **ext**n </note> | On peut créer un fichier d'échange afin de remplacer une partition **swap**, ou simplement afin d'augmenter l'espace d'échange disponible. |
| | |
| | <note tip>Le fichier d'échange doit être créé sur une [[:partitions|partition]] formatée **[[:ext4]]**</note> |
| |
| Les fichiers d'échange ont quelques avantages par rapport aux partitions d'échange. \\ | Les fichiers d'échange ont quelques avantages par rapport aux partitions d'échange. \\ |
| Pour commencer, leur ajout ou suppression n'a pas d'impact sur la table des partitions du disque dur, ce qui limite les possibles pertes de données liées à la modification à posteriori du système de partitions d'un disque dur. Par conséquent, il est aisé d'attribuer à la volée plus ou moins d'espace d'échange selon les besoins, qu'ils soient temporaires ou non. | Pour commencer, leur ajout ou suppression n'a pas d'impact sur la table des partitions du disque dur, ce qui limite les possibles pertes de données liées à la modification //a posteriori// du système de partitions d'un disque dur. Par conséquent, il est aisé d'attribuer à la volée plus ou moins d'espace d'échange selon les besoins, qu'ils soient temporaires ou non. |
| Enfin, même s'ils sont stockés dans un système de fichiers, les fichiers d'échange sont exploités directement par le noyau Linux; l'utilisation d'un espace d'échange, sous forme de partition ou de fichier, devrait être identique quant aux performances. | Enfin, même s'ils sont stockés dans un système de fichiers, les fichiers d'échange sont exploités directement par le noyau Linux; l'utilisation d'un espace d'échange, sous forme de partition ou de fichier, devrait être identique quant aux performances. |
| |
| * Par exemple, pour activer la prise en charge de l'espace d'échange sur le fichier ''file.swap'' situé à la racine d'Ubuntu, on utilisera la commande suivante : | * Par exemple, pour activer la prise en charge de l'espace d'échange sur le fichier ''file.swap'' situé à la racine d'Ubuntu, on utilisera la commande suivante : |
| <code bash>sudo swapon /file.swap</code> | <code bash>sudo swapon /file.swap</code> |
| - Rendez disponible le fichier d'échange à chaque démarrage en éditant le fichier /etc/fstab et lui ajoutant : | - Rendez disponible le fichier d'échange à chaque démarrage en éditant le fichier ''/etc/fstab'' et lui ajoutant : |
| <file bash /etc/fstab> | <file bash /etc/fstab> |
| #Entry for /swapfile : | #Entry for /swapfile : |
| Et commentez la ligne qui concerne l'ancienne partition swap que vous pourrez désormais supprimer. | Et commentez la ligne qui concerne l'ancienne partition swap que vous pourrez désormais supprimer. |
| |
| - Commentez l'ancienne entrée de la partition swap du fichier /etc/initramfs-tools/conf.d/resume : | - Commentez l'ancienne entrée de la partition swap du fichier ''/etc/initramfs-tools/conf.d/resume'' : |
| <file bash /etc/initramfs-tools/conf.d/resume> | <file bash /etc/initramfs-tools/conf.d/resume> |
| #RESUME=UUID=1e1ebf39-2de7-4181-a504-4e317fd8db9c | #RESUME=UUID=1e1ebf39-2de7-4181-a504-4e317fd8db9c |
| </file> | </file> |
| |
| <note tip>Pour la création d'un fichier swap sur un HDD qui est monté sur un SDD (par exemple sous /home), créez le fichier swap sous le point de montage (par exemple /home/file.swap) et assurez vous que dans le fichier /etc/fstab, la ligne concernant le swapfile se trouve après la ligne qui indique le montage du disque HDD.</note> | <note tip>Pour la création d'un fichier swap sur un HDD qui est monté sur un SDD (par exemple sous ''/home''), créez le fichier swap sous le point de montage (par exemple ''/home/file.swap'') et assurez vous que dans le fichier ''/etc/fstab'', la ligne concernant le swapfile se trouve après la ligne qui indique le montage du disque HDD.</note> |
| |
| **Pour supprimer un fichier d'échange :** | **Pour supprimer un fichier d'échange :** |
| |
| <note tip> | <note tip> |
| Si votre swap est utilisé alors qu'il y a encore de la place dans la RAM, il est possible de le vider avec la commande : | Si votre swap est utilisé alors qu'il y a encore de la place dans la RAM, il est possible de le vider en le désactivant avec la commande : |
| <code> | <code> |
| sudo swapoff -a | sudo swapoff -a |
| </code> | </code> |
| | On peut ensuite réactiver le swap avec la commande : |
| | <code> |
| | sudo swapon -a |
| | </code> |
| | Ainsi le swap sera vidé mais toujours disponible en cas de besoin. |
| </note> | </note> |
| |
| * **(en)** [[http://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/|Linux add a swap file howto]] — { Comment ajouter un fichier d'échange sous Linux } sur le blog Nix Craft — Date : 18 mai 2006 ; mise à jour : 3 mai 2017. | * **(en)** [[http://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/|Linux add a swap file howto]] — { Comment ajouter un fichier d'échange sous Linux } sur le blog Nix Craft — Date : 18 mai 2006 ; mise à jour : 3 mai 2017. |
| * **Vidéo**: [[https://www.youtube.com/watch?v=NCb4B0DAErc|Comprendre l’intérêt d'une RAM]] | * **Vidéo**: [[https://www.youtube.com/watch?v=NCb4B0DAErc|Comprendre l’intérêt d'une RAM]] |
| * **(en)** [[https://blog.sleeplessbeastie.eu/2012/05/23/ubuntu-how-to-encrypt-swap-partition/|la source pour le cryptage de la swap]] | * **(en)** [[https://blog.sleeplessbeastie.eu/2012/05/23/ubuntu-how-to-encrypt-swap-partition/|la source pour le chiffrement de la swap]] |
| * **(en)** [[https://www.logilab.org/blogentry/29155|Activer et désactiver le cryptage de la swap]] | |
| |
| ---- | ---- |