2011. március 31., csütörtök

AIX - Rootvg költöztetés - csak óvatosan!!

Történt az a vicces eset, hogy a rootvg-t át kellett költöztetni egy AIX gépen.. Ez alapvetően nem is nagy nehézség:
- extendvg rootvg [new_disk]
- mirrorvg rootvg [new_disk]
- syncvg rootvg # Menjünk biztosra
- unmirrorvg rootvg [old_disk]
- reducevg rootvg [old_disk]
- bosboot -ad /dev/new_disk
- bootlist -m normal [new_disk]
Ez szépen is megy.. De sajna van egy bökkenő, ha mksysb-t is szeretnénk futtatni a gépen ezek után - az elég durván elhasal, ilyesmi hibaüzenettel:
0301-168 bosboot: The current boot logical volume, /dev/hd5,
does not exist on /dev/hdisk0.
Mint kiderül: A szituáció az, hogy az mksysb-nk meghívja az mkszfile parancsot, ami pedig hív egy 'bosboot -qv'-t.
A szerencsétlen bosboot-unk pedig nagyon nem is törődik a rendszer állapotával, őt csak az érdekli, hogy mi van az NVRAM-ban, ergo ez így csak restart után menne neki..
Kivétel persze, ha kicsit megszeghetjük a szabályokat =>
Az IBM már egy ideje tisztában van az adott problémával, sőt hibajegyet is adtak ki rá: IZ90977. Ez alapján már nem nehéz kicsit áttúrni az mkszfile-t, hogy azt csinálja ami nekünk kell: A /usr/bin/mkszfile file-an a 399. sor környékén írjuk át a számunkra szükséges sort az alábbiak alapján:
+399 BOOT_BLKS=`LC_MESSAGES=C ${bosboot} -qv | ${tail} -1l | ${awk} '{print $2 * 2}'`
=>
+399 BOOT_BLKS=`LC_MESSAGES=C ${bosboot} -qvd /dev/ipldevice | ${tail} -1l | ${awk} '{print $2 * 2}'`
Ezek után még figyeljünk arra, hogy a /dev/ipldevice-unk a megfelelő rhdisk-re mutasson:
# Test_server:root > ls -l /dev/rhdisk5
crw------- 2 root system 17, 5 Feb 18 15:01 /dev/rhdisk1
# Test_server:root > ls -l /dev/ipldevice
crw------- 2 root system 17, 5 Feb 18 15:01 /dev/ipldevice
Innen pedig már az mkszfile-unk is jól lefut, illetve az mksysb se fog kardjába dőlni..

2 megjegyzés:

  1. Hi,


    Az ipldevice-re hardlink kell a megfelelő rhdisk-ről

    Példa:

    ln /dev/rhdisk1 /dev/ipldevice

    VálaszTörlés