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

Grub erkennt /dev/sda6 nicht

x-mode

Member
Hallo :)

Habe openSuse 10.2 x86_64 als Dualboot in eine logische Partition installiert
und irgendwie ist bei der Installation die Grub-Installation daneben gegangen.
Ich konnte das Suse-System nur mit der CD starten, wohingegen Windows XP immernoch
den MBR besetzt hatte.

Nun wollte ich das fixen und Grub manuell in den MBR installieren. Allerdings
klappt das nicht wirklich, das System ist nach wie vor nur von CD bootbar.

Hier ist, wie ich bislang vorgegangen bin:

Code:
bluepoint:/home/aj # fdisk -l

Platte /dev/hda: 20.4 GByte, 20491075584 Byte
255 heads, 63 sectors/track, 2491 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/hda1   *           1        2491    20008926    7  HPFS/NTFS

Platte /dev/sda: 160.0 GByte, 160041885696 Byte
255 heads, 63 sectors/track, 19457 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1   *           1        3904    31358848+   7  HPFS/NTFS
/dev/sda2            3905       14103    81923467+   7  HPFS/NTFS
/dev/sda3           14104       19457    43006005    f  W95 Erw. (LBA)
/dev/sda5           14104       14295     1542208+  82  Linux Swap / Solaris
/dev/sda6           14296       16375    16707568+  83  Linux
/dev/sda7           16376       19457    24756133+  83  Linux

Code:
bluepoint # less /boot/grub/device.map

(hd1)   /dev/sda
(hd0)   /dev/hda


Code:
bluepoint # less /boot/grub/menu.lst

# Modified by YaST2. Last modification on Tue Aug 21 23:31:27 CEST 2007
default 0
timeout 8
gfxmenu (hd1,5)/boot/message

title openSUSE 10.2 - 2.6.18.8-0.5
    root (hd1,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=0x31a resume=/d
ev/sda5 splash=silent showopts
    initrd /boot/initrd-2.6.18.8-0.5-default

title Failsafe -- openSUSE 10.2 - 2.6.18.8-0.5
    root (hd1,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=normal showopts
 ide=nodma apm=off acpi=off noresume edd=off
    initrd /boot/initrd-2.6.18.8-0.5-default

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

Code:
bluepoint # grub

grub> root (hd1,5)
 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd1)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd1)"...  15 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd1) (hd1)1+15 p (hd1,5)/boot/grub/stage2
/boot/grub/menu.lst"... succeeded
Done.

Wenn ich nun reboot mache, startet zwar Grub zwar aus dem MBR allerdings
schon mit der Meldung:

Code:
(hd1,5)/boot/message file not found

Dann kommt auch die Grub-Auswahl, ich wähle "openSuse 10.2 2.6.18.8-0.5 und
Grub meldet folgendes:

Code:
root (hd1,5)
Error 22: No such partition

Also wenn ich von CD boote, dann gibt es die Partition hd(1,5) aber wenn ich Grub
aus dem MBR von /dev/sda bzw. hd(1) starte, dann erkennt es sie nicht?

Wie kann ich weiter vorgehen?

Danke schonmal.
 

admine

Ultimate Guru
Gimpel schrieb:
Installier GRUB in den MBR von hda.
Genau ... und das einfach mal mit
Code:
grub-install /dev/hda

Und hier solltest du noch eine Änderung vornehmen:
Code:
###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    rootnoverify (hd0,0)
    chainloader (hd1,0)+1
in
Code:
###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    rootnoverify (hd0,0)
    chainloader (hd0,0)+1
 
OP
X

x-mode

