Skip Navigation Links | |
Exit Print View | |
![]() |
Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual Sun QFS and Sun Storage Archive Manager 5.3 Information Library |
1. User Commands (Man Pages Section 1)
2. Maintenance Commands (Man Pages Section 1M)
3. Library Functions (Man Pages Section 3)
4. Library Functions (Man Pages Section 3X)
5. File Formats (Man Pages Section 4)
NAME samgetmap - Obtains disk file storage information SYNOPSIS /opt/SUNWsamfs/tools/samgetmap [-a allocsize] [-c] [-f] [-h] [-l setlen] [-m minalloc] [-n nbytes] [-s startaddr] [-u] [-w] [-M] [-U] [-V] file AVAILABILITY Oracle Corporation Internal DESCRIPTION The samgetmap command provides a test interface to the SANergy File Map API routines. The samgetmap command must be run as root. OPTIONS This command accepts the following options: -a allocsize Requests allocation of allocsize bytes of storage to file through the FS_SetFileSizes request. The allocsize must be an integer in the following range: 0 < allocsize < 2**31 For more information, see the OPERATIONS section of this man page. -c Requests a canonical map. FS_M_FLAG_CANONICAL is set for the FS_GetLockedMap request. For more information, see the OPERATIONS section of this man page. -f Requests a non-sparse allocation map. FS_M_FLAG_NO_HOLE is set for the FS_GetLockedMap request. For more information, see the OPERATIONS section of this man page. -h Causes samgetmap to write a short usage message to stdout. -l setlen Sets the file length to setlen bytes. -m minalloc Uses FS_SetFileSizes to request the allocation of minalloc bytes of storage for file. minalloc must be an integer in the following range: -1 < minalloc < allocsize If minalloc is within this range and the allocation request partially succeeds, such that minalloc or more bytes are allocated but fewer than allocsize bytes are allocated, a unique error code is returned to indicate partial success. For more information, see the OPERATIONS section of this man page. samgetmap's behavior is undefined if minalloc is less than -1 or greater than allocsize. For more information on allocsize, see the -a option. -n nbytes Specifies that the allocation map returned by the FS_GetLockedMap call return information about the location of at least nbytes of data. For more information, see the OPERATIONS section of this man page. -s startaddr Requests that the allocation map returned by the FS_GetLockedMap request return the information about file's storage beginning at byte startaddr in the file. For more information, see the OPERATIONS section of this man page. -u Sets FS_M_FLAG_UNLOCKED in the call to FS_GetLockedMap. file is not locked by the FS_GetLockedMap call. For more information, see the OPERATIONS section of this man page. -w Sets FS_M_FLAG_WAIT for the call to FS_GetLockedMap. If the file is online, this option has no effect. If the file is offline, the file is staged in before the file's map is returned. For more information, see the OPERATIONS section of this man page. -M Prevents the call to FS_GetLockedMap from being made. For more information, see the OPERATIONS section of this man page. -U Prevents the call to FS_UnlockMap from being made, leaving the file locked (unless the -u option is also specified). For more information, see the OPERATIONS section of this man page. NOTE: Use of this option makes it impossible to unmount the file system that file resides in until the file is somehow unlocked (see also samunhold(1M) to remove all file locks (holds) on a file system). Specifying the -u and -U options together on the command line insures that the file is unlocked upon exit from samgetmap. -V Report the value returned by the FS_GetVersion(), added to the SANergy 2.2 API, which indicates the library revision value. Present valid values are 220 (for SANergy 2.2), and 230 (for SANergy 2.3/3.1). file Specifies the file for which disk storage information is requested. The samgetmap command should not be executed if SANergy File Sharing is running on the file system. Specifically, the administrator should ensure that the following conditions are true: o There are no SANergy applications running on any client, possibly including the server itself. o The file system in question is not fused on any SANergy clients. OPERATIONS The samgetmap program operates as follows: 1. The program calls the AFS_GetCookies routine to obtain two cookies, one for the file system that file resides on (a volume cookie) and the other for file itself (a file cookie). 2. The program calls FS_GetLockedMap, using the cookies obtained by FS_GetCookies. This call is not made if the -M option is present. The parameters to this call can be specified or modified by the command line options -s, -n, -c, -f, -u, and -w. 3. The program calls FS_SetFileSizes. The parameters to this call can be specified or modified by the command line options -a, -l, and -m. 4. The program calls FS_UnlockMap. This call is not made if the -U option is present on the command line. The result of each call is written in a message to stdout. EXAMPLES The following example shows how to use samgetmap: ceres# samgetmap /qfs1/foo AFS_GetCookies("/qfs1/foo", &vc, &fc) = 0 (FS_E_SUCCESS (OK)) Volcookie: 0 0 0 20 73 56 6d 43 0 b 0 0 3a 94 44 4d 0 1 5 6 0 0 0 0 0 0 3 0 2 ed a0 0 Filecookie: 0 0 0 10 73 46 6d 43 0 0 0 7 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 FS_GetLockedMap(&vc, &fc, 0, -1, 0, ffbaf448, ffbaf340) = 0 (FS_E_SUCCESS (OK)) returned buflen = 88 msgLen = 88 vendorStatus = 0 fileSize = 16384000 allocation = 16416768 nExtents = 1 extentType = 2 (SIMPLE) sExtent[0] volumeOrdinal = 1 blockOffset = 20 nBlocks = 7d40 FS_SetFileSizes(&vc, &fc, 0, ffffffffffffffff, ffffffffffffffff, ffffffffff ffffff) = 0 (FS_E_SUCCESS (OK)) FS_UnlockMap(&vc, &fc) = 0 (FS_E_SUCCESS (OK)) NOTES The samgetmap command typically issues holds (locks) to file. This can interfere with the operation of SANergy File Sharing, possibly causing file system corruption. SEE ALSO samgetvol(1M), samunhold(1M).