wie kann ich das root device eindeutig identifizieren?

Dieses Thema im Forum "Installation & Basiskonfiguration" wurde erstellt von primitivwurzel, 28.12.2008.

  1. #1 primitivwurzel, 28.12.2008
    primitivwurzel

    primitivwurzel Jungspund

    Dabei seit:
    09.10.2008
    Beiträge:
    12
    Zustimmungen:
    0
    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:

    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
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 marcellus, 28.12.2008
    marcellus

    marcellus Kaiser

    Dabei seit:
    09.05.2007
    Beiträge:
    1.392
    Zustimmungen:
    0
    Normalerweise sollte ein Parameter wie "root=/dev/sdXX" reichen, das sollte mit den UUIDS keinen Unterschied machen.

    Ehrlichgesagt versteh ich das Problem das du hast nicht richtig.
     
  4. #3 primitivwurzel, 28.12.2008
    primitivwurzel

    primitivwurzel Jungspund

    Dabei seit:
    09.10.2008
    Beiträge:
    12
    Zustimmungen:
    0
    danke für die antwort :)
    das problem war eben das der trotz angabe der richtigen uuid einfach das andere system gebootet hat.
    aber das hat sich inzwischen mehr oder weniger erledigt, da ich das jetzt einfach alles mit in die initrd schreibe ;)
    dabei gibts nur ein bis zwei probleme:
    1. wie kann ich mit mdev (oder eine ähnlichen programm das sich leicht in die initrd integriegen lässt) das verzeichnis /dev/disk/by-uuid/ richtig füllen?
    2. wie kann ich dann am ende der initrd das system starten?
    ich hab das schon mit pivot_root und switch_root und chroot und so weiter probiert, aber irgendwas mache ich immer falsch

    wäre nett wenn ihr mir nochmal helfen könntet :)

    mfg primitivwurzel
     
  5. #4 marcellus, 29.12.2008
    marcellus

    marcellus Kaiser

    Dabei seit:
    09.05.2007
    Beiträge:
    1.392
    Zustimmungen:
    0
    Ich bild mir eher ein, dass der Parameter für das rootfilesystem "root=..." und nicht "real_root=" ist.
     
  6. #5 primitivwurzel, 30.12.2008
    Zuletzt bearbeitet: 31.12.2008
    primitivwurzel

    primitivwurzel Jungspund

    Dabei seit:
    09.10.2008
    Beiträge:
    12
    Zustimmungen:
    0
    okay, meine grub.conf sieht jetzt so aus:
    Code:
    default		1
    timeout		10
    splashimage	(hd0,0)/grub/splash.xpm.gz
    
    title 		Gentoo Linux 2.6.25-r9 (primitiv-extern)
    kernel 		(hd0,0)/kernel-2.6.25-gentoo-r9 vga=868 quiet ramdisk_size=15000 root=/dev/primitiv-extern/gentoo
    initrd		(hd0,0)/initrd.gz
    und meine linuxrc so:
    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 "Starting mdev"
    echo /bin/mdev > /proc/sys/kernel/hotplug
    mdev -s
    
    echo 'Mounting the USB-Stick to /mnt/stick'
    mount UUID="32900195-0e94-43ee-9751-92a77208a01f" /mnt/stick
    
    cryptdev=$(blkid|grep a10e2ef7-1162-496f-bbea-838c429f4167|dd bs=1 count=9 2>/dev/null)
    keyfile=primitiv-extern.key
    
    echo 'Opening the Luks-Partition (keyfile "'$keyfile'" from Stick)'
    cryptsetup luksOpen $cryptdev primitiv-extern --key-file /mnt/stick/$keyfile || cryptsetup luksOpen $cryptdev primitiv-extern || /bin/sh
    
    echo 'Unmounting the USB-Stick'
    umount /mnt/stick
    
    echo "Activating Volume-Groups"
    lvm vgscan
    lvm vgchange -ay
    
    echo "Mounting root"
    mount UUID="94c4ad29-771c-408c-add3-8b455cf3eaa3" /mnt/gentoo
    
    echo "Unmounting filesystems"
    umount /proc /sys
    
    echo "Changing Root Device"
    cd /mnt/gentoo
    pivot_root . initrd
    exec chroot . bin/bb -c 'exec /sbin/init' <dev/console >dev/console 2>&1
    
    echo "End of initrd"
    wenn ich jetzt boote, bekomme ich immer den fehler:
    Code:
    Usage: init 0123456SsQqAaBbCcUu
    bitte helft mir, ich weiß langsam echt nicht weiter, ich hab auch schon bei google geschaut aber irgendwie hilft das alles nichts.....
     
  7. #6 primitivwurzel, 31.12.2008
    primitivwurzel

    primitivwurzel Jungspund

    Dabei seit:
    09.10.2008
    Beiträge:
    12
    Zustimmungen:
    0
    so, es funktioniert jetzt, ich habe die busybox version zurückgestuft und ein bisschen was am script und der grub.conf geändert....
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

wie kann ich das root device eindeutig identifizieren?

Die Seite wird geladen...

wie kann ich das root device eindeutig identifizieren? - Ähnliche Themen

  1. Wie kann ich unter root arbeiten? bin totaler anfänger

    Wie kann ich unter root arbeiten? bin totaler anfänger: Hallo, ich bitte um Hilfe. Mein Problem: ich zeichne Fernsehsendungen auf einer WD USB - Festplatte auf. Die kann Windows 7 nicht lesen, der...
  2. sudo problem, kann nichts machen, auch nicht root werden!

    sudo problem, kann nichts machen, auch nicht root werden!: Hallo nochmal, nachdem ich auf meine letzte Frage den heißen Tip von Sam Linux bekommen habe, hab ich jeetzt ein kleines Problem damit: Für...
  3. hda -> sda, Root-System kann nicht gemountet werden

    hda -> sda, Root-System kann nicht gemountet werden: Hi, ich betreibe in einem System eine IDE- und zwei SATA-Platten. Auf der IDE ist das System drauf, die beiden SATA-Platten bilden ein RAID....
  4. kann auf ntfs nix schreiben (auch nicht als root)

    kann auf ntfs nix schreiben (auch nicht als root): hall, ich habe mir leztens die neue version von debian runtergeladen, installiert , xampp usw draufgemacht, alles kein problem, nur an der fstab...
  5. kann mich nicht mehr als root anmelden

    kann mich nicht mehr als root anmelden: hallo allerseits, habe hier gerade ein ernsthaftes problem. nach einem smart-update kann ich mich nicht mehr als root anmelden und keinen neuen...