Die Installation eines Linux auf eine mit LUKS verschlüsselte und per LVM partitionierte Festplatte erfordert im Falle eines defekten Grub Bootloaders einige umfangreichere Vorbereitungen um Grub zu reparieren bzw. neu zu installieren. Die meisten Werkzeuge wie Rescatux oder Supergrubdisk setzen eine unverschlüsselte und nicht per LVM partitionierte Festplatte voraus und funktionieren daher gar nicht oder fehlerhaft.
Die einzelnen Schritte der o.g. Werkzeuge müssen nur um einige Punkte ergänzt werden :
- Installation des dmcrypt Mappers für LUKS Funktionalität
- Manuelles entschlüsseln und laden der LVM Partitionen
- Manuelles mounten der LVM Partitionen
Dem entsprechend müssen für die Wiederstellung oder Reparatur des Grub Bootloaders für LVM Installation auf LUKS Basis folgende Schritte ausgeführt werden :
- Download Live DVD Image für Chroot Umgebung u.a. Werkzeuge
1wget https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-10.0.0-amd64-gnome.iso - Live DVD Image auf USB Stick flashen ( Auflistung der USB Geräte : “lsusb” oder “sudo lsblk” ), (sdx = USB Stick Device )
– GUI (Linux / Windows): https://www.balena.io/etcher/
– Terminal Befehl (Linux):
1sudo cp debian-live-10.0.0-amd64-gnome.iso /dev/sdX - Boot Live DVD Image
- Installation und Start benötigter Pakete und Dienste
12sudo apt-get install lvm2 openssh-serversudo systemctl start sshd - Erstellen eines Passworts für Remote SSH Verbindung ( nicht nötig bei Direktzugriff auf das System )
1sudo passwd user - LUKS Partition entsperren und mit LVM mounten ( Auflistung der USB Geräte : “lsusb” oder “sudo lsblk” ), ( /dev/sd<LUKS> = LUKS encrypted Partition )
1cryptsetup luksOpen /dev/sd<LUKS> lvm - System-, und LVM Partitionen in Chroot Umgebung ( /mnt ) mounten ( Auflistung der Partitionen “sudo lsblk” ),
12mount /dev/mapper/System-system /mntmount /dev/sda1 /mnt/boot - Livesystem Umgebung in Chroot Umgebung mounten
1for dir in /dev /dev/pts /proc /sys /run; do sudo mount --bind $dir /mnt/$dir; done - Chroot Umgebung betreten
1sudo chroot /mnt /bin/bash - Grub aktualisieren und installieren ( sdX = Boot Festplatte )
12update-grubgrub-install /dev/sdX - Chroot Umgebung verlassen und System Neu starten
12exitsudo reboot
Tipps und Tricks
Grub Installation(en) des gesamten System auflisten :
1 |
sudo fdisk -l 2>/dev/null | egrep "Disk /|/dev/" | sed "s#^/dev/#Part /dev/#" | awk '{print $2}' | sed 's/://' | xargs -n1 -IX sudo sh -c "hexdump -v -s 0x80 -n 2 -e '2/1 \"%x\" \"\\n\"' X | xargs -n1 -IY sh -c \"case \"Y\" in '48b4') echo X: GRUB 2 v1.96 ;; 'aa75' | '5272') echo X: GRUB Legacy ;; '7c3c') echo X: GRUB 2 v1.97 oder v1.98 ;; '020') echo X: GRUB 2 v1.99 ;; *) echo X: Kein GRUB Y ;; esac\"" |
by Speefak| wiki.ubuntuusers.de| www.ubuntuusers.de