vxfs_vol_encapsulate - encapsulate a volume within a multi-volume file system
cc -I /opt/VRTS/include -L /opt/VRTS/lib-l vxfsutil -ldl
int vxfs_vol_encapsulate(char *fname, char *volname, uint64_t size);
vxfs_vol_encapsulate() adds the volume specified by volname to the file system, making the existing data in the volume available in the file fname. The size of the resulting file is size bytes, which does not have to be the full size of the volume. Any space in the volume past the portion being encapsulated can be added to the file system as free space by a subsequent vxfs_vol_resize() operation.
vxfs_vol_encapsulate() returns zero on success, non-zero on failure.
EEXIST The specified policy name is reserved. EFAULT One or more of the specified pointer arguments points to an illegal address. EFBIG The calling function issued a request with a file offset off past the EOF mark. EINVAL The specified size is not a multiple of the file system block size. ENOENT The specified volume does not exist. ENOSPC There was insufficient space to complete the operation. ENOSYS There is no license installed to allow this operation. ENOTSUP This operation is not supported by the disk layout version of the specified file system. Use vxupgrade(1m) to enable this operation. ENXIO An I/O error occurred during the operation. EPERM The calling process does not have correct access privileges. EROFS The specified file system is mounted read-only.
vxfs_ap_assign_ckpt(3), vxfs_ap_assign_file(3), vxfs_ap_assign_fs(3), vxfs_ap_define(3), vxfs_ap_remove(3), vxfs_ap_enforce_file(3), vxfs_ap_enumerate(3), vxfs_ap_query(3), vxfs_ap_query_ckpt(3), vxfs_ap_query_file(3), vxfs_ap_query_fs(3), vxfs_vol_add(3), vxfs_vol_deencapsulate(3), vxfs_vol_enumerate(3), vxfs_vol_remove(3), vxfs_vol_resize(3), vxfs_vol_stat(3)