grub, Festplatten größer 2TB und Software-RAID1

Autor: Markus Hochholdinger <Markus_at_hochholdinger.net>
Datum: Sun, 30 Dec 2012 20:48:18 +0100
Hallo,

da ich mich jetzt doch einige Zeit damit rumgeschlagen habe hier eine Notiz 
bzgl. Festplatten größer 2TB an einem Controller der aber nur maximal 2TB 
adressieren kann:
Sowohl grub als auch grub2, sowohl mit mbr- als auch gpt-Partitionierung 
schaffen es nicht das raid1 beim Booten korrekt zu erkennen und man landet in 
einer grub rescue shell. Hier sieht (ls) man auch, dass zwar die Partitionen 
(soweit part_msdos und part_gpt geladen wurden) da sind, allerdings das raid1 
vom grub nicht erkannt wird.

Die Lösung war die Festplatten dazu zu bringen dem BIOS auch nur eine Größe 
kleiner 2TB mitzuteilen. Dies kann man mit hdparm einstellen:
# hdparm -Np$((1024*1024*1024*4-2)) /dev/sdX
sdX ist dabei die jeweilige Festplatte, diese sollte nicht in Benutzung sein 
und auch sollte das System danach neugestartet werden. Desweiteren gibt es bei 
obigem Befehl auch noch eine Sicherheitsabfrage die man mit
  --yes-i-know-what-i-am-doing
bestätigen muss! Also zur Sicherheit lieber nochmal man hdparm lesen und sich 
darüber bewusst werden, dass man die Festplatte hierbei verkleinert!

Weitere Notizen:
* Evtl. passt ein grub nicht in den mbr wenn man z.B. mit
    fdisk -H 32 -S 32 /dev/sdX
  partitioniert hat und die erste Partition bei Block 1 anfängt. Hier hilft es
  z.B. die erste Partition erst ab Block 2 anzulegen.
* Bei gpt-Partitionierung sollte man eine bios_grub-Partition (Typ non-fs bzw.
  0xDA) anlegen worin grub sein stage1.5 ablegen kann. (Natürlich nur sofern
  mach auch mit BIOS bootet und nicht mit EFI).
* In der rescue shell von grub kann man nicht viel machen, mit set sieht man
  die gesetzten Variablen, mit ls kann man die Devices und Dateisysteme
  (sofern diese erkannt wurden) durchforsten. Wenn man erstmal ein fs mit
  /boot/grub/ gefunden hat kann man die Variable prefix darauf setzen, z.B.
  mit "set prefix=(hd0,gpt2)/boot/grub" und mit "set root=(hd0,gpt2)" das
  root-Device richtig setzen. Mit viel Glück kann man dann ein "insmod normal"
  machen und danach "normal" ausführen und man landet dann im normalen
  grub-Menü.


-- 
Gruß
                                                          \|/
       eMHa                                              (o o)
------------------------------------------------------oOO--U--OOo--
 Markus Hochholdinger
 e-mail  mailto:Markus_at_Hochholdinger.net             .oooO
 www     http://www.hochholdinger.net                (   )   Oooo.
------------------------------------------------------\ (----(   )-
Ich will die Welt verändern,                           \_)    ) /
aber Gott gibt mir den Quelltext nicht!                      (_/


-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/

Empfangen am 30.12.2012

Dieses Archiv wurde generiert von hypermail 2.2.0 : 30.12.2012 CET