Soft RAID i rootfs

Pawel Koska pawel w artfan.net
Śro, 24 Maj 2006, 15:35:28 CEST


Dnia środa, 24 maja 2006 09:07, Marcin Król napisał:

> > 5. mi działa ;-)
>
> Mi rowniez :)

A Mi nie działa :-)


Dzisiaj się zabrałem jeszcze raz za to, myślałem że może poprzednim razem coś 
pominąłem... i pewnie tak było, bo i teraz zrobiłem ten sam bląd.


Mam komunikat:
No bootable device -- insert boot disk and press any key.

jak dla mnie to on nie zapisał nic do mbr, myślę że jak jest podłączony jeden 
dysk to też to nieszczęsne lilo powinno się pojawić (a tego nie robi).

Jak to robiłem? W załączniku podrzucam moje notateczki, bo jak by się udało to 
był bym wstanie z nimi powtórzyć ten wyczyn.


> > 6. pozdrawiam, abram
>
> Pozdrawiam rownie.
>
> M.

Dziękuję za pozdrowienia i Ja też pozdrawiam,
Paweł
-------------- następna część ---------
Instaluje PLD AC na komputerze z dwoma dyskami 250GB SATA oczywiście z RescueCD


Stworzyłem kilka partycji

[root w rescue ~]# cat /proc/partitions
major minor  #blocks  name

   7     0      47852 loop0
   8     0  244198584 sda
   8     1    2000061 sda1
   8     2    8201182 sda2
   8     3    8201182 sda3
   8     4          1 sda4
   8     5    6249253 sda5
   8     6    6249253 sda6
   8     7  213294973 sda7
   8    16  244198584 sdb
   8    17    2000061 sdb1
   8    18    8201182 sdb2
   8    19    8201182 sdb3
   8    20          1 sdb4
   8    21    6249253 sdb5
   8    22    6249253 sdb6
   8    23  213294973 sdb7


Ładuję niezbędne moduły.
modprobe md
modprobe raid0
modprobe raid1

Plan jest taki:
sda1 i sdb1 jako SWAP
sda2 +sdb2 jako md0 z raid1 montowane do /
sda3 +sdb3 jako md1 z raid1 montowane do /usr
sda5 +sdb5 jako md2 z raid1 montowane do /var
sda6 +sdb6 jako md3 z raid0 montowane do /tmp
sda7 +zdb7 jako md4 z raid1 montowane do /home (tym się później zajmiemy)


mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2
mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb3
mdadm --create --verbose /dev/md2 --level=1 --raid-devices=2 /dev/sda5 /dev/sdb5
mdadm --create --verbose /dev/md3 --level=0 --raid-devices=2 /dev/sda6 /dev/sdb6


Chyba już się zsynchronizowało to co się miało synchronizować
# cat /proc/mdstat
Personalities : [raid0] [raid1]
md3 : active raid0 sdb6[1] sda6[0]
      12498304 blocks 64k chunks

md2 : active raid1 sdb5[1] sda5[0]
      6249152 blocks [2/2] [UU]

md1 : active raid1 sdb3[1] sda3[0]
      8201088 blocks [2/2] [UU]

md0 : active raid1 sdb2[1] sda2[0]
      8201088 blocks [2/2] [UU]

unused devices: <none>


System plików reiserfs
mkfs.reiserfs /dev/md0
mkfs.reiserfs /dev/md1
mkfs.reiserfs /dev/md2
mkfs.reiserfs /dev/md3


mkdir /pld
mount /dev/md0 /pld/
mkdir /pld/{usr,var,tmp}
mount /dev/md1 /pld/usr/
mount /dev/md2 /pld/var/
mount /dev/md3 /pld/tmp/

[root w rescue ~]# df -hT
Filesystem    Type    Size  Used Avail Use% Mounted on
none         tmpfs    1.7G     0  1.7G   0% /dev/shm
/dev/md0  reiserfs    7.9G   33M  7.8G   1% /pld
/dev/md1  reiserfs    7.9G   33M  7.8G   1% /pld/usr
/dev/md2  reiserfs    6.0G   33M  6.0G   1% /pld/var
/dev/md3  reiserfs     12G   33M   12G   1% /pld/tmp


