Scroll to navigation

MKSWAP(8) System-Administration MKSWAP(8)

BEZEICHNUNG

mkswap - einen Linux-Auslagerungsspeicher einrichten

ÜBERSICHT

mkswap [options] device [blocks]

mkswap [options] --size size --file file

BESCHREIBUNG

mkswap sets up a Linux swap area on a device or in a file.

Das Argument Gerät ist üblicherweise eine Festplattenpartition (etwa /dev/sdb7), kann aber auch eine Datei sein. Der Linux-Kernel achtet nicht auf Partitionskennungen, aber viele Installationsskripte setzen voraus, dass Partitionen des hexadezimalen Typs 82 (LINUX_SWAP) Auslagerungspartitionen sind. (Warnung: Solaris verwendet diesen Typ ebenfalls. Seien Sie vorsichtig, um Ihre Solaris-Partitionen nicht zu zerstören.)

The blocks parameter is superfluous but retained for backwards compatibility. (It specifies the desired size of the swap area in 1024-byte blocks. mkswap will use the entire partition or file if it is omitted. Specifying it is unwise - a typo may destroy your disk.)

Nach dem Anlegen des Auslagerungsbereiches müssen Sie den Befehl swapon(8) ausführen, um den Bereich nutzen zu können. Üblicherweise werden Auslagerungsbereiche auch in der Datei /etc/fstab aufgelistet, so dass sie beim Systemstart mittels des Befehls swapon -a innerhalb eines Skriptes in Betrieb genommen werden können.

WARNUNG

Der Auslagerungs-Header wirkt sich nicht auf den ersten Block aus. Ein Bootloader oder eine Laufwerksbezeichnung können sich dort befinden, aber diese Konstellation ist nicht empfehlenswert. Es ist besser, eine separate Partition für einen Linux-Auslagerungsbereich zu verwenden.

mkswap, like many others mkfs-like utils, erases the first partition block to make any previous filesystem invisible.

Allerdings verweigert mkswap das Löschen des ersten Blocks auf einem Gerät mit einer Bezeichnung (SUN, BSD, ...).

OPTIONEN

-c, --check

überprüft das Gerät (falls es sich um ein blockorientiertes Gerät handelt) auf fehlerhafte Blöcke, bevor der Auslagerungsbereich angelegt wird. Falls fehlerhafte Blöcke gefunden werden, wird deren Anzahl ausgegeben.

-F, --file

Create a swap file with the appropriate file permissions and populated blocks on disk.

-f, --force

erzwingt die Ausführung, selbst wenn der Befehl unlogisch wäre. Dies erlaubt die Erstellung eines Auslagerungsbereiches, der größer als die Datei oder die Partition ist, auf der er sich befinden soll.

Außerdem verweigert mkswap mit dieser Option das Löschen des ersten Blocks auf einem Gerät mit einer Partitionstabelle.

-q, --quiet

unterdrückt Ausgabe- und Warnmeldungen.

-L, --label Bezeichnung

gibt eine Bezeichnung für dieses Gerät an, wodurch die Aktivierung mit swapon(8) anhand dieser Bezeichnung möglich ist.

--lock[=Modus]

verwendet eine exklusive BSD-Sperre für das Gerät oder die Datei, auf dem/der es agiert. Das optionale Argument Modus kann yes, no (oder 1 und 0) oder nonblock sein. Falls das Argument Modus weggelassen wird, wird standardmäßig yes angenommen. Diese Option setzt die Umgebungsvariable $LOCK_BLOCK_DEVICE außer Kraft. Standardmäßig wird überhaupt keine Sperre gesetzt, dies wird aber empfohlen, um Kollisionen mit *systemd-udevd>(8) oder anderen Werkzeugen zu vermeiden.

-p, --pagesize Größe

gibt die zu verwendende Größe der Seite (in Bytes) an. Diese Option ist normalerweise nicht erforderlich, da mkswap die Größe vom Kernel erhält.

-U, --uuid UUID

