Ich habe gerade eine Installation von der 10.10 Desktop LiveCD durchgeführt und das Root-Volume zu einem LVM-LV gemacht.
Anscheinend wird dies nicht unterstützt; Ich habe es geschafft, indem ich die folgenden Schritte ausgeführt habe, bevor ich die GUI-Installations-App gestartet habe:
- Installieren des
lvm2
Pakets auf dem laufenden System - Erstellen einer LVM-Partition auf der Systemfestplatte
- Erstellen eines physischen Volumes, einer Volume-Gruppe und eines Root-LV mit den LVM-Tools. Ich habe auch eine zweite LV für erstellt
/var
; das halte ich nicht für relevant. - Erstellen eines Dateisystems (ext4) auf jedem der beiden LVs.
Nach diesen Schritten bot das GUI-Installationsprogramm die beiden LVs als Installationsziele an. Ich habe es gerne akzeptiert und auch /boot
eine primäre Partition eingerichtet, die von der LVM-Partition getrennt ist.
Die Installation schien reibungslos zu verlaufen, und ich habe überprüft, dass sowohl das Root- als auch das Var-Volume akzeptabel aussehende Verzeichnisstrukturen enthalten.
Das Booten schlägt jedoch fehl. Wenn ich richtig verstanden habe, was passiert ist, wurde ich in eine Busybox fallen gelassen, die im initrd-Dateisystem ausgeführt wird.
Obwohl ich noch nicht alle grub2-Dokumente durchgearbeitet habe, sieht es so aus, als ob der Eintrag, der versucht, mein neues System zu starten, korrekt ist:
menuentry 'Ubuntu, with Linux 2.6.35-22-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos3)'
search --no-floppy --fs-uuid --set $UUID_OF_BOOT_FILESYSTEM
linux /vmlinuz-2.6.35-22-generic root=/dev/mapper/$LVM_VOLUME_GROUP-root ro quiet splash
initrd /initrd.img-2.6.35-22-generic
}
Beachten Sie, dass $ VARS im Ist grub.cfg
durch die entsprechenden Werte ersetzt werden.
Ich habe wieder in die Live-CD gestartet und das initrd-Image in ein temporäres Verzeichnis entpackt. Es sieht so aus, als ob dem initrd-Image die LVM-Funktionalität fehlt. Wenn ich beispielsweise richtig lese /usr/share/initramfs-tools/hooks/lvm2
(installiert mit lvm2
auf dem livecd-gebooteten System, nicht vorhanden auf dem installierten), lvm
sollte sich eine ausführbare Datei in befinden /sbin
. das ist nicht der Fall.
Was ist der beste Weg, um diese Situation zu beheben? Mir ist klar, dass es einfacher wäre, nur die alternative Installations-CD zu verwenden, die anscheinend LVM unterstützt, aber ich möchte nicht warten, bis sie heruntergeladen ist, und dann neu installieren müssen.