[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mdadm --create /dev/md0 ... -> error ...: No such file



Hi,

ich bin u.a. nach
http://www.eggmouse.com/phpwiki.php?pagename=RaidMitMdadmUnterDebian
und
http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Software-RAID-HOWTO.html
vorgegangen. Ich habe ein RAID1 auf zwei identischen Platten erstellt,
von denen auf einer schon aktiv das System lief, zusätzlich lief der
grub auf einer vorhandenen Platte hda, also nicht auf einem raid-device.

- bei identischen Platten mit
  sfdisk -d /dev/hdb | sfdisk /dev/hde
  die Partitionstabelle von der (vorhandenen) hdb auf die neue hde
  kopieren.
- mit fdisk -l /dev/hdb und fdisk -l /dev/hde vergleichen
- mit cfdisk den Partitionstyp der zu spiegelnden Partitionen von 83
  (Linux) auf FD (RAID autodetect) umstellen.
- Erstellung der RAID-Partitionen auf der NEUEN Festplatte:
  mdadm -Cva /dev/md0 -l1 -n2 missing /dev/hde2
  mdadm -Cva /dev/md1 -l1 -n2 missing /dev/hde3
- Erstellung von /etc/mdadm/mdadm.conf:
  echo DEVICE /dev/hdb[23] /dev/hde[23] > /etc/mdadm/mdadm.conf
  mdadm -D --brief /dev/md[01] >> /etc/mdadm/mdadm.conf
- jetzt mkfs.xfs /dev/md0
- von /dev/hdb booten und die Daten von hdb2 nach md0
  kopieren, ebenso fuer /hdb3:
  tar cf - /* --exclude "/proc/*" --exclude "/sys/*" --exclude "/mnt/*" --exclude "/test/*" | tar xf -
  (Nicht vergessen, evtl. die ausgesparten Mountpunkte auf dem neuen
  Device neu zu erstellen!!!)
- Das boot-Device /dev/md0 nach /test mounten und dort chrooten:
  cd /test
  chroot .
  mount proc
  rdev /vmlinuz /dev/md0
- in der fstab auf /dev/md0 die /dev/hdb-Eintraege gegen die passenden
  /dev/md-Eintraege austauschen.
- in /etc/mkinitrd/modules die Module md und raid1 eintragen.
- Neue initrd erstellen:
  mkinitrd -r /dev/md0 -o /boot/initrd.img-2.6.8-2-686raid
  rm /initrd.img
  ln -s /boot /initrd.img-2.6.8-2-686raid /initrd.img
- neuerstellte initrd.img zur Kontrolle mounten:
  mount /boot/initrd.img-2.6.8-2-686raid /mnt/ -t cramfs -o loop
- Dort eingetragene UUID mit der vorher ausgelesenen vergleichen:
- ausgelesene UUID:
  mdadm -D /dev/md0
- UUID in der initrd.img:
  less script
(Hilfsbefehl um md zu mounten:
 mdadm -A -s -a
 mdadm /dev/md0 -a /dev/hdb2

- in lilo.conf root=/dev/md0 eintragen (oder grub bearbeiten).
- lilo ausfuehren.

- REBOOT

- Wenns funktioniert hat, die vorher noch nicht eingebundenen Partitionen
  von ehemals /dev/hdb2 auch auf FD setzen (mit cfdisk oder wie hier
  mit sfdisk):
  sfdisk -c /dev/hdb2 fd
  sfdisk -c /dev/hdb3 fd
- Partitionen zum RAID hinzufuegen:
  mdadm /dev/md0 -a /dev/hdb2
  mdadm /dev/md1 -a /dev/hdb3
- Warten, bzw. mit cat /proc/mdstat oder watch -n10 cat /proc/mdstat
  den Fortschritt beobachten.
- /etc/mdadm/mdadm.conf editieren:
  mdadm -D --brief /dev/md[01] >> /etc/mdadm/mdadm.conf
- mcedit /etc/mdadm/mdadm.conf
  Das Ergebnis sollte ungefaehr so aussehen:
  DEVICE /dev/hdb2 /dev/hdb3 /dev/hde2 /dev/hde3
  ARRAY /dev/md0 level=raid1 num-devices=2 UUID=456789bb:12345039:267854cb:1235c111
  devices=/dev/hdb2,/dev/hde2 auto=yes
  ARRAY /dev/md1 level=raid1 num-devices=2 UUID=12345647:3445697b:111789ca:de542111
  devices=/dev/hdb3,/dev/hde3 auto=yes
- Wieder neue Ramdisk erstellen:
  mkinitrd -r /dev/md0 -o /boot/initrd.img-2.6.8-2-686raid
  rm /initrd.img
  ln -s /boot /initrd.img-2.6.8-2-686raid /initrd.img
- neuerstellte initrd.img zur Kontrolle mounten:
  mount /boot/initrd.img-2.6.8-2-686raid /mnt/ -t cramfs -o loop
- Dort eingetragene UUID mit der vorher ausgelesenen vergleichen:
- ausgelesene UUID:
  mdadm -D /dev/md0
- UUID in der initrd.img:
  less script
- dpkg-reconfigure mdadm
  (auto jetzt mit yes beantworten)

Hilfsweise:
  Devices erstellen mit
  mknod /dev/md0 b 9 0
  mknod /dev/md1 b 9 1


Ist jetzt vielleicht alles ein wenig wirr, aber es hilft hoffentlich.
              

ciao, Dirk
-- 
|      Akkuschrauber Kaufberatung and AEG GSM stuff       |
|   Visit my homepage:   http://www.nutrimatic.ping.de/   |
| FIDO: Dirk Salva 2:244/6305.10 Internet: dsalvaATgmx.de |
|    The "Ruhrgebiet", best place to live in Germany!     |



Reply to: