Gentoo auf Software RAID

BloodyMary

BloodyMary

Pornophon
Hallo,
ich habe grade die Möglichkeit auf einem grade ungenutzem etwas älterem Server n bissl zu Experimentieren.
Das erste was ich von Gentoo gehört habe ist, das die installtion sehr aufwändig und kompliziert ist. Deshalb hab ich bisher die Finger davon gelassen. Aber ich fühle mich jetzt dem ganzen so halbwegs gewachsen. Mich fasziniert die Idee das Alles auf dem PC auf dem es ist kompiliert wird.
Na jedenfalls stehe ich vor dem Problem das ich mein Software RAID nicht richtig zum laufen bekomme.

Das System:
2x Pentium XXX á 400Mhz
2x 17GB SCSI (/dev/sda, /dev/sdb)
2x 80GB SCSI (/dev/sdc, /dev/sdd)
ca. 512MB RAM
8 oder 16 fach CD-ROM (/dev/hdc)
Optional: 4GB IDE (/dev/hda)

So soll das ganze Partitoniert werden:
Code:
/dev/sda1 1024 MB - Linux RAID
/dev/sdb1 1024 MB - Linux RAID
==>RAID 1 /dev/md1 SWAP

/dev/sda2 REST - Linux RAID
/dev/sdb2 REST - Linux RAID
==>RAID 0 /dev/md2 (ext3 "/")

/dev/sdc1 ALLES - Linux RAID
/dev/sdd1 ALLES - Linux RAID
==>RAID 0 /dev/md3 (ext3 "/home")

/dev/hda ALLES ext3 "/boot"
Alternativ dazu könnte ich auch 2 GB Swap auf sdb und 2 GB Boot auf sda machen.

