Provided by: manpages-de-dev_4.27.0-1_all bug

BEZEICHNUNG

       swapon,  swapoff  -  Auslagerung  von  Hauptspeicherbereichen (Swapping) auf ein Gerät oder in eine Datei
       starten/beenden

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <sys/swap.h>

       int swapon(const char *pfad, int swap_schalter);
       int swapoff(const char *pfad);

BESCHREIBUNG

       swapon weist den Auslagerungsbereich für Hauptspeicherbereiche der Datei oder dem blockorientierten Gerät
       zu, das in pfad angegeben wurde. swapoff beendet das Auslagern von Hauptspeicherbereichen  in  der  Datei
       oder dem blockorientierten Gerät, das in pfad angegeben wurde.

       Falls  der  Schalter  SWAP_FLAG_PREFER  im  swapon()-Argument swap_schalter angegeben wurde, hat der neue
       Auslagerungsbereich für Hauptspeicherbereiche eine höhere Priorität als der  vorgegebene.  Die  Priorität
       ist in swap_schalter kodiert als:

           (prio << SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK

       Falls   der  Schalter  SWAP_FLAG_DISCARD  im  swapon()-Argument  swap_schalter  angegeben  wurde,  werden
       freigegebene Auslagerungsseiten für Hauptspeicherbereiche verworfen, bevor  sie  erneut  benutzt  werden,
       falls  das  Gerät  mit  dem Auslagerungsbereich für Hauptspeicherbereiche die Aktionen zum Verwerfen oder
       Kürzen (»discard« und »trim«) unterstützt. (Dies könnte  die  Leistung  auf  einigen  Festspeichergeräten
       (SSD) verbessern, was aber oft nicht der Fall ist.) Siehe auch die ANMERKUNGEN.

       Diese    Funktionen    können   nur   von   einem   privilegierten   Prozess   (einem,   der   über   die
       CAP_SYS_ADMIN-Capability verfügt) benutzt werden.

   Priorität
       Jeder  Auslagerungsbereich  für  den  Arbeitsspeicher  hat  eine  Priorität,  hoch  oder   niedrig.   Die
       Standardpriorität  ist  niedrig.  Innerhalb  der Auslagerungsbereiche mit niedriger Priorität werden neue
       Bereiche niedriger als bereits vorhandene Bereiche priorisiert.

       Alle mit _swap_schalter_ gesetzten Prioritäten sind hoch, höher als der Standardwert.  Beim  Aufruf  kann
       die  Priorität  auf  einen  beliebigen  nicht negativen Wert gesetzt werden. Höhere Werte bedeuten höhere
       Prioritäten.

       Auslagerungsbereiche werden gemäß ihrer Priorität reserviert,  solche  mit  der  höchsten  Priorität  als
       erste.  Ein  höher  priorisierter  Bereich  wird  zunächst  vollständig  genutzt,  bevor  ein Bereich mit
       niedrigerer Priorität verwendet wird. Sind mehrere Bereiche mit derselben Priorität  definiert  und  sind
       alle  Bereiche mit höherer Priorität bereits vollständig genutzt, so werden neue Speicherseiten unter den
       gleich priorisierten Bereichen reihum reserviert.

       Ab Linux 1.3.6 befolgt der Kernel diese Regeln gewöhnlich, aber es gibt auch Ausnahmen.

RÜCKGABEWERT

       Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben  und  errno  gesetzt,  um  den
       Fehler anzuzeigen.

FEHLER

       EBUSY  (Für  swapon()) Der angegebene pfad wird bereits als Auslagerungsbereich für Hauptspeicherbereiche
              benutzt.

       EINVAL Die Datei pfad existiert, bezieht sich aber weder auf eine normale Datei noch auf ein Blockgerät;

       EINVAL (swapon()) Der angegebene Pfad enthält keine gültige Auslagerungssignatur oder  befindet  sich  in
              einem speicherinternen Dateisystem wie beispielsweise tmpfs(5).

       EINVAL (seit Linux 3.4)
              (swapon()) Ein unzulässiger Schalter wurde in swapflags angegeben.

       EINVAL (swapoff()) pfad ist derzeit kein Auslagerungsbereich.

       ENFILE Die systemweite Beschränkung für die Gesamtzahl offener Dateien wurde erreicht.

       ENOENT Die Datei pfad existiert nicht.

       ENOMEM Das  System verfügt nicht über ausreichenden Speicher, um das Auslagern von Hauptspeicherbereichen
              zu starten.

       EPERM  Der Aufrufende verfügt nicht über die  Capability  CAP_SYS_ADMIN.  Alternativ  wird  die  maximale
              Anzahl  der  Auslagerungsdateien  für  Hauptspeicherbereiche  benutzt;  Lesen  Sie  die  folgenden
              ANMERKUNGEN.

STANDARDS

       Linux.

GESCHICHTE

       Das Argument swapflags wurde in Linux 1.3.2 eingeführt.

ANMERKUNGEN

       Die Partition oder der Pfad müssen mit mkswap(8) vorbereitet werden.

       Es gibt eine Obergrenze für die Anzahl der benutzbaren  Auslagerungsdateien  von  Hauptspeicherbereichen,
       die  in  der Kernel-Konstante MAX_SWAPFILES definiert wird. Vor Linux 2.4.10 hatte MAX_SWAPFILES den Wert
       8; seit Linux 2.4.10 hat sie den Wert 32. Seit Linux 2.6.18 ist die Grenze um  zwei  herabgesetzt  (daher
       30),  seit  Linux  5.19  wird  die  Grenze um 3 herabgesetzt (daher: 29), falls der Kernel mit der Option
       CONFIG_MIGRATION erstellt wurde (die zwei Einträge in der Auslagerungstabelle von  Hauptspeicherbereichen
       für die Seiten-Migrationsfunktionen von mbind(2) und migrate_pages(2) reserviert). Seit Linux 2.6.32 wird
       die  Grenze  ferner  um eins herabgesetzt, falls der Kernel mit der Option CONFIG_MEMORY_FAILURE erstellt
       wurde. Seit Linux 5.14 ist die Beschränkung weiter auf 4 reduziert,  falls  der  Kernel  mit  der  Option
       CONFIG_DEVICE_PRIVATE  gebaut  wurde.  Seit Linux 5.19 ist die Grenze weiter um 1 herabgesetzt, falls der
       Kernel mit der Option CONFIG_PTE_MARKER erstellt wurde.

       Verwerfen von Auslagerungsseiten von Hauptspeicherbereichen wurde in Linux 2.6.29 eingeführt, dann  wurde
       es  in  Linux  2.6.36  vom  Schalter  SWAP_FLAG_DISCARD  abhängig  gemacht,  wodurch immer noch die ganze
       Auslagerung von Hauptspeicherbereichen beim Aufruf von swapon() verworfen (»discard«) wird,  sogar,  wenn
       das Schalter-Bit nicht gesetzt ist.

SIEHE AUCH

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

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite wurde von Ralf Demmer <rdemmer@rdemmer.de>, Chris Leick
       <c.leick@vollbio.de>,    Mario    Blättermann    <mario.blaettermann@gmail.com>,     Helge     Kreutzmann
       <debian@helgefjell.de> und Joachim Schnitter <joachim.schnitter@software-logistik.de> erstellt.

       Diese  Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte  eine  E-Mail  an  die
       Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.

Linux man-pages 6.9.1                              2. Mai 2024                                         swapon(2)