Meine vorherige Frage ergab die Befehle zum Hinzufügen einer verschlüsselten Auslagerungsdatei:
# One-time setup:
fallocate -l 4G /root/swapfile.crypt
chmod 600 /root/swapfile.crypt
# On every boot:
loop=$(losetup -f)
losetup ${loop} /root/swapfile.crypt
cryptsetup open --type plain --key-file /dev/urandom ${loop} swapfile
mkswap /dev/mapper/swapfile
swapon /dev/mapper/swapfile
Aber Arch Linux verwendet systemd und ich habe Probleme herauszufinden, wie systemd meine Auslagerungsdatei am besten automatisch aktivieren kann. systemd.swap schlägt vor, dass ich eine dev-mapper-swapfile.swap
Einheit haben sollte, die ungefähr so aussieht:
[Unit]
Description=Encrypted Swap File
[Swap]
What=/dev/mapper/swapfile
Das würde den swapon
Befehl ausführen . Ich bin mir jedoch nicht sicher, wie ich die vorbereitenden Befehle ausführen soll /dev/mapper/swapfile
. Ich nehme an, das dev-mapper-swapfile.swap
sollte eine Abhängigkeit von einer anderen Einheit deklarieren, aber ich bin mir nicht sicher, wie diese Einheit aussehen soll.
quelle
/dev/loopN
erzeugte vonlosetup -f
nicht unbedingt zwischen Stiefeln konsistent.cryptsetup open /swap.test swap
. Ich konnte es beim Booten nicht zum Laufen bringen (nur mit / etc / crypttab). Eine Einheit, die alles selbst mitExecStart
Anweisungen macht, sollte funktionieren. Vielleicht sollte dies systemd devs gemeldet werden.mkswap
. Da ich einen zufälligen Schlüssel verwende, muss die Auslagerungsdatei bei jedem Start neu initialisiert werden. Aber ich bin mir nicht sicher, wie ich das einrichten soll.Hier ist das Endergebnis, das ich basierend auf der Antwort von t-8ch gefunden habe .
Geben Sie dies ein
/etc/systemd/system/[email protected]
:Geben Sie dies ein
/etc/systemd/system/dev-mapper-swapfile.swap
:Einmaliges Setup (als Root), um die Swap-Datei zu erstellen, für zukünftige Starts zu aktivieren und sofort zu verwenden:
Die Größe im
fallocate
Befehl bestimmt, wie groß Ihre Auslagerungsdatei sein wird.Die
/etc/crypttab
Eingabe ist nicht erforderlich; Es ist nur ein Weg zu generieren[email protected]
. Sobald das erledigt ist, brauchen Sie es nicht mehr.quelle