PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GRUB Problem nach FP-kopieren



noplan
03.02.03, 09:13
Ich habe auf meiner 60GB-Platte Win2k-Linux swap-Suse 8.1. Da ich mir ne neue Platte gekauft hab, hab ich den kompletten Inhalt der Platte mit Norton Ghost auf die neue Platte kopiert. Da die neue Platte (auch 60GB, nur schneller), minimal kleiner ist, wurde eine Partition (win2k) um ca. 3-4 MB verkleinert. Die neue Platte hat jetzt die alte vollständig ersetzt und steckt genau wie die alte auf Primary Master. Win2k hat nach längeren start wieder einwandfrei funktioniert. Nur Linux - genaugenommen der Bootloader GRUB macht probleme. Ich hab bei der erstinstallation den MBR des Bootloaders auf eine Diskette installiert. Wenn ich jetzt mit der Diskette starten will, erscheint nach dem BIOS nur GRUB und mehr nicht. Also er lädt den Bootloader gar nicht mehr.

Woran kann das liegen? Die Partitionen haben sich (bis auf die größe von w2k) nicht geändert. Wenn ich mit dem Suse Rescue system starte, kann ich die linux-partition noch mounten und die daten sind auch 100%ig vorhanden und i.O.
Wie bringe ich GRUB wieder zum starten?

mfg, christian.

noplan
03.02.03, 17:04
Gibt es eine Möglichkeit, GRUB neu zu installieren? Scheint anscheinend die einzigste möglichkeit zu sein.

HackThor
03.02.03, 17:42
Also in der SuSE-Rescue kannst du die Paritionen mounten.... das ist schonmal gut
Haben sich eventuell die Partitionen verschoben? Schau mal ein "fdisk -l" und die "/etc/fstab" deines Linux mittels der SuSE an. Anscheinend findet der GRUB den Kernel nicht :(

Idee:
- Boote das SuSE Rescue-System
- mounte deine Boot-Partition (schau mal in den "fdisk -l" welche das sein könnte - wenn du eine separate /boot hattest ist sie ziemlich klein. Ansonsten einfach die Linux-Partition mounten wenn es nur eine gibt - da ist /boot mit drin)
- GRUB starten, dann erscheint das "grub>" als Eingabeaufforderung

grub> root (hd0,X)
eingeben, wobei "X" die Paritionsnummer der /boot bzw. der ganzen Linux-Partition minus 1 ist - also wo der Kernel liegt. "/dev/hda1" ist z.B. "(hd0,0)".

Damit schreibst du den GRUB auf die Diskette:

grub> setup (fd0)

- booten von der Diskette

Probier's mal...

Eventuell mußt du für die GRUB-Installation auf ein "chroot" machen:
Nachdem du deine Linux-Partition gemountet hast, z.B. nach "/mnt", kommt dann ein

chroot /mnt /bin/bash
Damit wechselst du (teilweise) in dein altes Linux-System, von da aus liegt dann /boot auch an der richtigen Stelle. Da sollte der GRUB sich wie oben installieren lassen. Und wenn das alles nichts hilft weil GRUB auf /proc zugreift - ein "mount -o bind /proc /mnt/proc" vor dem "chroot" bringt auch diese an seinen Platz...

ciao

Michael

noplan
03.02.03, 19:43
Jetzt funktionierts wieder. thx.

Aber wo lag jetzt das Problem? Die Partition hat sich ja nicht geändert - es war vorher /dev/hda3 (hd0,2) und ist es jetzt auch wieder. Zeigt der MBR auf eine bestimmte Partition oder auf einen bestimmten Sektor? Wenn er auf einen bestimmten Sektor zeigt, wirds daran gelegen haben, weil sich der ja geändert hat. /dev/hda1 (win) wurde ja verkleinert.