Swap verschwand nach dem Neustart

9

Ich habe Kubuntu 14.04 mit einem verschlüsselten Home-Verzeichnis installiert. Obwohl ich während der Installation einen Swap eingerichtet hatte, war der Swap-Bereich nach der Installation nicht vorhanden. Dies ist vielen Menschen passiert, irgendwo scheint es einen Fehler zu geben. Ich habe gegoogelt und hier eine Lösung gefunden .

Ich habe die dortigen Schritte befolgt und diejenigen ausgelassen, die mit dem Lebenslauf zu tun hatten, da dies bei meiner Installation sowieso deaktiviert ist. Also habe ich im Wesentlichen getan:

sudo swapoff -a (turns off swap)
comment existing swap configuration in /etc/crypttab
comment existing swap configuration in /etc/fstab
re-format swap partition with gparted as linux-swap
sudo mkswap /dev/sdXX 
sudo swapon /dev/sdXX 
sudo ecryptfs-setup-swap 

Dann hatte ich einen funktionierenden Tausch und war glücklich, bis ich meinen Laptop neu startete und wieder auf dem ersten Platz war. Wenn man sich die Partition mit gparted ansieht, heißt es, dass das Dateisystem für die (frühere) Swap-Partition unbekannt ist und ich natürlich keinen Swap-Speicherplatz zur Verfügung habe.

Meine Frage lautet nun: Warum hat die Dateisystemformatierung (als Linux-Swap) den Neustart nicht überstanden? Kann ich etwas dagegen tun?

Wenn ich blkid mache, wird die Swap-Partition überhaupt nicht angezeigt, daher scheint sich mein Problem von dieser Frage zu unterscheiden .

Bearbeiten: Ich arbeite noch daran, also habe ich das obige Verfahren erneut ausgeführt. Danach sieht / etc / crypttab folgendermaßen aus:

cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256

plus einige Zeilen, die auskommentiert sind. Und / etc / fstab enthält diese Zeile:

/dev/mapper/cryptswap1 none swap sw 0 0

Beide neuen Zeilen sehen jedoch (abgesehen von der UUID) genauso aus wie die letzten beiden Zeilen. Ich habe also keine großen Hoffnungen, dass es beim Neustart bleibt. Gparted zeigt nun die Partition, die ich als Linux-Swap verwende. (Vor dem Neustart) Auch blkid gibt diese Zeile an:

/dev/sda7: UUID="xxxx" TYPE="swap" 

Ich habe den Swap getestet und er funktioniert, dh ich habe ein Programm gestartet, das viel Speicher benötigt, und überprüft, wie viel in den Swap auf dem Systemmonitor geladen wurde.

Edit2: Es stellt sich heraus, dass 3 nicht die magische Zahl ist, die dieses Problem behebt. Der Inhalt der beiden Dateien bleibt unverändert, blkid zeigt die Zeile mit / dev / sda7 nicht mehr an und gparted zeigt die Swap-Partition als "unbekannt" an.

Vorschläge, die mir zeigen, was ich mir ansehen oder was ich sonst noch versuchen könnte, sind wirklich willkommen. Meine Problemumgehung besteht im Moment darin, einfach nicht neu zu starten, aber manchmal, wenn es ein Update gibt, möchte mein Laptop wirklich neu starten.

Edit3: Gibt es wirklich nichts anderes, was man versuchen könnte, dies zu beheben? Irgendwelche Befehle, die ich versuchen könnte? Gibt es eine Ausgabe, die ich mir ansehen könnte?

fifaltra
quelle

Antworten:

8

Dies geschieht beim Neustart nicht. Nachdem Sie Ihr Setup (Ausführen ecryptfs-setup-swap) abgeschlossen haben, gpartedkehren Sie zu der Tabelle zurück, laden Sie sie neu, öffnen Sie ein Terminal und führen Sie Folgendes aus : sudo fdisk -l /dev/sda. Sie werden feststellen, dass diese Partition immer noch Id 83Linux Swap hat und im unbekannten Format vorliegt .

Warum ist das so?! Es wurde bereits eine verschlüsselte Partition.

In /etc/fstab:

  • Alte Swap-Partition wurde kommentiert.
  • Neu zugeordnete eingefügt:

    /dev/mapper/cryptswap1 none swap sw 0 0
    

Das ist okay.

In /etc/crypttab:

  • Eine neue Zeile wurde hinzugefügt, um den Swap abzubilden:

    cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    

Aber hier stimmt etwas nicht. Hat eine verschlüsselte Partition eine UUID (unverschlüsselt)? !!!

  1. Stellen Sie den Entwicklungspfad wie in diesem Beispiel direkt ein:

    cryptswap1 /dev/sdXX /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    
  2. Starten Sie neu, dann ist der Swap aktiviert.

Übrigens sollte dies als Fehler gemeldet werden. ecryptfs-setup-swapsollte den Gerätepfad anstelle von uuid verwenden.

Update: Ich konnte dieselbe beantwortete Frage finden, die auch den Fehlerbericht enthält.

Es enthält die kanonische Antwort durch Hinzufügen einer offset=in den Crypttab-Optionen.

user.dz
quelle
Es tut mir leid, dass ich so lange gebraucht habe, um dies zu erreichen. Ich bin ein bisschen paranoid in Bezug auf Backups, also wollte ich zuerst ein Backup erstellen ... Ich habe versucht, was Sie vorgeschlagen haben, einmal neu gestartet, kein Swap, erneut neu gestartet, Swap funktioniert, gedreht aus, wieder gebootet, kein Swap, wieder neu gestartet, kein Swap ... sehr seltsam, die letzten beiden Male gab es auch eine Nachricht während des Bootens darüber, dass / dev / mapper / cryptswap nicht bereit ist
fifaltra
Leider funktioniert das bei mir nicht, der Tausch verschwindet nach einigen Neustarts immer noch. Die Offset-Methode funktioniert auch nicht
Fifaltra
und mit Offset-Methode meine ich, was in der Antwort auf die verknüpfte Frage beschrieben ist und was im Fehlerbericht beschrieben ist ...
Fifaltra
@fifaltra, Möglicherweise ein separater Fehler, aber ich werde versuchen, ob ich ihn reproduzieren oder eine Lösung finden kann.
user.dz
@fifaltra, da eine Problemumgehung sudo /etc/init.d/cryptdisks restartnach dem Booten für mich funktioniert (ich habe 1 No-Swap in 10 Neustarts erhalten).
user.dz
-2

Sie können dies vom Terminal aus versuchen:

 sudo -i
 umount -a
 gedit /etc/fstab

und geben Sie dies unten ein:

 uuid   name   mount  type
 xxxxx  swap   /       sw   sw   errors=noremount   0

und geben Sie dies dann in das Terminal ein:

 mount -a

und dann gpart verwenden und den Swap Drive Swap / einstellen. und es könnte auf diese Weise gut funktionieren.

Michael
quelle