Retour au blog

Ajouter de l'espace swap sur Ubuntu 20.04 : Un tutoriel

Ajouter de l'espace swap sur Ubuntu 20.04 : Un tutoriel

Ajouter de l'espace swap à votre serveur est une excellente option pour compenser les erreurs d'insuffisance de mémoire. Linux permet aux utilisateurs d'ajouter de l'espace swap dans leur système lorsque la quantité de RAM du système est saturée. Lorsque vous créez une partition d'espace dédiée, vous permettez à votre mémoire physique de fonctionner de manière fluide sans trop vous soucier du manque d'espace disque.

Aperçu du Swap

L'espace swap sous Linux est une partie de la mémoire virtuelle utilisée lorsque la mémoire physique manque d'espace. En particulier lors de l'utilisation d'un grand programme ou d'une application nécessitant de la mémoire supplémentaire, l'espace swap est un choix idéal pour conserver temporairement les pages de mémoire inactives. La création d'un espace swap permet aux utilisateurs de stocker des données lorsque de grands programmes sont en cours d'exécution et réduit ainsi les plantages d'applications. Cela signifie que si le système a besoin de plus de ressources mémoire et que la RAM est pleine, toutes les pages inactives en mémoire sont transférées vers l'espace swap et les programmes peuvent s'exécuter sans interruption.

De quelle quantité de swap ai-je besoin ?

La quantité d'espace swap dépend de plusieurs facteurs. Ceux-ci incluent la RAM disponible, la charge imposée et la nécessité pour le système de prendre en charge la fonction d'hibernation (mise en veille sur disque). Reportez-vous au tableau ci-dessous pour vérifier l'espace swap recommandé en fonction de l'espace disponible en RAM :

Espace RAM disponible

Espace swap recommandé

1.

1 Go

1 Go

2.

2 Go

1 Go

3.

3 Go

2 Go

4.

4 Go

2 Go

5.

5 Go

2 Go

6.

6 Go

2 Go

7.

8 Go

3 Go

Dans ce tutoriel, nous allons vous guider à travers les étapes d'ajout d'espace swap sur Ubuntu 20.04. Commençons !

Prérequis

Pour suivre ce tutoriel, vous aurez besoin de :

Étape 1 : Vérification des informations sur le swap

La taille de l'espace swap dépend de la RAM du système. Par conséquent, il est essentiel de vérifier la disponibilité de l'espace swap sur votre système avant d'en créer un. Saisissez la commande ci-dessous pour vérifier si le système a un swap configuré :

Swap Space image 1

Si un résultat s'affiche, cela signifie qu'il y a de l'espace disponible dans votre système pour créer de l'espace swap. En revanche, l'absence de résultat indique qu'il n'y a pas assez d'espace disponible pour ajouter de l'espace swap.

Utilisez l'utilitaire free pour vérifier qu'il n'y a pas de swap actif :

Vous verrez le résultat sous la forme d'une ligne de swap vide :

Swap Space image 2

Étape 2 : Vérification de la disponibilité de la partition du disque dur

Tout comme pour la vérification de la disponibilité du système, vérifions maintenant notre utilisation actuelle du disque pour nous assurer que nous avons suffisamment d'espace. Utilisez la commande df pour vérifier la disponibilité de la partition du disque dur :

Le périphérique avec / dans la colonne Mounted on est notre disque qui est 11% libre. Vous verrez le résultat :

Swap Space image 3

Après avoir vérifié les exigences du système, passons à la suite et créons un fichier swap sur notre système de fichiers.

Étape 3 : Créer un fichier swap

Pour créer un fichier swap sur notre système de fichiers, attribuez un nom de fichier tel que swapfile dans le répertoire racine (/) en utilisant le programme fallocate. L'allocation de la taille du fichier dépend de vos besoins. Pour que ce tutoriel reste simple et facile à comprendre, nous créons un fichier de 1 Go et y consacrons 1 Go de RAM. Utilisez la commande sudo pour créer un fichier swap :

Ensuite, saisissez cette commande pour vérifier l'espace réservé :

Vous verrez le résultat :Swap Space image 3

Maintenant que nous avons créé un espace swap dans notre système, activons-le à l'étape suivante.

Étape 4 : Activer le fichier swap

Une fois que nous disposons de la bonne taille, convertissons-la en espace swap. Pour des raisons de sécurité, il est crucial de rendre notre fichier accessible aux utilisateurs root et d'en empêcher l'accès aux utilisateurs normaux. Nous ajouterons des restrictions afin que seuls les utilisateurs disposant des privilèges root puissent voir le fichier et lire son contenu. Utilisez la commande root suivante pour rendre le fichier accessible uniquement aux utilisateurs root :

Ensuite, utilisez la commande ls pour vérifier les modifications :

Comme vous pouvez le voir, seul l'utilisateur root a les drapeaux de lecture et d'écriture activés :

Swap Space image 4

