Linux software raid: Unterschied zwischen den Versionen

Aus metasec wiki
Wechseln zu: Navigation, Suche
(Bootmanager installieren)
Zeile 131: Zeile 131:
  
 
<pre>
 
<pre>
chroot /mnt/zphone
+
chroot /mnt/zphone /bin/bash
 
mount /proc
 
mount /proc
 
lilo
 
lilo

Version vom 9. März 2010, 10:03 Uhr

Voraussetzungen

Vorarbeiten

Booten von der SystemRescueCD.

Danach müssen die Festplatten partitioniert werden. Falls Partitionen bereits vorhanden sind, dann müssen die s.g. "Partitiontypes" auf "FD" angepasst werden. Dieser Typ definiert die Partition zum "RAID-Autodetect" Typ. Somit wird diese Partition als Teil eines RAID Verbundes beim booten vom Kernel erkannt. Dieses wird am besten mit "cfdisk" erledigt. I.d.R. wird ein RAID1 aufgesetzt, also ein voll gespiegelter Festplattenverbund. Das Festplattenlayout sollte man sich vorher überlegen, oder einfach das Standardlayout vom Zphone übernehmen.

Danach müssen die RAID-Sets aufgesetzt werden.
Wichtig ist, dass bei dieser Methode das RAID auf Partitionsebene gemacht wird! Beim den nachfolgenden Kommandos gehen alle Daten verloren!!!

Prüfen Sie ob beide Festplatten gleich partitioniert sind! Falls es nicht der Fall, holen Sie diese nach. Dieses kann auch mit cfdisk erledigt werden.

Raid einrichten

Das Software Raid unter Linux wird mit dem Kommando "mdadm" verwaltet. Diese schreibt die Raidsignaturen direkt auf die jeweiligen Partitionen.
Zum Anlegen der Raidsets gehen Sie wie folgt vor:

/dev/md0 - Bootpartition:

mdadm --create /dev/md0 --name=BOOT --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1

/dev/md1 - Datenpartition:

mdadm --create /dev/md1 --name=DATA --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2

Sie können den Verlauf des Arraybuilds mit folgendem Kommando überwachen


root@sysresccd /root % cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md1 : active raid1 sdb2[1] sda2[0]
      243585472 blocks [2/2] [UU]
      [>....................]  resync =  0.0% (2176/243585472) finish=1852.0min speed=2176K/sec

md0 : active raid1 sdb1[1] sda1[0]
      56128 blocks [2/2] [UU]

unused devices: <none>

Formatieren

Nachdem die Arrays aufgebaut sind, können diese formatiert werden. Dieses kann auch bereits während des Arraybuilds passieren. Allerdings ist es besser die Dinge sequenziell zu machen...

/dev/md0 - Bootpartition:

mkfs.ext3 /dev/md0

/dev/md1 - Datenpartition:

mkfs.ext3 /dev/md1

Zphone installieren

Nachdem nun die formatierten Arrays zur Verfügung stehen, können diese gemountet und mit Daten bespielt werden. Wenn Sie eine SystemResCD verwenden gehen Sie wie folgt vor:

Dateisysteme einhängen:

mkdir /mnt/zphone
mount /dev/md1 /mnt/zphone

mkdir /mnt/zphone/boot
mount /dev/md0 /mnt/zphone/boot

Zphone "zu Fuß" installieren:
Dieses setzt eine funktionierende Internetverbindung voraus!

cd /mnt/zphone
wget http://dl.metasec.de/zphone_master_image_current.tar.bz2
tar --numeric-owner -xvjf /mnt/zphone/zphone_master_image_current.tar.bz2 -C /mnt/zphone

Bootmanager anpassen

Wichtig: Der jeweilige Bootkernel ist unter /mnt/zphone/boot zu prüfen. Dieses Beschreibung ist nur mit Beispieldaten verfasst

/etc/lilo.conf

lba32
boot=/dev/sda
install=/boot/boot-menu.b
map=/boot/map
delay=20
timeout=20
prompt
vga=normal
default=ast

image=/boot/vmlinuz-2.6.24
        label=ast
        read-only
        root=/dev/md1
        append=""
        initrd=/boot/initrd.img-2.6.24

image=/boot/vmlinuz-2.6.24
        label=ast_rescue
        read-only
        root=/dev/md1
        append="init S "
        initrd=/boot/initrd.img-2.6.24


fstab anpassen

/etc/fstab


# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>                       <dump>  <pass>
/dev/md1       /               ext3    defaults,errors=remount-ro      0       1
/dev/md0       /boot           ext2    defaults                        0       2
/dev/sda3       none            swap    sw                              0       0
/dev/sdb3       none            swap    sw                              0       0
proc            /proc           proc    defaults                        0       0

Bootmanager installieren

chroot /mnt/zphone /bin/bash
mount /proc
lilo
umount /proc
exit

Soweit der lilo beim installieren des Bootrecords keine Fehler ausgibt, können Sie mit "reboot" die Maschine neu booten. Entfernen Sie die CD und starten Sie von Festplatte...

Troubelshooting

http://gnu.linux-sysadmin.org/cms/show_article/5044.html