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

[Gelöst] RAID1 bei Suse 11.4

Stephan-X

Newbie
Hallo zusammen und Hilfe !!!
Habe einen neuen HP Proliant, 32 Bit 2 x 250 GB HD 2 GB RAM... und Suse 11.4
Seit einer Woche versuche ich nun ein RAID1 zu installieren, wälze ich Bücher lese in Foren .. unter anderen auch hier das HowTo Ausfallsicherheit Raid1.. aber ich komme nicht weiter. Ich scheitere daran den Bootloader zu Schreiben, Grub 2 ist ja doch etwas anders als Grub. OK ich komme soweit dass mit mdadm oder Yast als GUI das Raid eingerichtet wird, vat /proc/mdstat und mdadm -D /dev/md0 zeigen das auch an... so nun ein doppelclick auf installation und Suse fängt an zu installieren, kaum an dem Punkt Partition angekommen erkennt Suse das Raid 1 nicht ??? Wenn ich dieses dann per hand mit Yast nochmal mache ist auch wieder alles bestens, zumindest läuft alles ohne Fehler durch, bis zum Bootloader install --> Da steigt Suse aus Fehlermeldung Bootloader kann nicht auf /dev/md0 geschrieben werden und aus.. Hat mal jemand ne wirkliche step by step Anleitung, ansonsten weis ich auch nich weiter (Frust)
Danke Euch allen schon mal.
Stephan
 

josef-wien

Ultimate Guru
Hast Du wirklich bei der Installation GRUB ab- und GRUB2 ausgewählt? Wenn das so ist, dann schreibe ich die folgenden Zeilen umsonst.

openSUSE verwendet (auch bei 12.1) als Standard nach wie vor GRUB. Nimm das Scheitern der automatischen Bootloader-Einrichtung zur Kenntnis, und fahre mit der Installation fort. Im installierten System führst Du als root
Code:
grub
find /boot/grub/stage1
aus. find wird Dir 2 Zeilen anzeigen, für jede Ausgabe führst Du die Befehlsfolge
Code:
root (hdX,Y)
setup (hdX,Y)
aus und beendest dann mit
Code:
quit
die manuelle Bootloader-Installation. Damit hast Du GRUB auf beiden Platten jeweils in der Systempartition installiert. Falls Deine Systempartition eine logische Partition ist, mußt Du allerdings GRUB in der erweiterten Partition installieren, also diese in der Zeile setup angeben. Alternativ kannst Du in der Zeile setup ",Y" weglassen und dadurch GRUB in den MBR installieren. Außerdem solltest Du Dich vergewissern, daß Du eine brauchbare menu.lst hast. (Wie man übrigens ohne menu.lst das System startet, habe ich kürzlich beschrieben.)

Falls der Wechsel vom Installations- ins installierte System nicht klappen sollte, startest Du das Rettungssystem und führst die Befehle dort aus.
 
OP
S

Stephan-X

Newbie
Na gut nochmal von vorn.. Tabellarisch !
1. Live CD gestartet
2. Terminal geöffnet
3. Platten Parted sda1 240 gb 82 sda2 2 gb swap
4 sdb1 240 gb 82 sdb2 2 gb swap
5. RAID einrichten "mdadm --create --verbose /dev/md0 --level=raid1 --raid-devices=2 /dev/sda1 /dev/sdb1
6. Raid mdadm.conf schreiben mdadm --examine --scan >> /etc/mdadm/mdadm.conf
7. cat /proc/mdstat nachsehen ob das schon eingerichtet ist SYNCING
8. Fertig dann mdadm -D /dev/md0 ... ist da alles OK
9. mit cfdisk /dev/md0 Partition anlegen auf md0 und Bootflag setzen
10. mkdir /Daten Ich mach auf md0 ein Verzeichnis Daten weil "/ "ist ja auf der Live CD
11. mount /dev/md0 /Daten
12. fdisk -l ist alles Easy !
grub 1 mit apt-get install grub-legacy geladen
nun wäre (meiner Meinung nach) der nächste schritt ein grub-install /dev/md0 damit überhaupt ertmal eine menu.lst angelegt wird die man dann bearbeiten kann ???
Meldung
Code:
grub-probe: error: no such disk 
                      The file /boot/grub/stage1 not ready correctly
was wäre der nächste Schritt ?
 

josef-wien

Ultimate Guru
Bei 1. bis 5. und 7. bis 9. blicke ich ja durch. Verzichtest Du bewußt auf eine eigene Home-Partition?

Bei 6. schreibst Du vermutlich in den RAM des Live-Systems. Was soll "apt-get"? Wir sind hier bei openSUSE. Wo hast Du "grub-install" her? Die openSUSE-Version funktioniert nicht mit einem Parameter (und braucht YaST). Wenn Du krause Wege gehst, werden wir Dir nicht helfen können.

