Код: Выделить всё
Так же имеется 2а SCSI диска по 36Gb.
1 HDD - c1t0d0 (основной)
2 HDD - c1t1d0
Одна State Replica занимает около 4мб.
Установка.
1) Командой format смотрим имеющиеся диски в системе.
Код: Выделить всё
bash-3.00# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c1t0d0 <SUN36G cyl 24620 alt 2 hd 27 sec 107> /pci@1f,0/pci@1/scsi@8/sd@0,0
1. c1t1d0 <SUN36G cyl 24620 alt 2 hd 27 sec 107> /pci@1f,0/pci@1/scsi@8/sd@1,0
3) Отключаем Swap для “кастрации” и выделением из него места для хранений SD
Код: Выделить всё
swap –d /dev/dsk/c1t0d0s1
4) Заходим в format выбираем диск 0 (основной диск) в меню выбираем пункт partition потом выбираем print и списываем геометрию диска, объём разделов, число блоков, цилиндры, флаги и тагеты, это необходимо для того что бы создать такую же копию на диске 1(c1t1d0)
Выглядит она примерно так:
Код: Выделить всё
Part Tag Flag Cylinders Size Blocks
0 root wm 363 - 5087 7.20GB (5230/0/0) 15109470
1 swap wm 0 - 363 512.06MB (364/0/0) 1048707
2 backup wm 0 - 24619 33.92GB (24620/0/0) 71127180
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 unassigned wm 0 0 (0/0/0) 0
7 home wm 5593 - 24619 26.91GB (19027/0/0) 54969003
5) Заходим снова в format на 1диск (c1t1d0)в меню выбираем пункт partition и размечаем так как размечен диск 0(c1t0d0) но с указанием нового раздела s3 весом 18мб для хранения SD
6) Сохраняем результат и выходим.
Код: Выделить всё
partition> select
format>save
format>q
Код: Выделить всё
Part Tag Flag Cylinders Size Blocks
0 root wm 363 - 5592 7.20GB (5230/0/0) 15109470
1 swap wu 0 - 349 493.73MB (350/0/0) 1011150
2 backup wm 0 - 24619 33.92GB (24620/0/0) 71127180
3 unassigned wm 350 - 362 18.34MB (13/0/0) 37557
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 unassigned wm 0 0 (0/0/0) 0
7 home wm 5593 - 24619 26.21GB (19027/0/0) 54969003
7) Теперь нужно перенести разметку диска с c1t1d0 на c1t0d0 это нужно для совпадения геометрии диска
Код: Выделить всё
prtvtoc /dev/rdsk/c1t1d0s2 | fmthard -s - /dev/rdsk/c1t0d0s2

