How much space is required in a VxFS file system for the recover file as used by the fscdsconv utility?

How much space is required in a VxFS file system for the recover file as used by the fscdsconv utility?

Article: 100005697
Last Published: 2011-04-06
Ratings: 0 0
Product(s): InfoScale & Storage Foundation

Problem

As per the fscdsconv(1M) manual page, the metadata (structural information) of a VxFS file system is stored in the native byte order of the system on which it was created. To be able to access the file system on a machine with differing byte order, the file system metadata must be converted such that it matches the byte order of the accessing system. The fscdsconv utility performs this conversion. Whilst running, fscdsconv creates a recovery file as specified by the -f option so that the file system can be restored to its original condition in the event of a failure. The amount of space within the file system required to create the recovery file is dependent on the total size of the file system itself and the amount of metadata it contains (i.e. number of files which exist in the file system).

See the Veritas Storage Foundation Cross-Platform Data Sharing Administrator's Guide for more information.

 

Solution

The following example shows conversion of a 2.9296 TB VxFS version 7 file system from big endian to little endian byte ordering (Solaris Sparc to Intel x86-64/IA-64) using fscdsconv. This recovery file created during this operation is 815Mb.

 - Create 2.9296 TB VxVM cache object backed volume
 - Create a version 7 VxFS file system on the volume
 - Convert byte order using the fscdsconv command

# vxassist -g testdg make cachevol 512m
# vxmake -g testdg cache testvol_cache cachevolname=cachevol autogrow=on
# vxcache -g testdg start testvol_cache
# vxmake -g testdg sd testvol_sd len=3000g dm=testvol_cache
# vxmake -g testdg plex testvol-01 sd=testvol_sd
# vxmake -g testdg vol testvol plex=testvol-01
# vxvol -g testdg start testvol

# mkfs -F vxfs /dev/vx/rdsk/testdg/testvol
    version 7 layout
    6291456000 sectors, 393216000 blocks of size 8192, log size 32768 blocks
    largefiles supported

# fscdsconv -e -t os_name=Linux -f /tmp/recovery_vxfs /dev/vx/rdsk/testdg/testvol
UX:vxfs fscdsconv: INFO: V-3-26040: Please verify if the following details identify the migration target for /dev/vx/rdsk/testdg/testvol:
Operating system          : Linux
Operating system version  : any
Architecture              : any
VxFS version              : any
Bits                      : 64
UX:vxfs fscdsconv: INFO: V-3-26037: Would you like to proceed further with migration? (ynq) y
UX:vxfs fscdsconv: INFO: V-3-26041: The filesystem would need to be byteswapped for use on this target.
UX:vxfs fscdsconv: INFO: V-3-26037: Would you like to proceed further with migration? (ynq) y
UX:vxfs fscdsconv: INFO: V-3-26130: There are no files violating the CDS limits for this target.
UX:vxfs fscdsconv: INFO: V-3-26047:  Byteswapping in progress ...
UX:vxfs fscdsconv: INFO: V-3-21842: Do you wish to commit to conversion? (ynq) y
UX:vxfs fscdsconv: INFO: V-3-26048: The filesystem has been byteswapped and is now ready for use on the specified target.

# du -h /tmp/recovery_vxfs
 851M   /tmp/recovery_vxfs

 

 

Was this content helpful?