Ich habe mich an eine Anleitung aus der Englischsprachigen Gentoo-Wiki gehalten (http://gentoo-wiki.com/HOWTO_Install_on_Software_RAID). Da steht aber des öfteren "Do not forget..." super, und was ist mit den sachen an die ich nicht erinnert werde?
Außerdem benutze zusätzlich ich die deutschsprachige Anleitung von Gentoo.org (http://www.gentoo.org/doc/de/handbook/handbook-x86.xml)

Es scheint irgendwie an einer Art Unvollständigkeit zu hapern.
Also: Gibt es noch irgendwo eine detailliertere Anleitung auf Deutsch?

Meine Vorgehensweise:
Bei den Bootoptionen "gentoo doscsi"
Dann bei Laden F1 (Um das KeyboardLayout später aus zu wählen)
Auswählen der Auflösung der Konsole (25:80)
auf der Konsole: Rootpasswort geändert.
auf der Konsole: /etc/init.d/sshd start

--> So und den Rest per SSH

Kernelmodule laden
Partitionieren der Festplatten

und dann beginnen die Unklarheiten in der Anleitung:

Now before we start creating the RAID arrays, we need to create the metadevice nodes: cd /dev && MAKEDEV md
After partitioning, create the /etc/mdadm.conf file (yes, indeed, on the Installation CD environment) using mdadm, an advanced tool for RAID management. For instance, to have your boot, swap and root partition mirrored (RAID-1) covering /dev/sda and /dev/sdb, you can use:
Code:
mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
mdadm --create --verbose /dev/md2 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2
mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb3
mdadm --create --verbose /dev/md4 --level=1 --raid-devices=2 /dev/sda4 /dev/sdb4

cd /dev && MAKEDEV md
Soll ich das jetzt so ausführen?

So, dieses config file Estelle ich dann mit den oben genannten Befehlen auf mein System angepasst.

Later, after you have created your file system, save your mdadm.conf file:
Code:
mdadm --detail --scan >> /etc/mdadm.conf
Super, soll ich das JETZT ausführen??? oder erst wenn ich das dateisystem erstellt habe also "mk2fs ext -j"???

dann gucke ich mir die mdstat an, aber die sieht mir so aus als wärs schon fertig.

so, dann mache ich die dateisysteme:

Code:
mke2fs -j /dev/md2
mke2fs -j /dev/md3

Dann benutze ich "swapon -s /dev/md1" weil ich auch eine Fehlermeldung bekomme(wofür auch immer das -s steht(da ist die anleitung nicht so präzise))

Code:
mount /dev/md2 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/hda1 /mnt/gentoo/boot
mkdir /mnt/gentoo/home
mount /dev/md3 /mnt/gentoo/home

so, und dann mache ich
Code:
cp /etc/mdadm.conf  /mnt/gentoo/etc

Ab jetzt gehen beide Anleitungen leider WEIT auseinander, ich denke das ich iwie dem Bootmanager installieren muss. Aber wie? denn ich kann weder "grub" noch "lilo" starten.

Würde ich mich jetzt an die Andere Anleitung Halten(http://www.gentoo.org/doc/de/handbook/handbook-x86.xml?part=1&chap=5), müsste ich jetzt ja das stage3 archiv und Portage runterladen. Aber als ich dann mal so weit war, ließ sich portage nicht richtig entpacken, angeblich wegen mangelnder Rechte.

Tja ich hoffe das mir da irgendjemand helfen kann, vllt hab ich da ja was übersehen...
 
Hi.
ich habe grade die Möglichkeit auf einem grade ungenutzem etwas älterem Server n bissl zu Experimentieren.
Dann macht's ja nichts wenn etwas kaputtgeht... ;)
Es scheint irgendwie an einer Art Unvollständigkeit zu hapern.
Also: Gibt es noch irgendwo eine detailliertere Anleitung auf Deutsch?
Noch vollstaendiger kann's doch kaum werden?
Womit wir wieder beim Experimentieren waeren...
Now before we start creating the RAID arrays, we need to create the metadevice nodes: cd /dev && MAKEDEV md
After partitioning, create the /etc/mdadm.conf file (yes, indeed, on the Installation CD environment) using mdadm, an advanced tool for RAID management. For instance, to have your boot, swap and root partition mirrored (RAID-1) covering /dev/sda and /dev/sdb, you can use:

Schauen wir mal Schritt fuer Schritt:
- cd /dev && MAKEDEV md
wechsle nach /dev und erstelle mit makedev das Device md (IMHO Ueberfluessig
aber nicht schaedlich)
- *After Partitioning* create...
Nach dem Partitionieren sollst du das File erstellen, die meinen Wahrscheinlich
nachdem du die RAIDS assembled hast (IMHO ist das egal, hauptsache die
Dinger existieren).
- For instance, to have your boot, swap and root partition mirrored (RAID-1)
covering /dev/sda and /dev/sdb, you can use:
Or if you are lazy:

Etwas weiter unten steht noch (scheint mir sinnvoller, da die Devices noch mit mknod erstellt werden):

for i in `seq 1 4`; do mknod /dev/md$i b 9 $i; mdadm --create /dev/md$i --level=1 --raid-devices=2 /dev/sda$i /dev/sdb$i; done

` seq 1 4` musst du natuerlich anpassen aber die nodes muessen erstellt werden da du ja aus dem Livesystem heraus arbeitest wo sie wahrscheinlich nicht existieren.

Wieder weiter unten steht (also eigentlich in der richtigen Reihenfolge):
Later, after you have created your file system, save your mdadm.conf file:

mdadm --detail --scan >> /etc/mdadm.conf

Womit du dann das mdadm.conf File erstellst das du, jetzt da es ja alle benoetigten RAIDS auch findet, spaeter nach /etc (im chroot oder auf das gemountete Device) kopieren kannst.

Jetzt halt mit (wie's auch da steht) den sync abwarten:
watch -n1 'cat /proc/mdstat'

Damit sind deine md-Devices erstellt und du kannst sie Partitionieren.

Jetzt noch mounten und alles wir gut.

Alles in allem ein recht gutes Tutorial.

P.S.: Ueberarbeite mal deine Ortsbeschreibung.
 
So, bis dahin hab ich mal meine Eingaben in die Konsole rauskopiert:
Code:
livecd ~ # modprobe raid1
livecd ~ # modprobe raid0
livecd ~ # fdisk -l /dev/hda

Disk /dev/hda: 4327 MB, 4327464960 bytes
255 heads, 63 sectors/track, 526 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1         526     4225063+  83  Linux
livecd ~ # fdisk -l /dev/sda

Disk /dev/sda: 18.2 GB, 18275790848 bytes
32 heads, 32 sectors/track, 34858 cylinders
Units = cylinders of 1024 * 512 = 524288 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        1953      999920   fd  Linux raid autodetect
/dev/sda2            1954       34858    16847360   fd  Linux raid autodetect
livecd ~ # fdisk -l /dev/sdb

Disk /dev/sdb: 18.2 GB, 18275790848 bytes
32 heads, 32 sectors/track, 34858 cylinders
Units = cylinders of 1024 * 512 = 524288 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1953      999920   fd  Linux raid autodetect
/dev/sdb2            1954       34858    16847360   fd  Linux raid autodetect
livecd ~ # fdisk -l /dev/sdc

Disk /dev/sdc: 73.4 GB, 73497833472 bytes
32 heads, 32 sectors/track, 140185 cylinders
Units = cylinders of 1024 * 512 = 524288 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1      140185    71774704   fd  Linux raid autodetect
livecd ~ # fdisk -l /dev/sdd

Disk /dev/sdd: 73.4 GB, 73497833472 bytes
32 heads, 32 sectors/track, 140185 cylinders
Units = cylinders of 1024 * 512 = 524288 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1      140185    71774704   fd  Linux raid autodetect
livecd ~ # cd /dev && MAKEDEV md
livecd dev # mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
mdadm: /dev/sda1 appears to contain an ext2fs file system
    size=31104K  mtime=Mon Jun 11 14:55:39 2007
mdadm: /dev/sdb1 appears to contain an ext2fs file system
    size=31104K  mtime=Mon Jun 11 14:55:39 2007
mdadm: size set to 999808K
Continue creating array? yes
mdadm: array /dev/md1 started.
livecd dev # mdadm --create --verbose /dev/md2 --level=0 --raid-devices=2 /dev/sda2 /dev/sdb2
mdadm: chunk size defaults to 64K
mdadm: /dev/sda2 appears to be part of a raid array:
    level=raid0 devices=2 ctime=Mon Jun 11 14:21:15 2007
mdadm: /dev/sdb2 appears to be part of a raid array:
    level=raid0 devices=2 ctime=Mon Jun 11 14:21:15 2007
Continue creating array? yes
mdadm: array /dev/md2 started.
livecd dev # mdadm --create --verbose /dev/md3 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdd1
mdadm: chunk size defaults to 64K
mdadm: /dev/sdc1 appears to contain an ext2fs file system
    size=143549184K  mtime=Mon Jun 11 14:55:53 2007
mdadm: /dev/sdc1 appears to be part of a raid array:
    level=raid0 devices=2 ctime=Mon Jun 11 14:22:11 2007
mdadm: /dev/sdd1 appears to be part of a raid array:
    level=raid0 devices=2 ctime=Mon Jun 11 14:22:11 2007
Continue creating array? yes
mdadm: array /dev/md3 started.
livecd dev # mdadm --detail --scan >> /etc/mdadm.conf
livecd dev # cat /proc/mdstat
Personalities : [raid1] [raid0]
md3 : active raid0 sdd1[1] sdc1[0]
      143549184 blocks 64k chunks

md2 : active raid0 sdb2[1] sda2[0]
      33694592 blocks 64k chunks

md1 : active raid1 sdb1[1] sda1[0]
      999808 blocks [2/2] [UU]

unused devices: <none>
livecd dev # mke2fs -j /dev/md2
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
4218816 inodes, 8423648 blocks
421182 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=12582912
258 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624

Writing inode tables: done
Creating journal (32768 blocks): ^[[Adone
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
livecd dev # mke2fs -j /dev/md3
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
17956864 inodes, 35887296 blocks
1794364 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=37748736
1096 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
livecd dev # swapon /dev/md1
swapon: /dev/md1: Invalid argument
livecd dev # swapon -s /dev/md1
livecd dev # mount /dev/md2 /mnt/gentoo
livecd dev # mkdir /mnt/gentoo/boot
livecd dev # mount /dev/hda1 /mnt/gentoo/boot
livecd dev # mkdir /mnt/gentoo/home
livecd dev # mount /dev/md3 /mnt/gentoo/home
livecd dev # cp /etc/mdadm.conf  /mnt/gentoo/etc

Ab da bin ich dann so vorgegangen wie hier:
http://www.gentoo.org/doc/de/handbook/handbook-x86.xml?part=1&chap=5

komischerweise war der Portage-tree sehr schnell entpackt und es gab keine ausgabe, nur eine neue Zeile.
 
Hmm.. was willst du damit sagen?
Die RAIDS funktionieren ja jetzt so wie's aussieht.

P.S.: Der Text deiner Ortsbeschreibung hat mich nicht gestoert sondern die Rechtschreibung.
 
So, soweit so gut...
Ich bin jetzt dabei den Kernel zu kompilieren... aber ob das wirklich funktioniert weiß ich erst wenn ich den Bootloader eingestelt habe und die fstab konfiguriert habe...
Hoffentlich habe ich bei den sachen die einkompiliert werden nichts vergessen...
 
Keine sorge, wenn du was vergessen hast boot wieder von der cd, die sachen mit mknod musst du wieder machenen, dann mdadm --assemble /dev/md ... dann das chroot und es kann schon weiter gehen.
 
Probleme mit Software-Raid

Hallo,

bin neu hier und habe ein Problem:

Ich möchte mir ein Software-Raid1 mit zwei 160 GB-SATA-Platten (gleiches Produkt) erstellen.
Die platten haben jeweils eine Partition:
Code:
Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       19457   156288321   fd  Linux raid autodetect


Disk /dev/sdc: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       19457   156288321   fd  Linux raid autodetect

ich hab dies anhand des Tutorials oben gemacht.
Das ganze funktioniert auch,
aber wenn ich die Maschine neu boote schreibt er folgendes beim start:

Code:
md: kicking non-fresh sdb1 from array!

Ich habe beide Platten formartiert (ext3) und sie sind ident. Beim sync nach dem Erstellen gibt es auch keine Fehler.

Woran könnte das Problem liegen?

bitte um Hilfe.

Danke und viele Grüße,
Stefan
 
hast du den partitionstyp von den einzelnen platten auf Linux RAID eingestellt?
Wenn nicht solltest das ändern, ansonsten solltest du mehr informationen hergeben weil das allein sagt nix aus
 
Hallo,

der Typ der Partitionen ist Linux raid autodetect:
Code:
Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       19457   156288321   fd [B] Linux raid autodetect[/B]


Disk /dev/sdc: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       19457   156288321   fd [B] Linux raid autodetect[/B]

Wenn ich den Typ nicht auf "Linux raid autodetect" setze, findet der Kernel ja die beiden platten nicht, und erkennt sie nicht automatisch als Raid oder?

Was mich beunruhigt ist, dass dieses Problem immer erst auftritt nachdem ich neu boote.
Könnte es sein, dass nicht sauber runter gefahren wird?
Fehler wird mir keiner angezeigt.

viele Grüße,
Stefan
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Welche Infos brauchst du noch, um mir evt. weiterhelfen zu können?

Brauche dringend Hilfe!
 
Zuletzt bearbeitet:

Ähnliche Themen

Centosbefehle

Festplatte auf SD Karte umziehen

Raid-1 einrichten

Software RAID 1 verkleinern

Software-Raid (mdadm) - Festplatte ersetzen

Zurück
Oben