You are on page 1of 10

Veritas notes

The following notes are for Veritas Volume Manager 3.2 for Solaris. "vxvm:vxconfigd: ERROR: enable failed: Error in disk group configuration copies Disk group has no valid configuration copies; transactions are disabled." When receiving this error during system boot and when running vxinstall, follow the steps detailed in http !!www.eng.auburn.edu!pub!mail"lists!veritas" users.May##!msg$$$%&.html 'n my case, the rootdg configuration was apparently corrupted. (fter issuing touch etc vx reconfig.d state.d install!db and rebooting the machine, ' was able to run vxinstall. vxvm:vxdg: ERROR: Disk group disk_group: import failed: Disk group has no valid configuration copies" This error can occur when attempting to import a dis) group that was configured using a later version of V*VM. 'n this case, the dis) group was configured with V*VM 3.2, but V*VM 3.+.+ was installed. " pkginfo !l VR#$vxvm PKGINST: VRTSvxvm NAME: VERITAS Volume Manager, Binaries CATEGOR : s!s"em ARC#: s$ar% VERSION: 3.1.1,REV&'()*')+''()++)+( ,pgrading to at least the same version of V*VM used to configure the dis) group will allow the dis) group to be imported. "ld.so.%: vxconfigd: fatal: libdevid.so.%: open failed: &o such file or director'" With Solaris & and V*VM 3.2, the shared library libdevid.so.1 does not get copied to /etc/vx/slib after installing Veritas. 'f you do not manually copy this shared library to /etc/vx/slib, your system will not boot. -ollow these steps to ma)e your system bootable +. .oot off a /0"12M. 2. Mount your root and usr file systems. 3. /opy /usr/lib/libdevid.so.1 to /etc/vx/slib %. ,nmount your root and usr file systems and reboot. More information http !!marc.theaimsgroup.com!3l4veritas"v*5m4+$2636&7772#%685w42

(learing device locks To clear a device loc), use the vxdisk clearimport command v*dis) clearimport devicename e*. vxdisk clearimport c)t%d) *sing a $un $torEdge +,))) disk arra' -ith Veritas Ma)e sure the array9s: are recogni;ed by the operating system. < luxadm probe ,oun- En%losure.s/: SENA Name:a( 5ogi%al Pa"6:7-ev7es7ses+ 5ogi%al Pa"6:7-ev7es7ses3 SENA Name:a+ 5ogi%al Pa"6:7-ev7es7ses* 5ogi%al Pa"6:7-ev7es7ses4 SENA Name:a' 5ogi%al Pa"6:7-ev7es7ses9 5ogi%al Pa"6:7-ev7es7ses1 SENA Name:a* 5ogi%al Pa"6:7-ev7es7ses2 5ogi%al Pa"6:7-ev7es7ses: 1un Veritas= device discovery program. < vxdctl enable Determining maximum si.e of a volume v*assist > "g diskgroup ? ma*si;e layout4layout >attributes? @*ample vxassist !g datadg maxsi.e la'out/concat layout may be concat, mirror, raid5, mirror-stripe, or stripe-mirror. Veritas disk re0uirements 0is)s managed by V*VM must have 9+: two free partitions and 92: 2$%& sectors of free space. The prtvtoc command displays how many sectors are in a dis) cylinder " prtvtoc dev rdsk c)t12d)s3 ; 7-ev7r-s<7%'"24-'s+ $ar"i"ion ma$

No-e 00N:1'2''+'''''+34e' No-e 00N:1'2''+'''''+2'+' No-e 00N:1'2''+'''''+48*2 No-e 00N:1'2''+'''''+3'4'

