• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Von externer Festplatte booten

blacklips

Hacker
Hallo ich habe openSuse10.2 auf einer externen USB-Festplatte habe ich WindowsXP, das Problem ist jetzt, dass Grub nicht startet, wenn die USB-Festplatte angeschlossen ist, aber auch sonst nichts passiert.
fdisk -l
Code:
linux-jli:/home/johannes # fdisk -l

Platte /dev/hda: 80.0 GByte, 80026361856 Byte
255 heads, 63 sectors/track, 9729 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/hda1   *           1        2088    16771828+   c  W95 FAT32 (LBA)
/dev/hda2            2089        3825    13952452+  83  Linux
/dev/hda3            3826        6465    21205800   83  Linux
/dev/hda4            6466        9729    26218080    f  W95 Erw. (LBA)
/dev/hda5            6466        6550      682731   82  Linux Swap / Solaris
/dev/hda6            6551        7828    10265503+  83  Linux
/dev/hda7            7829        9729    15269751   83  Linux

Platte /dev/sda: 80.0 GByte, 80026361856 Byte
255 heads, 63 sectors/track, 9729 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1   *           1         785     6305481   1b  Verst. W95 FAT32
/dev/sda2             786        9729    71842680    7  HPFS/NTFS
/dev/hda ist die interne Platte.
grub menu.lst
Code:
# Modified by YaST2. Last modification on Mo Aug  6 09:49:39 CEST 2007
default 0
timeout 8
gfxmenu (hd0,5)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 10.2
    root (hd0,5)
    kernel /boot/vmlinuz root=/dev/hda6 vga=791 acpi=force resume=/dev/hda5 splash=silent showopts
    initrd /boot/initrd

title Ubuntu, kernel 2.6.20-16-generic (/dev/hda2)
    root (hd0,1)
    kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=ee16a67a-ee0c-42f1-b7b3-ccd983782070 ro quiet splash acpi=force noapic locale=de_DE
    initrd /boot/initrd.img-2.6.20-16-generic
    quiet
    savedefault

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    rootnoverify (hd0,0)
    chainloader (hd0,0)+1

###Don't change this comment - YaST2 identifier: Original name: 2.6.18.8-0.5-default###
title 2.6.18.8-0.5-default
    initrd (hd0,5)/boot/initrd-2.6.18.8-0.5-default

title WindowsXP
    rootnoverify (hd0,0)
    chainloader (/dev/sda1,0)+1
Ich habe im BIOS das booten von USB-Devices aktiviert, aber es ändert nichts am Verhalten, kann man die externe Festplatte in die fstab fest einbinden, damit Grub sie erkennt?
Danke schonmal....
 

admine

Ultimate Guru
Einträge in der /etc/fstab und Grub haben überhaupt nichts miteinander zu tun.

Was mir an der menu.lst auffällt, sind deine Einträge für das Windows.
Wenn du von (hd0) das Linux bootest und Linux und Windows auf unterschiedlichen Platten liegen, wie soll dann das Booten von Windows auch mit (hd0) funktionieren?

Poste mal bitte eine /boot/grub/device.map
Evt. fehlt da /dev/sda völlig.

Ansonsten sollte ein Eintrag in deinem Fall für Windows so aussehen:
Code:
title Windows
    map (hd0) (hd1)
    map (hd1) (hd0)
    rootnoverify (hd1,0)
    chainloader (hd1,0)+1
 
OP
B

blacklips

Hacker
Was ich noch dazu sagen muss ist, dass auf /dev/hda1 ein Windows liegt, was aber wenn das andere läuft runterfliegt. Es sind zwei unterschiedliche Installationen, aber ich poste die Ausgabe, wenn ich wieder zu Hause bin.
Danke...
 
OP
B

blacklips

Hacker
cat /boot/grub/device.map
Code:
linux-jli:/boot/grub # cat device.map
(hd0)   /dev/hda
Wie muss denn der Code aussehen, den ich dort eintragen muss?
 

admine

Ultimate Guru
lips schrieb:
cat /boot/grub/device.map
Code:
linux-jli:/boot/grub # cat device.map
(hd0)   /dev/hda
Wie muss denn der Code aussehen, den ich dort eintragen muss?
Das solte da drin stehen:

Code:
(hd0)   /dev/hda
(hd1)   /dev/sda
 
OP
B