Du hast Dein RAID eingerichtet und installierst jetzt aus dem laufenden Live-System openSUSE auf die leere[n] (besser bei der Installation formatierte[n]) RAID-Partition[en] und danach manuell GRUB.
 
Welcher HP-Prolliant? Welcher Controller verbaut? Der B110i? Oder ein P410 etc? Ich tippe ja eher auf den internen weil sonst ein Software-Raid keinen Sinn macht...
Ernst gemeinter Rat: Bestell den P410, alles Andere ist nur Bastelei!
Ansonsten war da mal was mit "erst nur auf einer Platte einrichten, aber beim Partitionieren schon auf den richtigen Typ der Partition achten und erst dann die zweite Platte dazu und das Raid in Betrieb nehmen" Ich schau nachher mal ob ich den Link noch finde mit dem ich das mal gemacht hab...
 
http://www.pc-erfahrung.de/linux/linux-software-raid-how-to-mit-mdadm-raidutils.html meinte ich. Da geht es allerdings noch um grub-legacy, in wie Fern das bei grub2 jetzt anders geht weiß ich nicht. Grub2 soll ja meiner Erinnerung nach auch von Raid booten können. Der entscheidende Fehler beim TO dürfte sein das die Platten nicht als Typ fd eingerichtet sind. Es kann natürlich auch passieren das der Controller da noch irgendwie rein spuckt wenn bei dem zB RAID ausgewählt ist. Mit dem B110i mit Intel ICH10 bin ich verrückt geworden und hab es unter SLES trotz vorhandener Treiber (die aber nicht funktionieren) aufgegeben und den größeren Controller verbaut (auf einer DL 160)
 
OP
S

Stephan-X

Newbie
Hey und Tschuldigung
zum ersten eine tippfehler ... ich meinte Suse 12.1 frisch vom Kiosk. Weiter geht es mir nicht um das grundsätzliche aufsetzen eines RAID-Verbundes.. das is schon OK. Aber ich Arbeite aus gewohnheit auf der Console und habe mich mit Yast eigentlich noch nicht so befasst... bis jetzt ! Da mir das zu verwirrend aussieht bin ich wieder zur Console gewechselt. Deshalb die Consolbefehle ... die sind halt so drin. OK ich Danke euch erstmal für die schnelle Hilfe, auch für die links...
Mein ganz spezieller Hänger ist RAID1 mit Suse 12.1 mit Grub2 auf nem HP Pro Liant mit zwei 250 GB Platten SATA (0,00 € is geschenkt) Hardware ?? ich denke mal ganz normal ohne Raidcontroler. On Board lässt sich zwar im Bios Raid einstellen ab das ist vielleicht ein FakeRaid da ich noch keinen Onboardcontroller gesehen hab der Funzt !??? Also ich bin für jede Hilfe offen die vielleicht auch mit Yast geht ... hmmmm... aber da brauch ich genauere Details !
Thanks noch mal
Stephan
 
OP
S

Stephan-X

Newbie
Guten Morgen zusammen...
es ist vollbracht ! WOW das is 'n Ding Also RAID1 mit Suse 12.1 so einfach wie nie.
1. Live CD Starten
2. Live Installation durchführen
3. Manuell Partitionieren mit Yast
- Die Platten zum Raid (bei mir sda und sdb) je eine Partition mit Bootflag und Formatieren ohne einhängepunkt
4. Im Menü RAID aufrufen
5. Hinzufügen und im neuen Fenster 1. und 2. Platte anklicken zum Raid hinzufügen
6. Partition (hier) md0 anklicken
Format mit ext3 und Einhängepunkt "/" auswählen
7. OK drücken und Fertig installieren
Der Bootloader wird geschrieben !
8. Nach der Installation die Frage nach dem Neustart mit "Später Neustarten" beantworten.
9. Terminal öffnen und MBR in die zweite Platte schreiben
- Grub öffnen
- root (hd1,0)
- setup (hd1)
- CTRL + C
10. jetzt noch drei zeilen in die menu.lst eintragen für den Start auf der zweiten Platte (Die roten zeilen sind einzutippen)
- timeout 10
- default 0
"Start von der 2. Platte falls die 1. scheitert"
- fallback 1
- kernel (hd0,1)/boot/vmlinuz root=/dev/md0
- initrd (hd0,1)/boot/initrd
- kernel (hd1,1)/boot/vmlinuz root=/dev/md0
- initrd (hd1,1)/boot/initrd

Datei Speichern
11. Ihr könnt noch mit mdadm --detail /dev/md0 testen ob alles da ist.
bei Status "CLEAN" und es müssten zwei Raid-devices da sein dann ist alles OK.
Live CD raus und neu Starten
 
A

Anonymous

Gast
folgendes bitte noch mal überprüfen, ich glaube das ist was falsch abgeschrieben.
root (hd1,0)
- setup (hd1)
......
- kernel (hd0,1)/boot/vmlinuz root=/dev/md0
- initrd (hd0,1)/boot/initrd
- kernel (hd1,1)/boot/vmlinuz root=/dev/md0
- initrd (hd1,1)/boot/initrd