Après cela, marquez le fichier comme espace swap :

Vous verrez le résultat :

Swap Space image 5

Après cela, activez le fichier swap et autorisez notre système à commencer à l'utiliser :

Ensuite, vérifiez la disponibilité du swap :

Vous verrez le résultat suivant :

Swap Space image 6

Comme nous l’avons fait à l’Étape 1, nous allons vérifier à nouveau l’espace de l’utilitaire free :

Vous verrez le résultat suivant :

Swap Space image 7

Notre swap a été configuré avec succès et notre système d'exploitation commencera à l'utiliser si nécessaire. À l'étape suivante, nous allons rendre le fichier swap permanent.

Étape 5 : Rendre le fichier swap permanent

Par défaut, le serveur ne conservera pas automatiquement les paramètres de swap lors du redémarrage. Pour modifier les paramètres par défaut et jouer la carte de la sécurité, nous allons ajouter le fichier swap à notre fichier /etc/fstab. Utilisez la commande sudo pour sauvegarder le fichier /etc/fstab :

Ensuite, ajoutez les informations du fichier swap à la fin de votre fichier /etc/fstab en tapant :

Après cela, passons en revue certains paramètres et apportons des modifications afin de pouvoir ajuster notre espace swap.

Étape 6 : Modification des paramètres du swap

Dans cette étape, nous allons configurer les paramètres et apporter quelques modifications. Ajustons la propriété swappiness et modifions la pression du cache.

  • Ajuster la propriété Swappiness

Le paramètre swappiness est un paramètre de noyau ajustable. Il modifie l’équilibre entre la mise en swap de la mémoire d’exécution et gère l’échange de données entre la RAM et l’espace swap. Cette valeur paramétrique est exprimée en pourcentage, allant de 0 à 100.

La valeur vm.swappiness a une influence directe sur le comportement de la swappiness du système. Plus la valeur vm.swappiness est élevée, plus le système utilisera le swap et vice-versa. Si la valeur est proche de zéro, le noyau ne transférera pas de données vers le swap, ce qui peut entraîner une baisse des performances. Permettre à votre système de ne pas trop dépendre du swap est un excellent moyen d’améliorer ses performances et d’obtenir une réactivité robuste.

Alternativement, une valeur vm.swappiness plus proche de 100 tentera de placer plus de données dans le swap et moins dans la mémoire physique. Contrairement à une valeur de vm.swappiness faible à moyenne, un swap système élevé a des effets très indésirables lorsque de grandes quantités de données sont activement échangées entre la RAM et le swap.

Vérifiez la valeur actuelle de swappiness en tapant :

Vous verrez l’affichage suivant :

Swap Space image 8

Vous pouvez également définir la swappiness de votre choix à l’aide de la commande sysctl. Définissons la valeur de swappiness sur 15 en tapant :

Vous verrez le résultat suivant :

output

Jusqu’à ce que le système soit redémarré, les paramètres resteront en l’état. Ajoutez la ligne à notre fichier /etc/sysctl.conf pour rendre la valeur automatique au redémarrage :

Vous pouvez ajouter le code suivant tout en bas :

code

Ensuite, sauvegardez et fermez le fichier.

  • Ajuster la pression du cache

Ensuite, nous allons modifier vfs_cache_pressure qui prendra soin des informations inode et dentry par rapport aux autres données. Ces vfs_cache_pressure paramètres contrôlent également la tendance du noyau à récupérer la mémoire utilisée pour la mise en cache du répertoire. Naviguez à nouveau dans le système de fichiers proc pour vérifier la valeur actuelle :

Vous verrez le résultat suivant :

output 2

Comme la configuration est déjà faite, notre système éliminera les informations d’inode du cache. Définissons le sysctl vm.vfs_cache_pressure sur un paramètre plus stable comme ceci :

Vous verrez le résultat suivant :

Swap Space image 9

De la même manière que pour notre paramètre de swappiness, nous pouvons également modifier la configuration ici :

Tout en bas, insérez une ligne indiquant la nouvelle valeur que vous avez créée :

Swap Space image 10

Enfin, sauvegardez et fermez le fichier.

Conclusion

Vous pouvez ajouter de l'espace swap sous forme de partition swap dédiée, de fichier swap ou d'une combinaison des deux. Vous pouvez créer de l'espace swap et tirer parti de ses avantages pour exécuter des applications de manière fluide sans trop vous soucier des avertissements de manque de mémoire. Bien que la création d'un espace swap soit un avantage supplémentaire dans les systèmes ayant une mémoire limitée, elle ne doit pas être considérée comme une alternative à plus de mémoire RAM. N'oubliez pas que l'espace swap est situé sur un disque dur, vous pouvez donc rencontrer un temps d'accès légèrement plus long par rapport à la mémoire physique.

Voici d'autres tutoriels sur notre blog qui vous aideront à démarrer avec vos serveurs Ubuntu :

Bonne informatique !

author

Hark Labs

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.