Instaluję PLD.
[root w rescue ~]# poldek -l
ac           http://ftp.ac.pld-linux.org/dists/ac/PLD/i686/PLD/RPMS/  (type=pdir)
ac-ready     http://ftp.ac.pld-linux.org/dists/ac/ready/i686/  (noauto,type=pdir)
ac-supported http://ftp.ac.pld-linux.org/dists/ac/supported/i686/  (noauto,type=pdir)
ac-test      http://ftp.ac.pld-linux.org/dists/ac/test/i686/  (noauto,type=pdir)
ac-updates-general http://ftp.ac.pld-linux.org/dists/ac/updates/general/i686/  (noauto,type=pdir)
ac-updates-security http://ftp.ac.pld-linux.org/dists/ac/updates/security/i686/  (type=pdir)
home         /root/rpm/RPMS  (noauto,noautoup,type=dir)


rpm --root /pld --initdb
poldek  --root /pld --install setup FHS dev chkconfig dhcpcd poldek vim geninitrd lilo modutils \
openssh-server openssh-clients mc mdadm mdadm-initrd mount


fstab
[root w rescue /pld]# grep -v -E ^# /pld/etc/fstab
/dev/sda1       swap                    swap    defaults                0 0
/dev/sdb1       swap                    swap    defaults                0 0
/dev/md0        /               reiserfs        defaults                0 0
/dev/md1        /usr            reiserfs        defaults                0 0
/dev/md2        /var            reiserfs        defaults                0 0
/dev/md3        /tmp            reiserfs        defaults                0 0

none            /proc                   proc    defaults,noauto,gid=17  0 0
none            /sys                    sysfs   defaults,noauto,gid=17  0 0
none            /proc/bus/usb           usbfs   defaults,noauto,devgid=78,devmode=0664  0 0
none            /dev                    devfs   defaults,noauto         0 0
none            /dev/pts                devpts  gid=5,mode=620          0 0
none            /dev/cpuset             cpuset  defaults,noauto         0 0



lilo.conf

[root w rescue /pld]# grep -v -E ^# /pld/etc/lilo.conf

install=bmp
bitmap=/boot/lilo-pldblack.bmp
bmp-colors=9,,,6,0,0
bmp-table=21,287p,2,4,175p
bmp-timer=73,29,7,0,0



boot=/dev/md0
 raid-extra-boot="mbr-only"
read-only
lba32
prompt
timeout=50

image=/boot/vmlinuz
        label=pld
        root=/dev/md0
        initrd=/boot/initrd



Instalujemy Kernel SMP
mount none /pld/proc -t proc

Wchodze do chroota
chroot /pld

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

wygenerowalo:
# grep -v -E ^# /etc/mdadm.conf
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=b1e85e5e:f7ced435:146031e0:2045643c
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=d30d82a0:1a173629:c1eb8f2c:5aaae51c
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=58f0b3c3:6efd1b61:6a381b8e:50988538
ARRAY /dev/md3 level=raid0 num-devices=2 UUID=ce11e12c:51921690:8e6581ff:c3ec2a16



Moj geninitrd
[root w rescue /]# grep -v -E ^# /etc/sysconfig/geninitrd
PREMODS="md-mod raid0 raid1 piix ide-core ide-disk sd_mod scsi_mod"
COMPRESS=yes
USE_UDEV=no
USE_SUSPEND=no
USE_SUSPEND2=no
PROBESCSI=yes
PROBEIDE=yes
PROBERAID=yes