; ; =imensions: ; 1(+ >!"es7se%"or ; (** se%"ors7"ra%< ; +3 "ra%<s7%!lin-er ; 3591 sectors/cylinder ; 9:+4 %!lin-ers ; 9:+9 a%%essi>le %!lin-ers 'n this e*ample, leave at least + cylinder free in your dis) layout to allow for V*VM. 'f the dis) is a boot dis), V*VM can shrin) the swap partition to create space for V*VM=s configuration data, but two free slices are essential for encapsulation. (reating a volume -ith vxassist e*. " vxassist !g datadg maxsi.e Maximum volume si?e: *1*1443+ .(3+49M>/ " vxassist !g datadg make volume 4,4,2253 /reate the vxfs file system " mkfs !6 vxfs dev vx rdsk datadg db7backups version 9 la!ou" *1*1443+ se%"ors, (3432**4 >lo%<s o8 si?e ('+9, log si?e (4*29 >lo%<s unlimi"e- ino-es, large8iles no" su$$or"e(3432**4 -a"a >lo%<s, (34139*+ 8ree -a"a >lo%<s 19' allo%a"ion uni"s o8 *+342 >lo%<s, *+342 -a"a >lo%<s las" allo%a"ion uni" 6as (4*29 -a"a >lo%<s /reate the mount point " mkdir db7backups Mount the v*fs file system " mount !6 vxfs dev vx dsk datadg db7backups db7backups (dd an /etc/vfstab entry to mount the file system after a reboot. Replacing a failed disk (fter replacing a failed dis) in a S@A(, ma)e sure to run vxdctl enable for device discovery. 2therwise, you may encounter vxdmpadm errors Ini"iali?a"ion o8 -is< -evi%e %("39-' 8aile-) Error: vxvm:vx-m$a-m: ERROR: Error in io%"l7o$en vx-m$a-m: No su%6 8ile or -ire%"or!

vxvm:vx-m$a-m: ERROR: Invali- -a@name vxvm:vx-m$a-m: ERROR: Invali- -a@name vx-is<se"u$: %("39-': =evi%e a--ress mus" >e o8 "6e 8orm %C"T-= or m%C"T-= A6ere C & 6os" >us a-a$"er %on"roller num>er T & "arge" -evi%e %on"roller num>er, i8 use= & logi%al uni" .-is</ num>er Ai"6in "arge" -evi%e %on"roller " vxdisk list c%t58d)s3 =evi%e: %("39-'s+ -evi%e"ag: %("39-' "!$e: sli%e8lags: online error $riva"e au"o%on8ig errno: Device path not valid Mul"i$a"6ing in8orma"ion: num$a"6s: + c1t74d0s2 state=disabled c5t74d0s2 state=disabled When replacing a failed internal dis) on a Sun @%7$ running Solaris &, ' had to spin the dis) down using ssaadm stop dev rdsk cxtxdxs3as the vxdiskadm=s B0isable 9offline: a dis) deviceB did not seem to spin the dis) down. 'f you are using a Sun system with -/" (C devices, you will want to use the luxadm command. (fter replacing the dis), ' enabled device discovery with vxdctl enable and un"relocated the failed subdis)s bac) to this dis) using usr lib vxvm bin vxunreloc !g disk_group replaced_disk. +dding additional users to VxV9 electronic mail notifications .y default, V*VM sends electronic mail to the root user when failures are detected and hot"relocation is being performed. To notify additional users, +. @dit /etc/init.d/vxvm-recover 2. /hange the line containing vxrelocd root : to vxrelocd root user1 user2 ... : This will preserve the change across system reboot. 3. To have the change ta)e effect immediately, ma)e sure that hot"relocation is not currently being performed by running vxtask list, )ill the vxrelocd process, and run nohup vxrelocd root user1 user2 ... : 9iscellaneous (dding a dis) to a dis) group vxdiskadd disk_name

/reating a subdis) vxmake ;!g groupname< sd subdisk diskname,offset=length /reating a ple* vxmake ;!g groupname< plex plex sd/subdisk1;=subdisk2=...< /reating a volume with vxmake vxmake ;!g groupname< !* fsgen vol volume plex/plex1;=plex2=...< Aote use gen instead of fsgen if you are creating a raw file system for 10.MS usage. fsgen is appropriate for general file system usage. More information on fsgen vs. gen. (fter creating the volume, initiali;e the volume with vxvol start volume. 'f applicable, create the file system with newfs, create the mount point, and mount the volume as a file system. (ssociating subdis)s with ple*es vxsd assoc plex subdisk1 ;subdisk2 subdisk3 ...< 0isplaying free dis) space in a dis)group vxdg ;!g groupname< free 0issociating subdis)s from ple*es vxsd dis subdisk 0issociating subdis)s from ple*es, removing subdis) from V*VM vxsd !o rm dis subdisk 0issociating and removing ple*es and all associated subdis)s vxplex !o rm dis plex 1emoving a dis) from a dis) group vxdg ;!g groupname< rmdisk diskname 1enaming a dis) vxedit rename old_diskname new_diskname 1emoving a volume 9v*assist: vxassist remove volume volume 1emoving a volume 9v*edit: vxedit ;!r< ;!f< rm volume !r "" recursive removal !f "" force removalD needed if volume is enabled

Moving hot"relocated subdis)s bac) to their original dis) with vxunreloc usr lib vxvm bin vxunreloc ;!g groupname<original_disk

Veritas *nstartable Volume


'n this e*ample of VEVM %.$ on a Solaris & system, an array was temporarily unavailable, causing problems with a file system whose two ple*es resided on the array. >as6B+)'*C %- 78iles'9 >as6: %-: 78iles'9: I7O error The volume was in 0'S(.C@0 (/T'V@ state, and both ple*es were in 0'S(.C@0 1@/2V@1 state. v vol'9 B SE5ECT B 8sgen pl vol'9B'( vol'9 STRIPE *7(+2 R0 s- a$$s-g'(B'9 vol'9B'( '7' %("'-' ENA s- a$$s-g'3B'( vol'9B'( '7+3:3*2: %9"+-' ENA s- a$$s-g'3B'9 vol'9B'( '72*:+(43 %9"+-' ENA s- a$$s-g'+B'9 vol'9B'( (7' %("(-' ENA s- a$$s-g('B'+ vol'9B'( (7+3:3*2: %1"(-' ENA s- a$$s-g('B'1 vol'9B'( (72*:+(43 %1"(-' ENA s- a$$s-g'*B'9 vol'9B'( +7' %("+-' ENA s- a$$s-g((B'+ vol'9B'( +7+3:3*2: %1"+-' ENA pl vol'9B'+ vol'9 STRIPE *7(+2 R0 s- a$$s-g'9B'+ vol'9B'+ '7' %("*-' ENA s- a$$s-g'9B'1 vol'9B'+ '7+3:3*2: %("*-' ENA s- a$$s-g'9B'4 vol'9B'+ '711:9332 %("*-' ENA DI !"#$D !%&I'$ DI !"#$D ($%)'$( +:*4'(+2 +:*439*9

%s@arra!'3B8' 2*:+(43 +3:3*2: %s@arra!'*B8+ ' 11:9332

%s@arra!'*B8+ (((2:114 (*:42:: %s@arra!'3B8( 2*:+(43 +3:3*2: %s@arra!'4B8( +3:3*2: 11:9332 %s@arra!'4B8( (*:24:91 (*:42:: %s@arra!'3B8+ 2*:+(43 +3:3*2: %s@arra!'4B8+ 2*:+(43 4::(433 DI !"#$D ($%)'$( +:*439*9

%s@arra!'3B8* +3:3*2: +3:3*2: %s@arra!'3B8* ' +3:3*2:

%s@arra!'3B8* (4329**9 2:9(1:

s- a$$s-g(9B'+ vol'9B'+ '74922:*3 %("4-' ENA s- a$$s-g(+B'* vol'9B'+ (7' %1"*-' ENA s- a$$s-g(*B'+ vol'9B'+ (7+3:3*2: %("9-' ENA s- a$$s-g(+B'+ vol'9B'+ (7322:9+3 %1"*-' ENA s- a$$s-g'1B'+ vol'9B'+ (7232*124 %9"'-' ENA s- a$$s-g':B'+ vol'9B'+ +7' %1"'-' ENA s- a$$s-g':B'4 vol'9B'+ +72*:+(43 %1"'-' ENA

%s@arra!'3B84 (+124911 **''(+: %s@arra!'4B8* 11:9332 +3:3*2: %s@arra!'3B89 (+124911 1':+'*2 %s@arra!'4B8* (4329**9 2:9(1: %s@arra!'*B8' (+124911 (''192' %s@arra!'4B8' +3:3*2: 2*:+(43 %s@arra!'4B8' *1:( (*:42::

We confirmed that the storage array was available to the operating system. C l*+ad, probe ,oun- En%losure.s/: ))) SENA Name:%s@arra!'4 00N:1'2''+'''''*2>a2 5ogi%al Pa"6:7-ev7es7ses4 5ogi%al Pa"6:7-ev7es7ses3 C l*+ad, display cs-array0. SENA =ISK STATDS .No-e 00N/ REAR On On On On On No" On

No-e

S5OT ,RONT =ISKS =ISKS .No-e 00N/ ' On .O)K)/ +'''''+'*3':9+2: .O)K)/ +'''''+'*3':9++e ( On .O)K)/ +'''''+'*3':*aa8 .O)K)/ +'''''+'*3':9++' + On .O)K)/ +'''''+'*3':9('> .O)K)/ +'''''+'*3':*--* On .O)K)/ +'''''+'*3':9+19 .O)K)/ +'''''+'*3':9++> 9 On .O)K)/ +'''''+'*3':9'-a .O)K)/ +'''''+'*3':9+93 1 No" Ins"alleIns"alle4 On .O)K)/ +'''''+'*3':*-8' .O)K)/ +'''''+'*3':*2*8

Ae*t, we reattached the dis)s to the dis) group they were in. Fou may want to run

vxrea""a%6 B% -is<name to chec) if a reattach is possible before attempting to reattach the dis)s. C v+dis/ list ))) B B Aas:%1"'-'s+ B B Aas:%1"(-'s+ B B Aas:%1"+-'s+ B B Aas:%1"*-'s+ B B s$are Aas:%1"+'-'s+ B B Aas:%1"9-'s+ C C C C C C C %s@arra!'4B8' a$$s-g %s@arra!'4B8( a$$s-g %s@arra!'4B8+ a$$s-g %s@arra!'4B8* a$$s-g %s@arra!'4Br9 a$$s-g %s@arra!'4B89 a$$s-g 8aile8aile8aile8aile8aile8aile-

cd /*sr/lib/v+v,/bin ./v+reattach c5t0d0s2 ./v+reattach c5t1d0s2 ./v+reattach c5t2d0s2 ./v+reattach c5t3d0s2 ./v+reattach c5t20d0s2 ./v+reattach c5t4d0s2

We then followed the B1ecovering an ,nstartable Volume with a 0isabled Gle* in the 1@/2V@1 StateB procedure in the Volume Manager Troubleshooting Huide. +. -orce ple* vol'9B'( into the 2--C'A@ state. C v+,end 01 appsd1 0o 2orce o22 vol04001 2. Glace ple* vol'9B'( into the ST(C@ state. C v+,end 01 appsd1 on vol04001 3. There are no other clean ple*es in the volume, so ma)e ple* vol'9B'( 0'S(.C@0 and /C@(A. C v+,end 01 appsd1 2i+ clean vol04001 %. Start the volume, and perform resynchroni;ation of the ple*es in the bac)ground. C v+vol 01 appsd1 0o b1 start vol04 (t this point, the file system is unmounted, chec)ed for file system consistency, and remounted. C *,o*nt /2iles04

C ,o*nt /2iles04 DE:vx8s moun": ERROR: VB*B+(+42: 7-ev7vx7-s<7a$$s-g7vol'9 is %orru$"e-) nee-s %6e%<ing C 2sc/ 03 v+2s /dev/v+/rds//appsd1/vol04 log re$la! in $rogress re$la! %om$le"e B mar<ing su$erB>lo%< as C5EAN C ,o*nt /2iles04

(reating a volume -ith vxmake


'n this e*ample, ' create a 26 H. concatenated volume named EZT -!E" using dis)s in dis) group dg15. The volume consists of 3 ple*es 93 copies of the data:. @ach ple* is composed of two +3 H. subdis)s. +. 'dentify dis)s in dis) group dg15 that have enough free space to create a +3 H. subdis). " vxdg !g dg%, free =ISK =EVICE ,5AGS SB8' %("'-'s+ SB8( %("(-'s+ SB8+ %("+-'s+ SB8* %("*-'s+ SB89 %("9-'s+ SB84 %("4-'s+ SB8: %(":-'s+ SB8(' %("('-'s+ TAG %("'-' %("(-' %("+-' %("*-' %("9-' %("4-' %(":-' %("('-' O,,SET *1*'+*'9 *1*'+*'9 *1*'+*'9 *1*'+*'9 *1*'+*'9 *1*'+*'9 (3'4+(1+ +':3*((+ 5ENGT# 4(+14 4(+14 4(+14 4(+14 4(+14 4(+14 (2*'(9'2 (9*213*4 B B B B B B B B

The C@AHTI column displays the number of free sectors on the dis) 9each sector is 7+2 bytes:. (lthough not displayed here, dis)s b1-r#, b1-r$, b1-f%, b1-f&, b#-f%, and b#-r# have enough free space to create +3 H. subdis)s. 2. /reate the subdis)s. Synta* " vxmake sd subdisk diskname=offset=length Gle* one " vxmake !g dg%, sd b%!r3!)% b%!r3=)=%4g " vxmake !g dg%, sd b%!r>!)% b%!r>=)=%4g

Gle* two " vxmake !g dg%, sd b%!f8!)% b%!f8=2,13228=%4g " vxmake !g dg%, sd b%!f2!)% b%!f2=)=%4g Gle* three " vxmake !g dg%, sd b3!f8!)% b3!f8=2,13228=%4g " vxmake !g dg%, sd b3!r3!)% b3!r3=)=%4g 3. /reate the three ple*es and associate the subdis)s with them. Synta* " vxmake plex plex sd/subdisk1;=subdisk2=...< Gle* one named EZT -'(1 " vxmake !g dg%, plex E?#@!&EA!B)% sd/b%!r3!)%=b%!r>!)% Gle* two named EZT -'(# " vxmake !g dg%, plex E?#@!&EA!B)3 sd/b%!f8!)%=b%!f2!)% Gle* three named EZT -'() " vxmake !g dg%, plex E?#@!&EA!B)4 sd/b3!f8!)%=b3!r3!)% %. /reate the volume consisting of the three ple*es. /reating volume EZT -!E" composed of ple*es EZT -'(1, EZT -'(#, and EZT '() " vxmake !g dg%, !* gen vol E?#@!&EA plex/E?#@!&EA!B)%=E?#@!&EA! B)3=E?#@!&EA!B)4 7. 'nitiali;e the volume. " vxvol start E?#@!&EA The volume has been created. .efore you are able to mount this volume as a file system, you will have to create a file system 9,-S or v*fs: using newfs.

You might also like