Ayant depuis peu installé solaris sur un serveur, et ne connaissant pas bien solaris, j’ai utilisé l’installation standard. Or l’installeur ne propose pas la création d’un volume raid sans utiliser jumpstart.
Je vous propose donc de guider vos pas, permettant la migration d’un système de fichier racine standard, vers un système de fichier géré par SVM (Sun Volume Manager), en raid 1 (miroir).
La première étape consiste à préparer les disques dur. Pour que SVM puisse fonctionner, il faut déja qu’il existe un slice d’une taille identique sur les 2 disques dur. (ou les n disques ;)). Ensuite, il lui faut un espace pour stocker sa base de donnée metadb(1M). (afin de connaître la configuration de votre SVM).
C’est la le plus difficile, et le plus risqué: il faut modifier les slices Solaris avec format(1M).
# format
AVAILABLE DISK SELECTIONS:
0. c1d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 63> samsung5
/pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0
1. c2d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 63>
/pci@0,0/pci-ide@1f,2/ide@1/cmdk@0,0
Ici, c’est mon c1d0 qui doit être répliqué sur c2d0. (enfin, juste un slice hein ;))
On commence par créer un espace de stockage pour les metadb sur le disque 1.
format> partition partition> print Current partition table (original): Total disk cylinders available: 60797 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 unassigned wm 56972 - 60796 29.30GB (3825/0/0) 61448625 1 swap wu 56711 - 56971 2.00GB (261/0/0) 4192965 2 backup wm 0 - 60796 465.73GB (60797/0/0) 976703805 3 unassigned wm 2 - 4 23.53MB (3/0/0) 48195 4 unassigned wm 5 - 56704 434.34GB (56700/0/0) 910885500 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 alternates wu 1 - 2 15.69MB (2/0/0) 32130
C’est ici que ça deviens intéressant:
Mes connaissances sont encore trop limitées pour vous expliquer le 8 et le 9, qui sont des partition spéciales...
J’ai pu créer les 2 slices car j’avais prévu de le faire. Si vous n’avez pas assez d’espace pour créer le slice metadb(1M), alors, vous pouvez utiliser swap(1M) -s pour retirer le slice swap du système, puis redimentionner votre swap, et enfin créer le slice metadb.
La taille du metadb(1M) est petite, 15mb suffisent largement.
Chose importante à retenir: la taille du slice contenant le système de fichier racine: (60796 - 56972) = 3824 cylindres.
Ok, c’est modifié, un pti coup de “““label”““, et c’est écrit sur le disque. je vous laisse vous familiariser un peu avec format(1M) afin de faire la même opération, sur le disque principal.
L’heure est venue d’utiliser notre slice afin d’y stocker la fameuse base metadb(1M).
metadb -f -a -c 2 c1d0s3 c2d0s3
Référez vous au manuel de metadb(1M) pour plus d’informations.
Bon, aller, on considère que vous avez créer vos 2 metadb(1M), que vous avez des slices identiques en taille sur les 2 disques dur, et que les slices à utiliser sont:
Création du volume raid 1 à l’aide de metainit(1M)
# metainit -f d1 1 1 c1d0s0 # metainit d2 1 1 c2d0s0 # metainit d0 -m d1
(Toujours pareil, référez vous au manuel pour comprendre les options)
Notre raid 1 est créer. Nous reste à dire a solaris de l’utiliser comme système racine.
# metaroot d0
Ouahh, on est prêt pour le reboot ?
# reboot
Bon, en théorie, votre système redémarrer en utilisant ““/dev/md/dsk/d0”” comme device pour ““/”“.
Ok, il ne reste plu qu’a re-synchroniser le raid 1:
# metattach d0 d2
# metastat
d0: Mirror
Submirror 0: d1
State: Okay
Submirror 1: d2
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 61448625 blocks (29 GB)
d1: Submirror of d0
State: Okay
Size: 61448625 blocks (29 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1d0s0 0 No Okay Yes
d2: Submirror of d0
State: Okay
Size: 61448625 blocks (29 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c2d0s0 0 No Okay Yes
Device Relocation Information:
Device Reloc Device ID
c2d0 Yes id1,cmdk@ASAMSUNG_HD501LJ=S0MUJ2MP811962
c1d0 Yes id1,cmdk@ASAMSUNG_HD501LJ=S0MUJ2MP811961