Wygenerowalem nowe magiczne initrd
# geninitrd -v /boot/initrd.test 2.6.14.7-5smp --with-raidstart
Finding RAID details using mdadm for rootdev=/dev/md0
Using modules:  kernel/drivers/md/md-mod.ko.gz kernel/drivers/md/raid0.ko.gz kernel/drivers/md/raid1.ko.gz kernel/drivers/ide/ide-core.ko.gz kernel/drivers/ide/pci/piix.ko.gz kernel/drivers/ide/ide-disk.ko.gz kernel/drivers/scsi/scsi_mod.ko.gz kernel/drivers/scsi/sd_mod.ko.gz kernel/fs/reiserfs/reiserfs.ko.gz
`/lib/modules/2.6.14.7-5smp/kernel/drivers/md/md-mod.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/md/md-mod.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/md/raid0.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/md/raid0.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/md/raid1.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/md/raid1.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/ide-core.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/ide-core.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/pci/piix.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/pci/piix.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/ide-disk.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/ide/ide-disk.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/scsi/scsi_mod.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/scsi/scsi_mod.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/drivers/scsi/sd_mod.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/drivers/scsi/sd_mod.ko.gz'
`/lib/modules/2.6.14.7-5smp/kernel/fs/reiserfs/reiserfs.ko.gz' -> `/tmp/initrd.gA3Aq9/lib/modules/2.6.14.7-5smp/kernel/fs/reiserfs/reiserfs.ko.gz'
/bin/initrd-busybox -> /tmp/initrd.gA3Aq9/bin/sh
Loading module [md-mod] without options.
Loading module [raid0] without options.
Loading module [raid1] without options.
Loading module [ide-core] without options.
Loading module [piix] without options.
Loading module [ide-disk] without options.
Loading module [scsi_mod] without options.
Loading module [sd_mod] without options.
Loading module [reiserfs] without options.
Setting up mdadm...
/sbin/initrd-mdassemble -> /tmp/initrd.gA3Aq9/bin/mdassemble
Setting up array (/dev/md0 = /dev/sdb2 /dev/sda2)
copying /dev/sdb2
copying /dev/sda2
copying /dev/md0
copying /dev/sda3
copying /dev/sda5
copying /dev/sda6
copying /dev/sda7
copying /dev/sdb3
copying /dev/sdb5
copying /dev/sdb6
copying /dev/sdb7
Adding rootfs finding based on root= option support.


modyfikacja lilo.conf

[root w rescue /]# grep -v -E ^# /etc/lilo.conf

install=bmp
bitmap=/boot/lilo-pldblack.bmp
bmp-colors=9,,,6,0,0
bmp-table=21,287p,2,4,175p
bmp-timer=73,29,7,0,0

boot=/dev/md0
 raid-extra-boot="mbr-only"
read-only
lba32
prompt
timeout=50
image=/boot/vmlinuz
        label=pld
        root=/dev/md0
        initrd=/boot/initrd
image=/boot/vmlinuz
        label=pld2
        root=/dev/md0
        initrd=/boot/initrd.test



Wykonałem lilo

[root w rescue /]# lilo -v
LILO version 22.7, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2005 John Coffman
Released 12-Apr-2005 and compiled at 17:24:27 on Jun 10 2005

Using BIOS device code 0x80 for RAID boot blocks
Reading boot sector from /dev/md0
Warning: Unable to determine video adapter in use in the present system.
Using BITMAP secondary loader
Calling map_insert_data
Mapping bitmap file /boot/lilo-pldblack.bmp
Calling map_insert_file

Boot image: /boot/vmlinuz -> vmlinuz-2.6.14.7-5smp
Mapping RAM disk /boot/initrd -> initrd-2.6.14.7-5smp.gz
Added pld *

Boot image: /boot/vmlinuz -> vmlinuz-2.6.14.7-5smp
Mapping RAM disk /boot/initrd.test
Added pld2

Reading boot sector from /dev/sda
/boot/boot.0800 exists - no boot sector backup copy made.
The Master boot record of  /dev/sda  has been updated.
Reading boot sector from /dev/sdb
Warning: /dev/sdb is not on the first disk
/boot/boot.0810 exists - no boot sector backup copy made.
The Master boot record of  /dev/sdb  has been updated.



No i na koniec zmiana hasla roota, odmontowanie /proc wyjscie z chroota, odmontowanie partycji i restart....

No i sie nie odpalil:
No bootable device -- insert boot disk and press any key


Więcej informacji o liście dyskusyjnej pld-users-pl