gibt die zu verwendende UUID an. Standardmäßig wird eine UUID erzeugt. Das Format der UUID ist eine Reihe von Hexadezimalzahlen, die durch Bindestriche getrennt sind, wie folgt: "c1b9d5a2-f162-11cf-9ece-0020afc76f16". Der UUID-Parameter kann auch einer der folgenden sein:

clear

leert die UUID des Dateisystems.

random

erzeugt zufallsbasiert eine neue UUID

time

erzeugt zeitbasiert eine neue UUID

-e, --endianness BYTEREIHENFOLGE

gibt die zu verwendende BYTEREIHENFOLGE an, gültige Argumente sind native, little oder big. Die Vorgabe ist native.

-o, --offset Versatz

gibt den Versatz an, wo der Auslagerungsbereich geschrieben werden soll.

-s, --size Größe

Specify the size of the created swap file in bytes and may be followed by a multiplicative suffix: KiB (=1024), MiB (=1024*1024), and so on for GiB, TiB, PiB, EiB, ZiB and YiB (the "iB" is optional, e.g., "K" has the same meaning as "KiB"). If the file exists and is larger than size, it will be truncated to this size. This option only makes sense when used with --file.

-v, --swapversion 1

gibt die Version von swap-space an. Diese Option ist gegenwärtig wirkungslos, da die alte Option -v 0 obsolet ist und nun nur noch -v 1 unterstützt wird. Der Kernel unterstützt das swap-space-Format Version 0 seit der Linux-Version 2.5.22 nicht mehr (Juni 2002). Die neue Version 1 wird seit 2.1.17 unterstützt (August 1998).

--verbose

aktiviert die ausführliche Ausgabe. Mit dieser Option gibt mkswap mehr Details zu während der Einrichtung des Auslagerungsbereichs erkannten Problemen aus.

-h, --help

zeigt einen Hilfetext an und beendet das Programm.

-V, --version

zeigt Versionsinformationen an und beendet das Programm.

UMGEBUNGSVARIABLEN

LIBBLKID_DEBUG=all

aktiviert die Debug-Ausgabe für libblkid.

LOCK_BLOCK_DEVICE=<Modus>

verwendet eine exklusive BSD-Sperre. Der Modus ist »1« oder »0«. Siehe --lock für weitere Details.

ANMERKUNGEN

Die maximal sinnvolle Größe eines Auslagerungsbereiches hängt von der Architektur und der Kernel-Version ab.

Die maximale Anzahl der addressierbaren Seiten im Header eines Auslagerungsbereiches ist 4294967295 (vorzeichenlose 32-Bit-Ganzzahl). Der verbleibende Platz im Auslagerungsgerät wird ignoriert.

Gegenwärtig erlaubt Linux 32 Auslagerungsbereiche. Die in Betrieb befindlichen Auslagerungsbereiche sind in der Datei /proc/swaps zu sehen.

mkswap refuses areas smaller than 10 pages.

Falls Sie nicht wissen, welche Speicherseitengröße Ihr Rechner verwendet, können Sie diese mit getconf PAGESIZE ermitteln.

Um eine Auslagerungsdatei einzurichten, ist es notwendig, diese Datei zu erzeugen, bevor sie mit mkswap initialisiert wird, beispielsweise mit dem Befehl

# dd if=/dev/zero of=swapfile bs=1MiB count=$((8*1024))

um eine 8 GiB-Auslagerungsdatei zu erstellen.

Bitte lesen Sie die Hinweise in swapon(8) zu den Einschränkungen der Verwendung von Auslagerungsdateien (Löcher, Vorzuweisungen und Copy-on-Write-Probleme).

SIEHE AUCH

fdisk(8), swapon(8)

FEHLER MELDEN

Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf <https://github.com/util-linux/util-linux/issues>.

VERFÜGBARKEIT

Der Befehl mkswap ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv <https://www.kernel.org/pub/linux/utils/util-linux/> heruntergeladen werden kann.

2024-04-27 util-linux 2.40