Zugriff auf verschlüsselte Dateisysteme

Mir ist es vor Kurzem passiert. Mein Debiansystem mit verschlüsseltem Datenträger ließ sich nicht mehr starten. Also habe ich den Datenträger ausgebaut und an ein Debian-Linux per USB-Adapter angeschlossen. Ich möchte in diesem Beitrag aufzeigen, wie man das System einbindet, auf die Partitionen Zugriff erhält und das System reparieren kann.

Die folgenden Befehle sind nur als Nutzer root möglich. Zuerst prüft man, welche Bezeichnung der verschlüsselte Datenträger erhalten hat. Unter Debian findet man die Daten in der Datei /var/log/messages. In diesem Fall ist /dev/sdb5 die verschlüsselte Partition. Zu Beginn wird die Partition entschlüsselt. Der folgende Aufruf fragt das Kennwort für den Schlüssel ab.

cryptsetup -v luksOpen /dev/sdb5 crypt

Jetzt teilen wir dem Volumenmagager (lvm) mit, dass er seine Daten aktualisieren soll. Mein logisches Laufwerk heißt netbook-vg.

vgchange -a y netbook-vg

Wir legen einen Einhängepunkt an und binden die Partition ein.

mkdir /tmp/disk
mount /dev/netbook-vg/root /tmp/disk

chroot-Umgebung

Das Dateisystem ist eingebunden, möchte man z.B. Systemdateien über den Paketmanager aktualisieren, wechselt man in die chroot-Umgebung. Vorher müssen noch einige Systempartitionen eingebunden werden, damit alles funktioniert.

mount proc /tmp/disk/proc -t proc
mount sysfs /tmp/disk/sys -t sysfs
mount -B /dev /tmp/disk/dev
mount -B /dev/pts /tmp/disk/dev/pts
mount -B /run /tmp/disk/run

chroot /tmp/disk/

Sind die Arbeiten beendet, verläßt man mit exit die Umgebung. Jetzt müssen die zuvor eingehängten Systempartitionen wieder entfernt werden.

umount /tmp/disk/dev/pts
umount /tmp/disk/dev
umount /tmp/disk/run
umount /tmp/disk/proc
umount /tmp/disk/sys
umount /tmp/disk

Dateisystem aushängen

Zum Schluß ist die Partition unbedingt sauber zu auszuwerfen. Dazu dienen die beiden letzten Befehle. Damit kein Datenverlust auftritt, sollte man dies unbedingt durchführen.

vgchange -a n netbook-vg
cryptsetup luksClose crypt