SDB:GRUB bleibt beim Booten von einer SCSI-Festplatte mit der Meldung 'GRUB' stehen
aus openSUSE, der freien Wissensdatenbank
Version: 8.1
Symptom
Beim Booten von einer Festplatte an einem SCSI Controller hängt der Bootvorgang mit der Meldung 'GRUB'.
Ursache
Es sind zwei Fehlerursachen möglich:
- Im BIOS des SCSI Controllers ist die INT13 Erweiterung (LBA-Adressierung) für Festplatten nicht aktiviert.
- LBA funktioniert aufgrund eines fehlerhaften BIOS des SCSI Controllers nicht. Das BIOS "meldet" dem Bootloader GRUB, es würde die LBA-Adressierung benutzen, nimmt jedoch stattdessen die CHS-Adressierung. Als Folge kann GRUB eine zum Booten benötigte Datei nicht finden (die sogenannte stage2-Datei, die den Programmcode des Bootloaders GRUB enthält, vgl. dazu den Artikel SDB:Der Bootmanager GRUB.
Dies Symptom ist bei manchen Adaptec SCSI Controllern zu beobachten.
Lösung
Bei Fehlerursache eins ist die Lösung einfach: aktivieren Sie die INT13 Erweiterung (LBA-Adressierung) im BIOS des SCSI Controllers.
Bei Fehlerursache zwei sind mehrere Lösungen möglich:
- Falls der Controller ein Flash-BIOS besitzt, wird ein BIOS Update das Problem vermutlich beheben.
Andernfalls können Sie auch die INT13 Erweiterung im SCSI-BIOS deaktivieren. Beachten Sie im letzteren Fall bitte, dass die Partition, auf der sich die Bootloaderdateien sowie Kernel und INITRD liegen (üblicherweise die Boot-Partition), sich innerhalb der ersten 1024 Zylinder (innerhalb der ersten ca. 8 GByte) befinden müssen. Ansonsten würde das sog. 1024-Zylinder Problem auf Sie zukommen. Siehe dazu auch den Artikel SDB:Der Bootvorgang bleibt mit der Meldung 'GRUB' bzw. 'GRUB Geom Error' stehen. .
- Ab SuSE Linux 8.2 gibt es als dritte Möglichkeit den GRUB-Parameter --force-lba=off, welches die LBA-Unterstützung abschaltet. Booten Sie mit Hilfe der ersten CD/DVD in das installierte System und fügen Sie diesen Parameter in die Datei /etc/grub.conf ein. Öffnen Sie diese Datei in einer root-Shell mit einem Editor Ihrer Wahl, z. B. mit pico:
pico -w /etc/grub.conf Fügen Sie den Parameter in die zweite Zeile ein. Achten Sie darauf, dass keine Zeilenumbrüche entstehen. Die Datei kann dann folgendes Aussehen haben: root (hd0,4) install --force-lba=off --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 0x8000 (hd0,4)/grub/menu.lst quit Speichern Sie die Datei (STRG-O), schließen Sie den Editor (STRG-X) und installieren Sie den Bootloader neu, indem Sie in die root-Shell folgenden Aufruf eingeben: grub --batch --device-map=/boot/grub/device.map </etc/grub.conf
Weitere Hinweise zu diesem Problem finden Sie in der Dokumentation zu GRUB, die Sie online unter http://www.gnu.org/software/grub/grub-faq.en.html#q14 oder mit Hilfe des Shell-Aufrufs info grub einsehen können.
Keywords: grub | scsi | adaptec | booten | bootmanager | bootloader

