Recherche de site Web

Comment augmenter la mémoire d'échange dans Ubuntu Linux


L'un des moyens les plus simples de prévenir les problèmes de mémoire insuffisante dans les applications consiste à augmenter la taille de swap de votre serveur. Dans cet article, nous expliquerons comment ajouter un fichier d'échange à un serveur Ubuntu.

Étape 1 : Vérification des informations d'échange

Avant de commencer, assurez-vous d'abord de vérifier si le système dispose déjà d'un espace swap disponible en exécutant la commande swapon suivante.

sudo swapon --show

Si vous ne voyez aucune sortie, cela signifie que votre système ne dispose pas actuellement d’espace d’échange disponible.

Vous pouvez également confirmer qu'il n'y a pas d'espace d'échange disponible à l'aide de la commande free.

free -h

Vous pouvez voir à partir de la sortie ci-dessus qu’il n’y a pas d’échange actif sur le système.

Étape 2 : Vérification de l'espace disponible sur la partition

Pour créer un espace d'échange, vous devez d'abord vérifier votre utilisation actuelle du disque et confirmer qu'il y a suffisamment d'espace pour créer un fichier d'échange sur le système.

df -h

La partition avec / dispose de suffisamment d'espace disponible pour créer un fichier d'échange.

Étape 3 : Création d'un fichier d'échange dans Ubuntu

Nous allons maintenant créer un fichier d'échange appelé "swap.img" sur notre répertoire Ubuntu root (/) en utilisant la commande fallocate avec la taille de 1 Go (vous pouvez ajuster la taille selon vos besoins) et vérifiez la taille du swap à l'aide de la commande ls comme indiqué.

sudo fallocate -l 1G /swap.img
ls -lh /swap.img

À partir du résultat ci-dessus, vous pouvez voir que nous avons créé le fichier d'échange avec la quantité d'espace correcte, c'est-à-dire 1 Go.

Étape 4 : activation du fichier d'échange dans Ubuntu

Pour activer le fichier d'échange dans Ubuntu, vous devez d'abord définir les autorisations correctes sur le fichier afin que seul l'utilisateur root ait accès au fichier.

sudo chmod 600 /swap.img
ls -lh /swap.img

À partir du résultat ci-dessus, vous pouvez voir que seul l'utilisateur root dispose des autorisations de lecture et d'écriture.

Exécutez maintenant les commandes suivantes pour marquer le fichier comme espace d'échange et permettre au fichier d'échange de commencer à l'utiliser sur le système.

sudo mkswap /swap.img
sudo swapon /swap.img

Vérifiez que l'espace de swap est disponible en exécutant les commandes suivantes.

sudo swapon --show
free -h

D'après le résultat ci-dessus, il est clair que notre nouveau fichier d'échange a été créé avec succès et que notre système Ubuntu commencera à l'utiliser si nécessaire.

Étape 5 : Monter le fichier d'échange de manière permanente dans Ubuntu

Pour rendre l'espace d'échange permanent, vous devez ajouter les informations du fichier d'échange dans le fichier /etc/fstab et le vérifier en exécutant les commandes suivantes.

echo '/swap.img none swap sw 0 0' | sudo tee -a /etc/fstab
cat /etc/fstab

Étape 6 : réglage des paramètres d'échange dans Ubuntu

Vous devez configurer quelques paramètres qui auront un effet sur les performances de votre Ubuntu lors de l'utilisation du swap.

Ajustement de la valeur d'échange

Swappiness est un paramètre du noyau Linux qui spécifie dans quelle mesure (et à quelle fréquence) votre système échange les données de la RAM vers l'espace d'échange. La valeur par défaut de ce paramètre est « 60 » et il peut utiliser n'importe quelle valeur comprise entre « 0 » et « 100 ». Plus la valeur est élevée, plus l'utilisation de l'espace de swap par le noyau est élevée.

Tout d’abord, vérifiez la valeur actuelle du swappiness en tapant la commande suivante.

cat /proc/sys/vm/swappiness

La valeur actuelle de swappiness de 60 est parfaite pour une utilisation sur ordinateur de bureau, mais pour un serveur, vous devez la définir sur une valeur inférieure, c'est-à-dire 10.

sudo sysctl vm.swappiness=10

Pour rendre ce paramètre permanent, vous devez ajouter la ligne suivante au fichier /etc/sysctl.conf.

vm.swappiness=10

Ajustement du paramètre de pression du cache

Un autre paramètre similaire que vous souhaiterez peut-être modifier est le vfs_cache_pression : ce paramètre spécifie la quantité de détails que le système souhaite mettre en cache sur l'inode et le dentry. autre informations.

Vous pouvez vérifier la valeur actuelle en interrogeant le système de fichiers proc.

cat /proc/sys/vm/vfs_cache_pressure

La valeur actuelle est définie sur 100, ce qui signifie que notre système supprime trop rapidement les informations d'inode du cache. Je suggère que nous devrions définir ce paramètre sur un paramètre plus stable tel que 50.

sudo sysctl vm.vfs_cache_pressure=50

Pour rendre ce paramètre permanent, vous devez ajouter la ligne suivante au fichier /etc/sysctl.conf.

vm.vfs_cache_pressure=50

Enregistrez et fermez le fichier lorsque vous avez terminé.

Étape 7 : Suppression d'un fichier d'échange dans Ubuntu

Pour supprimer ou supprimer le fichier d'échange nouvellement créé, exécutez les commandes suivantes.

sudo swapoff -v /swap.img
sudo rm -rf /swap.img

Enfin, supprimez l'entrée du fichier d'échange du fichier /etc/fstab.

C'est tout! Dans cet article, nous avons expliqué comment créer un fichier d'échange sur votre distribution Ubuntu. Si vous avez des questions concernant cet article, n'hésitez pas à poser vos questions dans la section commentaires ci-dessous.