ansonsten bitte dazu schreiben auf welcher Partition sich was befindet, sonst kann das der Nächste nicht wirklich gebrauchen.

robi
 
OP
S

Stephan-X

Newbie
hi robi,
beim grub-legacy also dem alten beginnt die nummerierung mit 0
das is schon so wie das sein muss zuerst in den MBR => hd0,0 und 2. Platte hd1,0
dann der boot, bei mir eingehängt auf der 1. Partition in "/" also hd0,1 und/oder 2. Platte hd1,1
"kann Natürlich bei jedem abweichen je nach anzahl Partitionen oder ob "/boot" eine eigene Partition besitzt ??"
:???:
Falls due aber mit Grub2 arbeitest ist der hinweis richtig da beginnt die Zählung mit 1 und nichtmehr mit 0
Stephan

Das mit dem GRUB2 werd ich noch weiter probieren, hat was mit dem script 40_custom in der /etc/default/grub.d zu tun
Einträge:
- recordfail
- insmod raid #Module laden
- insmod mdraid
- setroot=(md0)

ich werd die einträge dann hier Posten wenn ich weiter bin.
 
A

Anonymous

Gast
Stephan-X schrieb:
hi robi,
beim grub-legacy also dem alten beginnt die nummerierung mit 0
das is schon so wie das sein muss zuerst in den MBR => hd0,0 und 2. Platte hd1,0
dann der boot, bei mir eingehängt auf der 1. Partition in "/" also hd0,1 und/oder 2. Platte hd1,1
root (hd1,0)
bedeutet die Konfiguration von Grub (Dateien von grub unterhalb von /boot) befinden sich auf der Partition 1 der Platte die in /boot/grub/device.map als hd1 geführt wird
setup (hd1)
und werden konfiguriert für den MBR eben dieser Platte hd1.

Entweder hast du /boot/ 2 mal, ein mal auf der Partition 1 wo du die Grubkonfiguration hast und ein mal auf der Partition 2 wo der Kernel und die initrd ist , oder das ganze funktioniert nicht.

robi
 
OP
S

Stephan-X

Newbie
Entweder hast du /boot/ 2 mal, ein mal auf der Partition 1 wo du die Grubkonfiguration hast und ein mal auf der Partition 2 wo der Kernel und die initrd ist , oder das ganze funktioniert nicht.
Gut ich versuchs mal so zu beschreiben,
Das ist so richtig da ich bei "dem" RAID1 Spiegeln habe und 2 Platten sda und sdb, ergibt sich je 1 Partition aufden Platten sda1 und sdb1, "Gewohnheit" ich schreibe von Grub aus in den MBR jeder Platte hd0,0 => hd0 und hd1,0 => hd1 dann wird der Raid md0 ja erst eingehängt und auf md0 ist eine Partition auf "/" eingehängt, deswegen dann zwei einträge mit hd0,1 und hd1,1 ist der "/" und Boot md0 (im prinzip ist das die "zweite virtuelle" Partition, egal welche platte ausfällt der Bootverweis erfolgt immer auf Boot von md0.
Ich hoffe ich konnte es erklären, auf jedenfall läuft das ganze super.
Stephan
 

josef-wien

Ultimate Guru
Die Daten (für die Installation) von GRUB, also die Dateien /boot/grub/*stage* (und /boot/grub/menu.lst), kommen von der ersten Partition (hdx,0). Die Daten für den Start von Linux, also die Dateien /boot/vmlinuz und /boot/initrd, kommen von der zweiten Partition (hdx,1). Was ist der Sinn dieser völlig unüblichen Konstruktion, also der Aufteilung des Verzeichnisses /boot auf 2 Partitionen?

P. S. Nummer 1: GRUB startet vmlinuz und initrd von der angegebenen Partition, der RAID-Verbund wird erst durch initrd erstellt, da ist GRUB schon lange aus dem Spiel.

P. S. Nummer 2: Es wird interessant, was beim nächsten Kernel-Update passieren wird.
 
A

Anonymous

Gast
war schon jemand schneller ;)

- root (hd1,0) //benutze die Grubdateien auf Partition sdb1:/boot/grub
- setup (hd1) //und schreibe Bootloader in den MBR sdb
....
- kernel (hd1,1)/boot/vmlinuz root=/dev/md0 //nimm den Kernel von sdb2:/boot/vmlinux
- initrd (hd1,1)/boot/initrd //nimm die initrd von sdb2:/boot/initrd

vollkommen unabhängig was gespiegelt ist, wo stehen jetzt physikalisch die Dateien unterhalb von /boot auf sdb1 oder unterhalb von /boot auf sdb2 :???:

auf jedenfall läuft das ganze super.
Dann ist es bei dir ok, soweit es dann nach einem Kernelupdate oder einmal anfassen yast2->bootloader auch noch funktioniert.

robi
 
Oben