Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       swapon, swapoff - Activer/désactiver un fichier ou un périphérique de swap

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <sys/swap.h>

       int swapon(const char *path, int swapflags);
       int swapoff(const char *path);

DESCRIPTION

       swapon()  active  le  swap  sur le fichier ou le périphérique bloc indiqué dans path. swapoff() arrête le
       swap sur le fichier ou le périphérique bloc indiqué dans path.

       Si l'attribut SWAP_FLAG_PREFER est indiqué dans le paramètre swapflags de swapon(), la nouvelle  zone  de
       swap disposera d'une priorité plus élevée que la zone de swap par défaut. La priorité est codée ainsi :

           (prio << SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK

       Si  l'attribut SWAP_FLAG_DISCARD est indiqué dans le paramètre swapflags de swapon(), les pages d'échange
       libérées seront supprimées avant d'être  réutilisées,  si  le  périphérique  d'échange  prend  en  charge
       l'opération  de mise au rebut (« discard ») ou d'élagage (« trim »). Ceci peut améliorer les performances
       sur certains périphériques SSD (« Solid  State  Devices »),  mais  souvent  cela  n'a  pas  d'influcence.
       Consultez aussi la section NOTES.

       Cette fonction ne peut être appelée que par un processus privilégié (qui a la capacité CAP_SYS_ADMIN.

   Priorité
       Chaque  zone de swap a une priorité, haute ou basse. La priorité par défaut est basse. Parmi les zones de
       basses priorités, les nouvelles zones sont toujours affectées d'une priorité inférieure à celle des zones
       précédentes.

       Toutes les priorités définies avec l'argument swapflags sont plus élevées que  la  priorité  par  défaut.
       Elles  peuvent  prendre  n'importe quelle valeur positive ou nulle choisie par l'appelant. Plus la valeur
       est haute, plus la priorité est élevée.

       Les pages de swap sont allouées dans les zones par ordre décroissant  de  priorité.  Pour  des  zones  de
       priorité  différentes,  la  plus  haute  sera  toujours  remplie  entièrement avant d'utiliser la zone de
       priorité plus faible. Si deux ou plus de zones ont la même priorité, et qu'il s'agit  de  la  plus  haute
       priorité disponible, les pages sont allouées en utilisant un algorithme Round-Robin entre elles.

       Sur Linux 1.3.6, le noyau suit généralement ces règles, mais il y a parfois des exceptions.

VALEUR RENVOYÉE

       En  cas  de  succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno est définie pour préciser
       l'erreur.

ERREURS

       EBUSY  (pour swapon()) Le chemin path est déjà utilisé comme espace d'échange.

       EINVAL Le fichier path existe, mais ne référence ni un fichier ordinaire, ni un périphérique bloc.

       EINVAL (swapon()) Le fichier indiqué ne contient pas de signature de  swap  correcte  ou  réside  sur  un
              système de fichiers en mémoire comme tmpfs(5).

       EINVAL (depuis Linux 3.4)
              (swapon()) swapflags contient un drapeau invalide.

       EINVAL (swapoff()) Le chemin path n'est pas actuellement un espace d'échange.

       ENFILE La limite du nombre total de fichiers ouverts pour le système entier a été atteinte.

       ENOENT path n'existe pas.

       ENOMEM Pas assez de mémoire pour démarrer le swapping.

       EPERM  L'appelant  n'a  pas  la  capacité  CAP_SYS_ADMIN,  ou le nombre maximal de fichiers d'échange est
              atteint ; voir la section NOTES.

STANDARDS

       Ces fonctions sont spécifiques à Linux et ne doivent pas être employées dans des  programmes  destinés  à
       être portables. Le deuxième argument swapflags a été introduit dans Linux 1.3.2.

NOTES

       La partition ou le fichier doivent être préparés par mkswap(8).

       Le  nombre  de  fichiers d'échange qui peuvent être utilisés est limité par la constante MAX_SWAPFILES du
       noyau. Avant Linux 2.4.10, MAX_SWAPFILES valait 8 ; depuis Linux 2.4.10, il vaut 32. Depuis Linux 2.6.18,
       cette limite est décrémentée de 2 (et vaut donc 30) si le noyau est compilé  avec  CONFIG_MIGRATION  (qui
       réserve  deux  entrées de table de swap pour les l'option possibilités de migration offertes par mbind(2)
       et migrate_pages(2)). Depuis Linux 2.6.32, la limite est encore décrémentée de 1 si le noyau est  compilé
       avec l'option CONFIG_MEMORY_FAILURE. Depuis Linux 5.14, la limite encore décrémentée de 4 si le noyau est
       compilé avec l'option CONFIG_DEVICE_PRIVATE.

       La  suppression de pages d'échange a été introduite dans Linux 2.6.29, puis fut conditionnée à l'attribut
       SWAP_FLAG_DISCARD dans Linux 2.6.36, qui supprime toujours la zone d'échange entière quand  swapon()  est
       appelée, même si ce bit d'attribut n'est pas mis.

VOIR AUSSI

       mkswap(8), swapoff(8), swapon(8)

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

       Cette traduction est une documentation libre ; veuillez vous  reporter  à  la  GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.03                    4 décembre 2022                                       swapon(2)