Код: Выделить всё
metadb –f –a –c 2 c1t0d0s3
metadb –f –a –c 2 c1t1d0s3
-a опция прикрепляет новую базу данных дивайса. Файл /kernel/drv/md.conf автоматически обновляется с учётом новой информации. Так же файл /etc/lvm/mddb.cf тоже обновляется.
-с Определяет количество реплик на каждое устройство. По умолчанию 1 реплика.
Создание RAID для home раздела
Для того чтобы не угробить систему сначала создаём RAID для home раздела (с1t0d0s7)
9) Создаём метаустройство d17 и d27 соответственно.
Первый диск
Код: Выделить всё
metainit –f d17 1 1 c1t0d0s7
Код: Выделить всё
metainit –f d27 1 1 c1t1d0s7
10) Создаём зеркало (Mirror, он же RAID1)
Код: Выделить всё
metainit d7 –m d17
11) Подключаем к зеркалу второе метаустройство
Код: Выделить всё
metattach d7 d27
Код: Выделить всё
metastat | grep “%”
В итоге после завершения зеркалирования должно получиться что-то подобное:
Код: Выделить всё
d7: Mirror
Submirror 0: d17
State: Okay
Submirror 1: d27
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 54969003 blocks (26 GB)
d17: Submirror of d7
State: Okay
Size: 54969003 blocks (26 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s7 0 No Okay Yes
d27: Submirror of d7
State: Okay
Size: 54969003 blocks (26 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s7 0 No Okay Yes
Создание RAID для root раздела
12) Создаём метайстройство d10 и d20 соответственно.
Первый диск
Код: Выделить всё
metainit –f d10 1 1 c1t0d0s0
Код: Выделить всё
metainit –f d20 1 1 c1t1d0s0
13) Создаём зеркало (Mirror, он же RAID1).
Код: Выделить всё
metainit d0 –m d10
14) Для того чтобы система была перестроена на правильную загрузку с метаустройства, необходимо использовать metaroot, который надлежащим образом правит конфиг файла /etc/vfstab и /etc/system
Код: Выделить всё
metaroot d0
Код: Выделить всё
swap –a /dev/dsk/c1t0d0s1
swap –a /dev/dsk/c1t1d0s1
Код: Выделить всё
bash-3.00$ cat /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c1t0d0s1 - - swap - no -
/dev/dsk/c1t1d0s1 - - swap - no -
/dev/md/dsk/d0 /dev/md/rdsk/d0 / ufs 1 yes -
/dev/md/dsk/d7 /dev/md/rdsk/d7 /export/home ufs 2 yes -
/devices - /devices devfs - no -
sharefs - /etc/dfs/sharetab sharefs - no -
ctfs - /system/contract ctfs - no -
objfs - /system/object objfs - no -
swap - /tmp tmpfs - yes -
/dev/dsk/c1t0d0s1 - - swap - no -
/dev/dsk/c1t1d0s1 - - swap - no -
Строчка /dev/md/dsk/d0 /dev/md/rdsk/d0 означает, что коренной раздел будет грузиться с метаустройства, так же нужно переправить в графе mount at boot с no на yes иначе система не загрузится.
Так же строчка /dev/md/dsk/d7 /dev/md/rdsk/d7 показывает, что раздел home будет работать через метаустройства.
Проверяем /etc/system в конце должно быть что-то похожее:
Код: Выделить всё
rootdev:/pseudo/md@0:0,0,blk
17) Записываем всё грязную информацию в swap
Код: Выделить всё
sync;sync
Код: Выделить всё
lockfs –fa
Код: Выделить всё
init 6
Код: Выделить всё
metattach d0 d20
Код: Выделить всё
metastat | grep “%”
Код: Выделить всё
d0: Mirror
Submirror 0: d10
State: Okay
Submirror 1: d20
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 15109470 blocks (7.2 GB)
d10: Submirror of d0
State: Okay
Size: 15109470 blocks (7.2 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s0 0 No Okay Yes
d20: Submirror of d0
State: Okay
Size: 15109470 blocks (7.2 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s0 0 No Okay Yes
Ищем наши диски.
Код: Выделить всё
ok devalias (смотрим имеющиеся дивайсы)
ok nvalias root путь к диску (создаём имя для первого диска)
ok nvalias second_root путь к диску (создаём имя для второго диска)
ok setenv boot-device root second_root net (ставим приоритет на загрузку)
boot-device = root second_root net
ok nvstore (сохраняем)
format
http://www.opennet.ru/man.shtml?topic=f ... &russian=4
metadb
http://www.opennet.ru/man.shtml?topic=m ... &russian=4
metainit
http://www.opennet.ru/man.shtml?topic=m ... &russian=4
metattach
http://www.opennet.ru/man.shtml?topic=m ... &russian=4
metaroot
http://www.opennet.ru/man.shtml?topic=m ... &russian=4
lockfs
http://www.opennet.ru/man.shtml?topic=l ... &russian=4
OpenBoot
http://adminschoice.com/sun-openboot-pa ... d-commands
PS: Полезно знать что строчка /pci@1f,0/pci@1/scsi@8/disk@0,0:b означает
Код: Выделить всё
c1 t0 d0 s1
disk@ 0, 0 :b
0 - это таргет (t0)
0 - это диск (d0)
b - это слайс (s1)