Member
Danke. Ich habe getan, was ihr mir vorgeschlagen habt aber das Resultat
ist das gleiche geblieben :( Das Problem hat sich sogar insofern verschlimmert,
als dass ich Suse nur noch über das Rescue System der Installations-CD booten konnte.

Offensichtlich kommt der PC mit den zwei verschiedenen Platten (S-ATA & IDE)
nicht richtig klar...

Ich habe jetzt erstmal /dev/hda ausgebaut um das Problem zu beheben,
zumal /dev/hda ja nur eine Backup-Platte für das Windows-System darstellt und
dann über Rescue System die entsprechenden Änderungen in der device.map
und menu.lst vorgenommen:

Code:
bluepoint # cat /boot/grub/device.map
(hd0) /dev/sda

bluepoint # cat /boot /grub/menu.lst
# Modified by YaST2. Last modification on Tue Aug 21 23:31:27 CEST 2007
default 0
timeout 8
gfxmenu (hd0,5)/boot/message

title openSUSE 10.2 - 2.6.18.8-0.5
    root (hd0,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=0x31a resume=/dev/sda5 splash=silent showopts
    initrd /boot/initrd-2.6.18.8-0.5-default

title Failsafe -- openSUSE 10.2 - 2.6.18.8-0.5
    root (hd0,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=normal showopts ide=nodma apm=off acpi=off noresume edd=off
    initrd /boot/initrd-2.6.18.8-0.5-default

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

Das war erfolgreich, Suse läuft einwandfrei von Grub aus dem MBR an.
Dafür ist nun Windows XP nicht mehr via Grub von /dev/sda1 zu starten.
Da bricht der Bootvorgang mit dem Hinweis ab, dass
\Windows\system32\config\system nicht vorhanden und das System damit
beschädigt sei. Dabei habe ich an /dev/sda1 gar keine Änderungen vorgenommen...
kann das jetzt mit dem menu.lst Eintrag "chainloader (hd0,0)+1"
zusammenhängen?

Greetz
x-mode
 

admine

Ultimate Guru
x-mode schrieb:
Dafür ist nun Windows XP nicht mehr via Grub von /dev/sda1 zu starten.
Da bricht der Bootvorgang mit dem Hinweis ab, dass
\Windows\system32\config\system nicht vorhanden und das System damit
beschädigt sei. Dabei habe ich an /dev/sda1 gar keine Änderungen vorgenommen...
Da hat Windows wohl seine Startdateien auf /dev/hda ... war die Platte im Rechner während der Windows-Installation?
Evt. kann dir eine Reparatur von Windows helfen (geht AFAIK auch mit Windows-Install-CD).
 
OP
X

x-mode

Member
admine schrieb:
Da hat Windows wohl seine Startdateien auf /dev/hda ... war die Platte im Rechner während der Windows-Installation?

Nein, eben nicht. Die wurde erst nachträglich eingebaut für Datensicherung :(
Aber wer weiß schon, wie Microschrott sowas nachträglich behandelt.
Im Übrigen hab ich die Win-Partition /dev/sda1 jetzt mal gemountet und
da ist \WINDOWS\system32\config\system sehr wohl vorhanden.

Evt. kann dir eine Reparatur von Windows helfen (geht AFAIK auch mit Windows-Install-CD).

Am liebsten würde ich ganz drauf verzichten, aber Cubase unter WINE zum
Laufen zu bringen.... *uiuiui

Der Witz ist ja, dass die Windows XP Prof Installations-CD nichtmal eine
Reperaturkonsole anbietet.
Um eine Reperaturkonsole zu starten, mußte ich eine Win2000-CD benutzen.
Das ist so ein Schrott, ehrlich.....

Das ist jetzt echt mistig gerade. Zumindest bootet Suse wieder einwandfrei.

Greetz
x-mode
 
OP
X

x-mode

Member
\Windows\system32\config\system nicht vorhanden und das System damit
beschädigt

Heisst soviel wie die dass die Registry von Windows zerschossen war.
Ich habe das Problem erstmal gelöst, indem ich /dev/hda abgeklemmt habe.

Dann wird von der Installations-CD gebootet und im entsprechenden Menü
"R" für die Wiederherstellungskonsole ausgewählt. Nach Anmeldung sind in
der Konsole folgende Befehle einzugeben (das Verzeichnis in dem XP
installiert ist, ist individuell anzupassen, z.B. C:\WINXP):

cd c:\windows
md tmp
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak

del c:\windows\system32\config\system
del c:\windows\system32\config\software
del c:\windows\system32\config\sam
del c:\windows\system32\config\security
del c:\windows\system32\config\default

copy c:\windows\repair\system c:\windows\system32\config\system
copy c:\windows\repair\software c:\windows\system32\config\software
copy c:\windows\repair\sam c:\windows\system32\config\sam
copy c:\windows\repair\security c:\windows\system32\config\security
copy c:\windows\repair\default c:\windows\system32\config\default

Mit diesen Befehlen wird ein Backup der defekten Registry im Verzeichnis tmp erstellt.
Anschliessend wird eine gesicherte Registry (Setup-Zustand) zurückkopiert.
Damit ist das System mit der gesicherten Notfall-Registry wieder bootbar.
Nach einem Neustart, meldet man sich im abgesicherten Modus ( F8 als Administrator an.
Für den nächsten Schritt muss in den Ordneroptionen, Ansicht, geschützte Systemdateien
ausblenden deaktiviert, Inhalte von Systemordnern anzeigen aktiviert und
Alle Dateien und Ordner anzeigen aktiviert sein. Nun öffnet man mit dem Explorer
den Ordner System Volume Information (Falls der Zugriff verweigert wird, muss
die einfache Dateifreigabe in den Ordneroptionen deaktiviert werden, und dann
in den Eigenschaften des Ordners den Ornder unter Sicherheit auf den aktuellen
Benutzer übertragen). Dieser Ordner enthält mehrere _restore {GUID}
(z.B. "_restore{87BD3667-3246-476B-923F-F86E30B3E7F8}) Ordner
(Ansicht auf Details umschalten): Nun öffnet man einen Ordner der NICHT zum
aktuellen Zeitpunkt erstellt worden ist, aber möglichst nahe am aktuellen Datum
dran ist (Detail-Ansicht -> Datum). Der Ordner sollte mehrere Unterordner enthalten,
die mit RP beginnen, dies sind die Wiederherstellungspunkte. In einem dieser Ordner
öffnet man nun das Verzeichnis snapshot und kopiert die Dateien
_REGISTRY_USER_.DEFAULT
_REGISTRY_MACHINE_SECURITY
_REGISTRY_MACHINE_SOFTWARE
_REGISTRY_MACHINE_SYSTEM
_REGISTRY_MACHINE_SAM

in den C:\Windows\Tmp Ordner. Dies sind die Backup-Registry-Dateien. Da zum
Starten bis jetzt die Registry-Dateien des Setups verwendet wurden, kennt XP keine
Wiederherstellungspunkte. Deshalb war es nötig die Daten zu kopieren.
Ausserdem ist der Ordner System Volume Information in der Wiederherstellungskonsole
nicht verfügbar.

Im nächsten Teil wird die Registry ausgetauscht. Dazu wieder in die
Wiederherstellungskonsole booten und folgende Befehle ausführen:

del c:\windows\system32\config\sam
del c:\windows\system32\config\security
del c:\windows\system32\config\software
del c:\windows\system32\config\default
del c:\windows\system32\config\system

copy c:\windows\tmp\_registry_machine_software c:\windows\system32\config\software
copy c:\windows\tmp\_registry_machine_system c:\windows\system32\config\system
copy c:\windows\tmp\_registry_machine_sam c:\windows\system32\config\sam
copy c:\windows\tmp\_registry_machine_security c:\windows\system32\config\security
copy c:\windows\tmp\_registry_user_.default c:\windows\system32\config\default

Nach einem Neustart kann das System nun zu einem früheren Punkt
wiederhergestellt werden (Start, Programme, Zubehör, Systemprogramme,
Systemwiederherstellung)

Dann habe ich die entsprechenden Grub-Dateien an die abgeklemmte Festplatte angepasst:

Code:
bluepoint:/ # less /boot/grub/device.map

(hd0)   /dev/sda
(hd1)   /dev/hda

Code:
# Modified by YaST2. Last modification on Tue Aug 21 23:31:27 CEST 2007
default 0
timeout 8
gfxmenu (hd0,5)/boot/message

title openSUSE 10.2 - 2.6.18.8-0.5
    root (hd0,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=0x31a resume=/d
ev/sda5 splash=silent showopts
    initrd /boot/initrd-2.6.18.8-0.5-default

title Failsafe -- openSUSE 10.2 - 2.6.18.8-0.5
    root (hd0,5)
    kernel /boot/vmlinuz-2.6.18.8-0.5-default root=/dev/sda6 vga=normal showopts
 ide=nodma apm=off acpi=off noresume edd=off
    initrd /boot/initrd-2.6.18.8-0.5-default

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

und zuguterletzt noch

Code:
grub-install /dev/sda

ausgeführt. Jetzt läuft alles wieder *freu

Offensichtlich ist es Windows gar nicht bekommen, dass ich nachträglich eine
IDE-Platte zur S-ATA eingehängt habe. Das hat das System durcheinander
geworfen.
Die IDE bleibt jetzt draußen und ich kaufe mir eine neue zusätzliche S-ATA-Platte.

Danke für eure Hilfe ;)

Greetz
frickel-mode
 
Oben