GNU/Linux >> Tutoriels Linux >  >> Linux

Gestion du swap dans le système Linux moderne

L'espace d'échange fait partie intégrante du système Linux moderne, en particulier dans les environnements d'entreprise d'aujourd'hui. Beaucoup d'entre vous connaissent peut-être ses concepts et savent comment les gérer pour qu'ils fonctionnent en votre faveur. Je parierais qu'il y a beaucoup de gens qui, comme moi jusqu'à récemment, n'ont pas interagi avec l'échange ou sa manipulation dans un environnement réel et ne comprennent peut-être pas entièrement son objectif. Je souhaite passer en revue les concepts de base et expliquer comment créer et gérer un espace d'échange.

Qu'est-ce que l'échange ?

Avez-vous déjà vu le film Inception ? La prémisse est centrée sur "un rêve dans un rêve". Eh bien, le swap est similaire dans son concept car il s'agit d'une mémoire virtuelle construite sur de la mémoire physique. La confusion peut s'installer sans une définition commune de la "mémoire". En informatique, il existe deux principaux types de mémoire : la RAM et le disque dur.

La mémoire vive, également connue sous le nom de RAM, est la mémoire utilisée pour stocker et accéder aux programmes activement utilisés par l'ordinateur. Cette mémoire est très différente du stockage sur disque dur que vous avez sur votre ordinateur. Qu'elle soit sur disque ou à semi-conducteurs, la mémoire de votre disque dur est utilisée pour stocker des données qui ne sont pas activement utilisées sur l'ordinateur. Il permet également de conserver les données pendant les cycles d'alimentation. Avec la RAM, elle est considérée comme une mémoire volatile, ce qui signifie que la RAM est effacée lorsque l'ordinateur est éteint.

Pourquoi l'échange ?

Maintenant que j'ai défini ces types de mémoire, vous devez comprendre pourquoi l'échange est nécessaire. La RAM est une ressource limitée, et lorsque vous effectuez plusieurs tâches ou accédez à des fichiers ou logiciels exigeants, vous pouvez dépasser la quantité de RAM intégrée au système. Lorsque cela se produit, les programmes peuvent planter ou se figer jusqu'à ce que la RAM nécessaire soit disponible. C'est là que l'échange entre en jeu.

Swap vous permet de créer de la RAM virtuelle en utilisant l'espace de votre disque dur physique existant lorsque votre RAM physique est poussée à pleine capacité. Imaginez que vous travaillez sur un serveur et que lorsque vous initialisez des processus spécifiques, vous rencontrez un plantage. Plusieurs fois, l'erreur de mémoire insuffisante (OOM Killer comme on l'appelle) se produit lorsque vous essayez de démarrer simultanément plusieurs processus système principaux. Ceci est particulièrement courant dans les systèmes peu provisionnés (serveurs d'éditions virtuelles et autres). Une solution simple consiste à allouer plusieurs Go de mémoire d'échange. Il est temps de voir comment créer de la mémoire d'échange.

[REMARQUE :Si vous n'êtes toujours pas convaincu par l'échange, assurez-vous de consulter cet excellent article de Redhat.com]

Comment échanger ?

Il existe deux options pour créer un espace d'échange. Vous pouvez créer une partition d'échange ou un fichier d'échange. La plupart des installations Linux sont préallouées avec une partition swap. Il s'agit d'un bloc de mémoire dédié sur le disque dur utilisé lorsque la RAM physique est pleine. D'un autre côté, vous pouvez également créer un fichier d'échange. Il s'agit d'un fichier conçu pour être d'une taille spécifique et il est préférable de l'utiliser uniquement dans des circonstances particulières. Il est recommandé d'utiliser une partition swap à moins que la situation n'en décide autrement.

Je vais démontrer la procédure pour étendre le swap sur un volume logique LVM. Vous pouvez suivre ici ou consulter le portail client pour la documentation complète, y compris une méthode pour un échange non LVM.

[REMARQUE :Pour consulter la documentation complète, veuillez consulter le portail client RHEL. ]

Avant de créer ou d'augmenter l'échange, il est utile de déterminer si votre ordinateur dispose déjà d'un échange disponible. Vous pouvez rapidement vérifier cela en exécutant la commande free -m. Vous pouvez voir ici qu'une nouvelle installation de RHEL8 dans Virtual Box est préallouée avec un swap de 3 Go, qui n'est pas utilisé actuellement.

Supposons maintenant que l'utilisation du système vous oblige à augmenter l'espace d'échange disponible. Vous commencez par désactiver l'échange pour le volume associé.

Disable: # swapoff -v /dev/rhel/swap
Resize:   # lvresize /dev/rhel/swap -L +2G (to increase swap by 2G)
Format:  # mkswap /dev/rhel/swap
Enable:  # swapon -v /dev/rhel/swap

Si vous devez réduire l'espace d'échange pour une raison quelconque, il vous suffit de modifier l'étape 2 pour qu'elle ressemble à ceci :  

Reduce: # lvreduce /dev/rhel/swap -L -1G (to reduce the swap by 1Gb)

Plus d'échange ?

Il peut y avoir d'autres choses que vous devez manipuler lorsqu'il s'agit d'échanger. La création d'un nouveau volume ou la suppression complète du swap est parfois nécessaire. Il y a aussi le fichier d'échange que j'ai mentionné plus tôt. Pour plus d'informations sur la façon d'accomplir ces tâches, assurez-vous de vérifier le lien vers le portail client plus haut dans l'article.

[REMARQUE :Pour une analyse approfondie de ce sujet, assurez-vous de consulter l'article de David Both sur Opensource.com]


Linux
  1. Le noyau Linux :Top 5 des innovations

  2. Quelle est la bonne quantité d'espace de swap pour un système Linux moderne ?

  3. dmidecode :obtenir des informations sur le matériel système sous Linux

  4. Comment changer l'identité d'un système Linux

  5. Vérifiez la charge du système sous Linux

Arch Linux – Personnalisation du système

Comment effacer la mémoire d'échange sous Linux

Comment désactiver définitivement Swap sous Linux

La commande supérieure de Linux

Comment utiliser la commande fd sur le système Linux

Comment fonctionne la mémoire d'échange sous Linux ?