|
HowTo /
Debian Slug Raid 1Raid1 unter DebianSlug einrichten Debian Raid 1 How toS. Märkl - 21.02.2006 1. Zweck2. Vorbereitung3. Firmware flashen4. Raid 1 einrichten5. Bootstrap6. Anmerkungen7. Quellen8. Danksagung1. ZweckZweck dieser Beschreibung ist das einrichten eines Software Raid 1 mit Hilfe eines Debian Firmware Image. Ausgehend von zwei leeren USB Festplatten, die in diesem How to jeweils 300 GB haben. 2. VorbereitungAls erstes braucht man eine Raid enabled Debian Firmware die man von hier: http://www.student-zw.fh-kl.de/~pasc0010/ downloaden kann. Zudem braucht man noch das Programm zum Firmware flashen das man hier bekommt : http://www.sercomm.com/web/download.nsf/cd9678c311095856482566a5000aac9e/7f17bf7344cfc12f482566aa00389845/$FILE/Upgrade_207_XP.exe . Zudem brauch man zwei identisch große Festplatten, hier 300 GB. 3. Firmware flashen
4. Raid 1 einrichten
255 heads, 63 sectors/track, 38913 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 1 220 1767118+ fd Linux raid autodetect /dev/sda2 221 282 498015 fd Linux raid autodetect /dev/sda3 283 38913 310303507+ fd Linux raid autodetect
# mknod /dev/md2 b 9 2 # mknod /dev/md1 b 9 1
# mdadm --create --level=1 --raid-devices=2 /dev/md2 /dev/sdb2 /dev/sda2 # mdadm --create --level=1 --raid-devices=2 /dev/md3 /dev/sdb3 /dev/sda3 Der letzte Befehl ist sehr zeitintensiv, denn es kann wie in meinem Fall 9 - 10 Stunden dauern!!, ja genau - richtig gelesen 9 - 10 Stunden dauert es bis die große Datenpartition erstellt ist. In dieser Zeit am besten die NSLU2 nicht anfassen, ausschalten oder angucken, denn wenn es zu einem Fehler beim erstellen des Raid’s gibt, kann es sein das die Festplatten in einem nicht wiederherstellbaren Status verfallen. Das wiederum ist auch kein Scherz, ich habe bereits zahlreiche Berichte darüber gelesen. Mit dem Befehl: # cat /proc/mdstat kann man aber trotzdem dem Raid syncronisier Status zusehen und sich entspannt zurücklegen (oder schlafen gehen)
folgendes zu sehen sein: Personalities : [raid1] md3 : active raid1 sda3[0] sdb3[1]
310303424 blocks [2/2] [UU]
md2 : active raid1 sda2[0] sdb2[1]
497920 blocks [2/2] [UU]
md1 : active raid1 sda1[0] sdb1[1]
1767040 blocks [2/2] [UU]
unused devices: <none>
# swapon /dev/md2
# mke2fs -j /dev/md3 Das schreiben des Filesystems auf /dev/md3 kann auf einer normalen NSLU2 minimal ca. 12 Minuten dauern
# mdadm --detail --scan >> /etc/mdadm.conf Diese zwei Befehle erzeugen eine /etc/mdadm.conf die nun so aussehen sollte: DEVICE /dev/sd[ab][123] ARRAY /dev/md1 level=raid1 num-devices=2 UUID=67b6d7a3:5edf1793:724a117a:40e26693 ARRAY /dev/md2 level=raid1 num-devices=2 UUID=57aa400c:0ded363b:73976ebb:6942fad7 ARRAY /dev/md3 level=raid1 num-devices=2 UUID=4b1f9849:c50b111b:b85a11a8:fbb679d8 Die UUID ist immer unterschiedlich, also nicht wundern wenn es bei Ihnen eine andere ist. 5. Bootstrap
# mount /dev/md1 /mnt/debinst # mkdir /mnt/debinst/work # cd /mnt/debinst/work
# zcat data.tar.gz | tar xv
# ./usr/sbin/debootstrap --arch arm sid /mnt/debinst http://ftp2.de.debian.org/debian/
# cp /etc/resolv.conf etc/resolv.conf # cp /etc/hosts etc/hosts # cp /etc/hostname etc/hostname
# chroot /mnt/debinst
Man nehme einen Editor (vi) und erstelle eine /etc/fstab. In unserem How to sieht sie dann so aus: /dev/md1 / ext3 defaults 1 1 /dev/md2 swap swap defaults 0 0 /dev/md3 /storrage ext3 defaults 0 0 proc /proc proc defaults 0 0 Man muß dazu beachten das die fstab individuell aussehen kann je nachdem wie man das Raid Array aufgebaut hat und wo man die „Daten“ Partition einhängen will.
Suchen der folgenden Einträge 1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2 3:23:respawn:/sbin/getty 38400 tty3 4:23:respawn:/sbin/getty 38400 tty4 5:23:respawn:/sbin/getty 38400 tty5 6:23:respawn:/sbin/getty 38400 tty6 kommentieren Sie jeden dieser Einträge mit einem „#“ am Anfang der Zeile aus und fügen Sie direkt darunter folgenden Eintrag hinzu S0:2345:respawn:/sbin/getty 115200 ttyS0
# configuration file for ifup(8), ifdown(8)
#
# The loopback interface
auto lo iface lo inet loopback
#
# The NSLU2 built-in ethernet
auto eth0
iface eth0 inet dhcp
pre-up modprobe -f ixp400
pre-up modprobe -f ixp400_eth
Ich empfehle trotzdem die Konfiguration über statische IP-Adressen wie nun folgt beschrieben
# configuration file for ifup(8), ifdown(8)
#
# The loopback interface
auto lo
iface lo inet loopback
#
# The NSLU2 built-in Ethernet
auto eth0
iface eth0 inet static
pre-up modprobe -f ixp400
pre-up modprobe -f ixp400_eth
address 192.168.1.77
netmask 255.255.255.0
gateway 192.168.1.1
Die Punkte “address”, “netmask” und “gateway” stellen sie entsprechend Ihrem Netzwerk ein.
# apt-get dist-upgrade # apt-get install anacron popularity-contest nslu2-utils # apt-get install openssh-server
# passwd
Da sonnst das Raid nicht gestartet werden kann. Wenn das „mdadm“ Packet installiert ist, ist aber noch keine „mdadm.conf“ vorhanden die das Raid zum Start initialisiert.
# mdadm --detail --scan >> /etc/mdadm/mdadm.conf Editieren Sie die eben erstellte /etc/mdadm/mdadm.conf das sie danach Debian konform aussieht: DEVICE partitions
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=67b6d7a3:5edf1793:724a117a:40e26693
devices=/dev/sda1,/dev/sdb1
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=57aa400c:0ded363b:73976ebb:6942fad7
devices=/dev/sda2,/dev/sdb2
ARRAY /dev/md3 level=raid1 num-devices=2 UUID=4b1f9849:c50b111b:b85a11a8:fbb679d8
devices=/dev/sda3,/dev/sdb3
# killall syslogd anacron # umount /mnt/debinst
Als erstes fügen Sie folgende Zeilen nach “#!/bin/sh“ ein: /sbin/insmod /lib/modules/2.6.15/kernel/drivers/md/md-mod.ko /sbin/insmod /lib/modules/2.6.15/kernel/drivers/md/raid1.ko /bin/mknod /dev/md3 b 9 3 /bin/mknod /dev/md2 b 9 2 /bin/mknod /dev/md1 b 9 1 /sbin/mdadm --assemble --scan --config=/etc/mdadm.conf dann fügen Sie noch vor „ UUID=’ “ sleep=’280’ ein. Dies ist notwenig wenn das RootFS nicht richtig beim beenden ausgehängt werden kann und dann somit beim boot als „dirty“ markiert wird. Wenn dies der Fall ist will Debian als erstes die Raid RootFS Partition syncronisieren und das kann bei 1.8 GB schon eine Zeit dauern, deshalb habe ich diesen Wert gewählt. Es kann durchaus sein das es in kürzerer Zeit auch geschehen kann - so aber funktioniert es aber auf alle Fälle, und wie oft bootet man ein Linux System schon..
nach dem reboot sollte nun die Debian Umgebung jetzt über die Festplatten geladen werden ( auf die Festplattenaktivität an evtl. vorhandenen LED’s an den Gehäusen achten - diese müssten bei einer Aktion simultan leuchten ). So nun haben Sie eine voll funktionsfähige Debian Distribution auf Ihrer NSLU2. 6. Anmerkung:
7. Quellen:Für dieses How to habe ich folgende Quellen verwendet:
8. Danksagung:Besonders bedanken möchte ich mich für die gute Unterstützung bei: EvilDevil (http://www.nslu2-info.de/forum/member.php?u=3361) Torsten Flammiger NSLU2-Info Forum (http://www.nslu2-info.de) Tags |