The size of a VxFS filesystem can be calculated by looking at the output of the fstyp command.
# /opt/VRTS/bin/fstyp -v /dev/vx/rdsk/
va820a-01:~ # fstyp -t vxfs -v /dev/vx/rdsk/sfsdg/bs8192test
vxfs
magic a501fcf5 version 17 ctime Thu Mar 14 07:56:26 2024
volguid 07ec50ee-e213-11ee-9e2e-21d8db19cce9
uuid 1a10f365-932a-0b00-0a41-2a001e783974
logstart 0 logend 0
bsize 8192 size 1310720 dsize 1310720 ninode 0 nau 0
defiextsize 0 ilbsize 0 immedlen 96 ndaddr 10
aufirst 0 emap 0 imap 0 iextop 0 istart 0
bstart 0 femap 0 fimap 0 fiextop 0 fistart 0 fbstart 0
nindir 2048 aulen 32768 auimlen 0 auemlen 1
auilen 0 aupad 0 aublocks 32768 maxtier 15
inopb 32 inopau 0 ndiripau 0 iaddrlen 1 bshift 13
inoshift 5 bmask ffffe000 boffmask 1fff checksum 10b00788b
oltext1 11 oltext2 8364 oltsize 1 checksum2 0
free 1277750 ifree 0
efree 0 3 2 3 3 1 1 1 2 2 2 2 2 2 2 1 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0
In the line starting with bsize, we can see the block size of 8192 (8k) and the size value of 1310720.
To calculate the filesystem size from these two values, take the block size (bsize) and divide it by 512.
The result will be a value that you can then multiply the size value by to calculate the filesystem size in sectors. This value should match the output from vxprint for that specified volume.
8192 / 512 = 16
16 x 1310720 = 20971520
20971520 is the filesystem size in sectors.
# vxprint -g sfsdg -htrqv bs8192test_1
dm vrts_appliances0_1 vrts_appliances0_1 auto 65536 104791760 -
v bs8192test_1 bs8192test ENABLED ACTIVE 20971520 SELECT - fsgen
pl bs8192test_1-01 bs8192test_1 ENABLED ACTIVE 20971520 CONCAT - RW
sd vrts_appliances0_1-02 bs8192test_1-01 vrts_appliances0_1 2097152 20971520 0 vrts_appliances0_1 ENA
Note that this matches the value of 20971520 shown for the size of the volume in vxprint, which corresponds to 10GB.
To convert from sectors to gigabytes, divide this value by 2/1024/1024:
20971520 / 2 / 1024 / 1024 = 10
Adding the -u H option to the vxprint output will show the results in "human readable" format, printing the values in megabytes, gigabytes, and terabytes as appropriate:
# vxprint -g sfsdg -htrqv -u H bs8192test_1
dm vrts_appliances0_1 vrts_appliances0_1 auto 32.00m 49.96g -
v bs8192test_1 bs8192test ENABLED ACTIVE 10.00g SELECT - fsgen
pl bs8192test_1-01 bs8192test_1 ENABLED ACTIVE 10.00g CONCAT - RW
sd vrts_appliances0_1-02 bs8192test_1-01 vrts_appliances0_1 1.00g 10.00g 0.00 vrts_appliances0_1 ENA
The vxfs block size can either be 1024 (1k), 2048 (2k), 4096 (4k), or 8192 (8k). The formula for calculating the size stays the same, but the multiplier will change:
1024 / 512 = 2
2048 / 512 = 4
4096 / 512 = 8
8192 / 512 = 16