Wie kann die Swap-Nutzung eingeschränkt werden?

Wie kann die Swap-Nutzung eingeschränkt werden?

Ich möchte, dass mein Computer automatisch in den Ruhezustand wechselt, wenn die USV auf Batteriebetrieb umschaltet. Daher benötige ich jederzeit genügend freien Swap-Speicherplatz. Wenn ich die Swap-Partition jedoch aktiviere, kann sie sogar direkt vor dem Ruhezustand von Speicherseiten belegt werden.

Die einzige Lösung, die ich gefunden habe, ist, das Paging komplett zu /proc/sys/vm/swappinessdeaktivieren 0. Aber das ist nicht die beste Option.

Ist es möglich, die maximale Swap-Nutzung in Bytes anzugeben?

Antwort1

cat /proc/sys/vm/swappiness
0

Bedeutet, dass Swapping vermieden wird, sofern es nicht unbedingt notwendig ist (RAM ist voll). Swappiness nimmt Werte zwischen an 0-100.

So machen Sie die Änderung dauerhaft: Aktualisieren Sie /etc/sysctl.confden Computer und starten Sie ihn neu:

vm.swappiness = 10

Sie können die Swap-Größe nicht in Bytes konfigurieren, aber Swap-Größe 10bedeutet, dass der Swap-Bereich verwendet wird, wenn der RAM zu 90 % voll ist. Die Größe des Swap-Bereichs wird während der Systeminstallation angegeben. Um dies zu ändern, müssen Sie die Partitionsgröße ändern. Die im Swap-Bereich belegte Menge hängt von den RAM-Zuweisungsanforderungen der von Ihnen ausgeführten Software ab.

Antwort2

Die einzige Lösung, die ich gefunden habe, ist die Verwendung eines SwapDateiSie können es in jeder beliebigen Größe erstellen, beispielsweise ein paar Gigabyte, und es dann als Swap-Bereich mounten.

head -c 2G /dev/urandom > your.filename

Sie können den unten stehenden Code ändern, der eine verschlüsselte Auslagerungsdatei mit einem zufälligen Schlüssel erstellt. Sie müssen die $filenameVariable natürlich auf den Speicherort Ihrer Auslagerungsdatei setzen.

filename="????"
head -c 4k /dev/urandom | sha512sum | cryptsetup open --type plain $filename /dev/mapper/swap
cryptsetup status /dev/mapper/swap
mkswap /dev/mapper/swap
swapon /dev/mapper/swap
sysctl vm.swappiness=0

Bearbeiten: Wenn Sie möchten, dass der Swap nach dem Neustart zugänglich ist, ersetzen Sie einfach den zufälligen Schlüssel durch einen bekannten Schlüssel.

verwandte Informationen