P
primitivwurzel
Jungspund
hallo,
ich versuche jetzt schon seit ein paar tagen meine neue externe usb-festplatte bootfähig zu machen. diese habe ich mit lvm eingerichtet. die initramdisk habe ich bereits fertig:
daraufhin sollte das root-device gemountet werden, was ich im bootloader (grub) angebe
dieser grub ist auf der externen platte installiert.
dies klappt auch alles soweit ganz gut, aber das problem ist folgendes:
wenn ich jetzt mein normales system, auf meiner eigentlichen festplatte starten will mache ich das prinzipiell genau so.
es ist auch mit lvm eingerichtet und hat natürlich auch einen eigenen grub auf der platte. der eintrag dort sieht so aus:
also es ist wie gesagt prinzipiell alles gleich, nur das ich eben die UUID geändert habe.
das problem ist folgendes:
ich habe meine externe platte angeschlossen und will das system auf der festplatte starten
dazu wähle ich zunächst, dass ich von der internen platte booten will und es erscheint der grub von der internen platte.
dort wähle ich dann den oben geposteten eintrag aus und dann wird das system, was auf der externen platte ist gebootet.
wenn ich beim normal gestarteten system (interne platte) lvdisplay ausführe steht bei dem device wo das root-verzeichnis des system auf der internen platte liegt als block device 254:1, wenn ich das selbe bei dem fälschlich von der externen platte gestarteten system ausführe dann steht eben diese angabe (254:1 als block device) bei dem device wo das root-verzeichnis des system auf der externen platte liegt. ich vermute, dass das damit zusammen hängt.
hat irgendwer eine idee wie ich das root-device richtig identifizieren kann? am besten über einen kernel-parameter den ich bei grub angeben kann? dann brauch ich nicht die initrd ändern
mfg
primitivwurzel
ich versuche jetzt schon seit ein paar tagen meine neue externe usb-festplatte bootfähig zu machen. diese habe ich mit lvm eingerichtet. die initramdisk habe ich bereits fertig:
Code:
#!/bin/sh
echo "Start of initrd"
echo "Mounting filesystems"
mount -t proc none /proc
mount -t sysfs none /sys
echo "Waiting for USB-Devices (10 seconds)"
sleep 10
echo "Activating Volume-Groups"
lvm vgscan
lvm vgchange -ay
echo "Unmounting filesystems"
umount /proc /sys
echo "End of initrd"
daraufhin sollte das root-device gemountet werden, was ich im bootloader (grub) angebe
Code:
title Gentoo Linux 2.6.27-r7
kernel (hd0,1)/kernel-2.6.27-gentoo-r7 vga=868 quiet real_root=UUID=Av5W5U-dB42-Zlnh-DpvW-JpV6-vRXi-PoxIi9
initrd (hd0,1)/initrd.gz
dieser grub ist auf der externen platte installiert.
dies klappt auch alles soweit ganz gut, aber das problem ist folgendes:
wenn ich jetzt mein normales system, auf meiner eigentlichen festplatte starten will mache ich das prinzipiell genau so.
es ist auch mit lvm eingerichtet und hat natürlich auch einen eigenen grub auf der platte. der eintrag dort sieht so aus:
Code:
title Gentoo Linux 2.6.25-r9-initrd
kernel (hd0,0)/kernel-2.6.25-gentoo-r9.initrd real_root=UUID=r33f90-Jjyu-kZfp-ueR0-loY9-8oRF-dB47Ji vga=868 quiet
initrd (hd0,0)/initrd.gz
also es ist wie gesagt prinzipiell alles gleich, nur das ich eben die UUID geändert habe.
das problem ist folgendes:
ich habe meine externe platte angeschlossen und will das system auf der festplatte starten
dazu wähle ich zunächst, dass ich von der internen platte booten will und es erscheint der grub von der internen platte.
dort wähle ich dann den oben geposteten eintrag aus und dann wird das system, was auf der externen platte ist gebootet.
wenn ich beim normal gestarteten system (interne platte) lvdisplay ausführe steht bei dem device wo das root-verzeichnis des system auf der internen platte liegt als block device 254:1, wenn ich das selbe bei dem fälschlich von der externen platte gestarteten system ausführe dann steht eben diese angabe (254:1 als block device) bei dem device wo das root-verzeichnis des system auf der externen platte liegt. ich vermute, dass das damit zusammen hängt.
hat irgendwer eine idee wie ich das root-device richtig identifizieren kann? am besten über einen kernel-parameter den ich bei grub angeben kann? dann brauch ich nicht die initrd ändern
mfg
primitivwurzel