GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Warum wird das verschlüsselte LVM-Volume (luks-Gerät) beim Booten nicht gemountet?

Ich versuche, ein verschlüsseltes Volume gemäß dieser Anleitung einzurichten

Alles ist eingerichtet, aber das Mounten des verschlüsselten Volumes schlägt beim Booten mit folgendem Fehler fehl:

fsck.ext4:Keine solche Datei oder Verzeichnis beim Versuch,
/dev/mapper/safe_vault zu öffnen Möglicherweise nicht vorhandenes Gerät?

Das ist mein Setup:

crypttab

$ sudo cat /etc/crypttab
safe_vault  /dev/disk/by-uuid/d266ae14-955e-4ee4-9612-326dd09a463b  none    luks

HINWEIS:

Die uuid kommt von:

$ sudo blkid /dev/mapper/<my_logical_group>-safe_vault 
/dev/mapper/<my_logical_group>-safe_vault: UUID="d266ae14-955e-4ee4-9612-326dd09a463b" TYPE="crypto_LUKS" 

fstab

$ sudo cat /etc/fstab | grep safe_vault
/dev/mapper/safe_vault      /safe-vault     ext4    defaults    0 2

Was ich getan habe…

Also ging ich auf die Website des Entwicklers und in den häufig gestellten Fragen zu häufigen Problemen heißt es:

Prüfen Sie, ob Sie den Device Mapper und das Crypt Target in Ihrem
Kernel haben. Die Ausgabe von „dmsetup-Ziele“ sollte ein „crypt“-Ziel auflisten.
Wenn es nicht vorhanden ist oder der Befehl fehlschlägt, fügen Sie Device Mapper und
crypt-target zum Kernel hinzu.

Das habe ich getan, es stellt sich heraus, dass ich keine crypt habe Ziel:

$ sudo dmsetup targets
striped          v1.4.1
linear           v1.1.1
error            v1.0.1

Das Problem ist, dass ich nicht weiß, wie ich ein solches Ziel hinzufügen soll.

Ich denke, das (ohne die crypt target) verursacht möglicherweise das crypttab beim Booten ignoriert werden soll und somit versucht wird, den Eintrag in fstab einzuhängen schlägt fehl, weil cryptsetup hat mein verschlüsseltes Volume nicht /dev/mapper/safe_vault zugeordnet .

HINWEIS:

Das verschlüsselte Volume kann erfolgreich manuell zugeordnet, gemountet und beschrieben werden:

$ sudo cryptsetup luksOpen /dev/mapper/<my_logical_group>-safe_vault safe_vault
Enter passphrase for /dev/mapper/<my_logical_group>-safe_vault: 

$ sudo mount /dev/mapper/safe_vault /safe_vault

So sieht es nach dem Mapping und Mounten aus:

$ sudo lsblk -o name,uuid,mountpoint
NAME                                  UUID                                   MOUNTPOINT
sda                                                                          
├─sda1                                28920b00-58d3-4941-889f-6249357c56ee   
├─sda2                                                                       
└─sda5                                uhBLE7-Kcfe-RMi6-wrlX-xgVh-JfAc-PiXmBe 
  ├─<my_logical_group>-root (dm-0)       1bed9027-3cf7-4f8d-abdb-28cf448fb426   /
  ├─<my_logical_group>-swap_1 (dm-1)     a40c16c4-7d0c-46d7-afc8-99ab173c20bb   [SWAP]
  ├─<my_logical_group>-home (dm-2)       e458abb7-b263-452d-8670-814fa737f464   /home
  ├─<my_logical_group>-other (dm-3)      0a1eec42-6534-46e1-8eab-793d6f8e1003   /other
  └─<my_logical_group>-safe_vault (dm-4) d266ae14-955e-4ee4-9612-326dd09a463b   
    └─safe_vault (dm-5)               9bbf9f47-8ad8-43d5-9c4c-dca033ba5925   /safe-vault
sr0  