blacklips

Hacker
so hab jetzt nochmal alles mit Yast neu erstellt sieht jetzt folgendermaßen aus.
menu.lst
Code:
title openSUSE 10.2
    root (hd0,5)
    kernel /boot/vmlinuz root=/dev/hda6 vga=791    acpi=force resume=/dev/hda5 splash=silent showopts
    initrd /boot/initrd

title Ubuntu, kernel 2.6.20-16-generic (/dev/hda2)
    root (hd0,1)
    kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=ee16a67a-ee0c-42f1-b7b3-ccd983782070 ro quiet splash acpi=force noapic locale=de_DE
    initrd /boot/initrd.img-2.6.20-16-generic
    quiet
    savedefault

###Don't change this comment - YaST2 identifier: Original name: windows 1###
title windows 1
    rootnoverify (hd0,0)
    chainloader (hd0,0)+1

###Don't change this comment - YaST2 identifier: Original name: windows 2###
title windows 2
    rootnoverify (hd0,0)
    chainloader (hd1,1)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- openSUSE 10.2

###Don't change this comment - YaST2 identifier: Original name: 2.6.18.8-0.5-default###
title 2.6.18.8-0.5-default
    initrd (hd0,5)/boot/initrd-2.6.18.8-0.5-default
Das booten des Windows, hier windows 2, von der externen Festplatte funktioniert nicht.
Fehlt da noch etwas?
 

admine

Ultimate Guru
lips schrieb:
Das booten des Windows, hier windows 2, von der externen Festplatte funktioniert nicht.
Fehlt da noch etwas?
Ich hatte dir oben den Eintrag für das Windows von 2. Platte gepostet ... warum versuchst du nicht diesen?

Bzw. weil das Windows ja auf der 2. Partition liegt dann eher so:

Code:
title Windows
    map (hd0) (hd1)
    map (hd1) (hd0)
    rootnoverify (hd1,1)
    chainloader (hd1,1)+1
 

admine

Ultimate Guru
Und so:

Code:
title Windows 
    hide (hd0,0)
    unhide (hd0,1)
    map (hd0) (hd1)
    map (hd1) (hd0)
    rootnoverify (hd1,1)
    chainloader (hd1,1)+1

Zur Erläuterung:

hide/unhide => dein Windows-System liegt auf der 2. Windows-Partition. Windows will aber immer von seiner 1.Partition auf der 1.Platte starten.

map => man vertauscht virtuell Platte 2 und 1. Dadurch wird Windows eine erste Platte vorgegauckelt.
 
OP
B

blacklips

Hacker
Geht nicht, vielleicht liegt es aber auch an Windows, weil es nicht auf der Platte liegt auf der es installiert wurde, also die war erst intern, als das Windows installiert wurde. Ich habe die jetzt aber in einem externen Gehäuse, vielleicht liegt es daran.
 

towo

Moderator
Teammitglied
also die war erst intern, als das Windows installiert wurde. Ich habe die jetzt aber in einem externen Gehäuse, vielleicht liegt es daran.
Dir ist schon klar, daß Win nicht von einer ext. Platte booten kann?
 
OP
B

blacklips

Hacker
Nö, ich dachte, das geht. Hatte ich ja auch schon oben geschrieben, dass Windows auf der externen Festplatte liegt. Naja ok dann muss ich mal überlegen was ich mache.
 

admine

Ultimate Guru
towo schrieb:
Dir ist schon klar, daß Win nicht von einer ext. Platte booten kann?

Wusste ich auch nicht, aber ich hab grad mal gegooglet.
Ergebnis:
Das Problem ist, dass Windows den USB-Treiber erst nach dem Systemkern laden "möchte". Das Ergebnis ist bluescreen beim Booten.

Evt. geht es, wenn wenigstens die Startdateien auf der internen Platte liegen ... :roll:
 

wwlange

Newbie
Hallo Leute,

zum externen Booten muß im Bootsetup ein Eintrag "Andere Bootquelle" oder ähnlich eingetragen sein. Nicht jedes Board kann das. Konnte auf diese Art (aber nur einmal) von einer CD-Rom im extrenen Gehäuse booten. Danach mußte ich ein neues kaufen. Warum ist unklar. Platten wurden auch nicht mehr erkannt, waren aber gesund geblieben.

Gruß!

???Linux???
 
Oben