it-swarm.com.de

Der beste Weg, um Swap unter Linux zu deaktivieren

Ich verwende einen benutzerdefinierten kompilierten 3.18.9-Kernel und frage mich, wie ich Swap auf dem System am besten deaktivieren kann. Ich benutze auch init, wenn es einen Unterschied macht.

Reicht es aus, die Swap-Zeile in /etc/fstab Zu kommentieren oder zu entfernen, um zu verhindern, dass Swap beim Booten funktioniert/gemountet wird, oder sollte ich den Kernel ohne Support for paging of anonymous memory (swap) neu kompilieren, um 100% sicher zu sein, dass er nicht aktiviert wird ?

Ich führe verschlüsselte Partitionen aus und möchte ein versehentliches Auslaufen auf die Festplatte verhindern. Meine Systemspezifikationen sind auch groß genug, um in einer Umgebung ohne Swap zu überleben.

57
user283167
  1. Identifizieren Sie konfigurierte Auslagerungsgeräte und -dateien mit cat /proc/swaps.
  2. Deaktivieren Sie alle Auslagerungsgeräte und Dateien mit swapoff -a.
  3. Entfernen Sie alle übereinstimmenden Referenzen in /etc/fstab.
  4. Optional: Zerstören Sie alle in Schritt 1 gefundenen Swap-Geräte oder -Dateien, um deren Wiederverwendung zu verhindern. Aufgrund Ihrer Bedenken hinsichtlich des Verlusts vertraulicher Informationen möchten Sie möglicherweise eine Art sicheres Löschen in Betracht ziehen.

Man Swapoff

85
Aaron Copley

Wenn Sie wirklich sicher sind, dass Sie das Austauschen deaktivieren möchten (Hinweis: Dies wird nicht empfohlen, auch wenn Sie ziemlich sicher sind, dass physisches RAM ist mehr als genug), folgen Sie diesen Schritten:

  1. lauf swapoff -a: Dadurch wird der Swap sofort deaktiviert
  2. entfernen Sie alle Swap-Einträge aus /etc/fstab
  3. reboot das System. Wenn der Tausch weg ist, gut. Wenn es aus irgendeinem Grund immer noch hier ist, mussten Sie die Swap-Partition entfernen. Wiederholen Sie die Schritte 1 und 2 und entfernen Sie anschließend mit fdisk oder parted die (jetzt nicht verwendete) Swap-Partition. Gehen Sie hier sehr vorsichtig vor: Das Entfernen der falschen Partition hat katastrophale Auswirkungen!
  4. reboot
11
shodanshok

Früher war es so, dass nur Partitionen in /etc/fstab wurden automatisch verwendet, systemd kann dies jedoch geringfügig ändern. Möglicherweise müssen Sie Folgendes tun:

systemctl mask dev-sdXX.swap

(sdXX ändern) zu Ihrer real formatierten Swap-Partition, was die Frage aufwirft, warum Sie eine Swap-Partition haben, wenn Sie nicht möchten, dass sie verwendet wird ...

Wenn Sie systemd nicht verwenden, entfernen Sie die Swap-Einträge aus /etc/fstab sollte ausreichen (soweit ich weiß).

Vielleicht besteht die wirkliche Lösung darin, die Swap-Partitionen zu entfernen, damit sie nicht versehentlich verwendet werden. Um die Swap-Partitionen zu entfernen, würde ich fdisk verwenden, um den Partitionstyp von Swap in etwas anderes zu ändern und dann die Partition neu zu formatieren oder Folgendes zu verwenden: dd if=/dev/zero of=/dev/old-swap-partition, um es auf Null zu setzen und seine Verwendung zu verhindern.

Siehe auch Einrichtung der Swap-Partition mit systemd einrichten.

11
Gregor

Auf Raspbian 1 (Buster) wäre die saubere Antwort:

So deaktivieren Sie es bis zum nächsten Neustart , wie in */etc/fstab* Angegeben:

Sudo /sbin/dphys-swapfile swapoff

So deaktivieren Sie den Swap beim Booten:

Sudo systemctl disable dphys-swapfile

(Es stellte sich heraus, dass ich diese Informationen nirgendwo finden konnte ...)

2
Michaël GENAY

Auf meiner Linux Mint Box (Version 19.3 (Tricia), basierend auf buntu 18.04 (Bionic Beaver)) ohne Swap-Partition oder ohne Swap hat systemctl diese Swap-Datei gemeldet .swap ist bei jedem Start fehlgeschlagen. Es könnte mit dem Befehl deaktiviert werden:

Sudo systemctl disable swapfile.swap

Die Datei swapfile.swap ist ein 'spezieller' Teil von systemd, über den Sie mit dem Befehl man systemd.special Im Menschen lesen können.

1
piotao

Wenn ich die Datei / etc/fstab auf Raspbian ansehe, wird ein Kommentar angezeigt

a swapfile is not a swap partition, no line here
  use dphys-swapfile swap[on|off] for that

Um die vorkonfigurierte Auslagerungsdatei vollständig zu deaktivieren, funktioniert dies jedoch einwandfrei:

swapoff -a
chmod -x /etc/init.d/dphys-swapfile
reboot

Diese Lösung sieht für mich etwas schnell und schmutzig aus. Sie können sie jedoch einfach wieder aktivieren mit:

chmod +x /etc/init.d/dphys-swapfile
reboot
0
Ilka31415