AKTUALISIEREN

  • Es stellt sich heraus, dass ich die crypt habe target, sondern damit es mit dmsetup targets angezeigt wird Ich musste zuerst cryptsetup luksOpen <my-device>
  • Ich habe versucht, UUID zu verwenden s stattdessen gemäß der Antwort von @Mikhail Morfikov, aber es schlägt immer noch beim Booten fehl.

Ich denke immer noch, dass das Problem darin besteht, dass das verschlüsselte Volume irgendwie nicht zugeordnet wird (geöffnet mit cryptsetup luksOpen ) beim Booten also kein /dev/mapper/<safe_vault or UUID> existiert, dann schlägt der Versuch, es zu mounten (fstab), fehl.

AKTUALISIERUNG 2

Es stellt sich heraus, dass ich nicht über die erforderlichen Skripte zum Mounten beim Booten verfügte. Siehe den Hinweis in der Antwort von @MikhailMorfikov.

Akzeptierte Antwort:

Sie müssen auf UUIDs achten. Dies ist zum Beispiel meine Konfiguration:

# lsblk -o name,uuid,mountpoint
├─sda2                         727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0)          P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi
│   ├─debian_crypt-swap (dm-1) 3f9f24d7-86d1-4e21-93e9-f3c181d05cf0   [SWAP]
│   ├─debian_crypt-tmp (dm-2)  93fc8219-f985-45fb-bd5c-2c7940a7512d   /tmp
│   ├─debian_crypt-home (dm-3) 12e8566c-8f0f-45ec-8524-6d9d9ee91eae   /home
│   └─debian_crypt-root (dm-4) 9685570b-4c9e-43ea-815e-49d10dc7a1bf   /

Ich habe eine verschlüsselte Partition (sda2) mit 4 Volumes (LVM). Was ich brauche, ist, zwei UUIDs in den richtigen Dateien festzulegen. Die sda2-UUID geht zu /etc/crypttab und die Volumen-UUID (zum Beispiel debian_crypt-root) geht zu /etc/fstab .

Also wäre es:

# cat /etc/crypttab
sda2_crypt              UUID=727fa348-8804-4773-ae3d-f3e176d12dac   none        luks

# cat /etc/fstab
UUID=9685570b-4c9e-43ea-815e-49d10dc7a1bf       /               ext4    defaults,errors=remount-ro              0 1

Nach dem Ändern der /etc/crypttab Datei müssen Sie initramfs neu erstellen:

# update-initramfs -u -k all

HINWEIS

Verwandt:Startzeit des Prozesses mit Zeitzone?

Das Paket cryptsetup muss installiert werden, da es über Startskripte verfügt, die das automatische Mounten verschlüsselter Volumes beim Booten unterstützen.

Warum sich die Mühe machen, das zu erwähnen? Nun, wenn Sie LVM während der Installation einrichten, installiert Debian Wheezy die Pakete cryptsetup-bin, libcryptsetup4 und lvm2 aber nicht cryptsetup , daher haben Sie die Tools zum Einrichten von LVM- und LUKS-Geräten, aber nicht die Skripte, die zum Mounten von LUKS-Geräten beim Booten erforderlich sind. Diese kommen im Paket cryptsetup.


Linux
  1. Warum wird das Bash-Skript nach der Ausführung nicht beendet?

  2. CentOS / RHEL :So mounten Sie Dateisysteme mit UUID

  3. Ubuntu:Ändern der Stripe-Größe eines Stripe-LVM-Volumes

  4. Verwenden Sie fsck, um LUKS-verschlüsselte Festplatten zu überprüfen und zu reparieren?

  5. So finden Sie die physischen Volumes, die ein logisches Volume in LVM enthalten

Warum jetzt die beste Zeit ist, GNOME zu verwenden

Konfigurieren Sie Systeme so, dass Dateisysteme beim Booten mit einer universell eindeutigen ID (UUID) oder einem Label gemountet werden – RHCSA Objective Preparation

Wie wird eine verschlüsselte Truecrypt-Partition immer am selben Punkt gemountet?

Die letzte Einhängezeit des Superblocks liegt in der Zukunft

Best Practice zum Sichern eines LUKS-verschlüsselten Geräts

Überprüfen Sie den Bereitstellungspunkt des logischen Volumes (Befehlszeile)