APIs in Category: volume | API version 1.3

volume-add volume-create volume-destroy volume-get-language volume-get-root-name volume-list-info volume-mirror volume-offline volume-online volume-options-list-info volume-rename volume-restrict volume-scrub-list-info volume-scrub-resume volume-scrub-start volume-scrub-stop volume-scrub-suspend volume-set-language volume-set-option volume-split volume-wafl-info

NetApp Manage ONTAP

volume-add | [top]

> Adds disks to the specified volume. Specify the disks in the same way as for "volume-create". You cannot add disks to a mirrored volume if one of the plexes is offline. Disk(s) may not be added immediately after the API returns. 'volume-list-info' can be used to query the status of the volume to determine when the volume has finished growing or disk(s) added.

> Input Name | Range | Type | Description
> disk-count |  | integer optional | Number of disks to add, including the parity disks. The disks will come from the pool of spare disks. The smallest disks in this pool join the volume first, unless you specify the "disk-size" argument. Range : [0..2^31-1].
> disk-size |  | integer optional | Size is the disk size in GB, and disks that are within 10% of the specified size will be selected for use in the volume. If not specified, the smallest disks in the pool will join the volume first. This option will be ignored if you specify a specific list of disks to use through "disks". Range : [0..2^31-1].
> disks |  | disk-info[] optional | Specific list of disks to add to the volume. If the volume is mirrored, and a specific list of disks is supplied, Another list "mirror-disks" must also be supplied with the same number of disks.
> force |  | boolean optional | The disks in a plex are not permitted to span spare pools. This behavior can be overridden with this force option, when set to "true".
> mirror-disks |  | disk-info[] optional | Specific list of mirror disks must contain the same number of disks specified in "disks".
> raid-group |  | string optional | Allows specification of a RAID group (for example rg0) to which the indicated disks should be added. When a RAID group is specified to add disks to other than the last RAID group, the volume can no longer be reverted to a version of ONTAP prior to 6.2. In such a case, the "force" option must be specified as well. By default, the filer fills up one RAID group with disks before starting another RAID group. Suppose a volume currently has one RAID group of 12 disks and its RAID group size is 14. If you add 5 disks to this volume, it will have one RAID group with 14 disks and another RAID group with 3 disks. The filer does not evenly distribute disks among RAID groups.
> volume |  | string | Name of an existing volume.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | List of disks that were not added. Only return if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMERGINVALID |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEDISKSIZEINVALID |  |
> EVOLUMEDISKDUP |  |
> CR_MAX_DISKS |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_VOLUME_LOCK |  |
> CR_DISKADD_CONSTANT_VOL |  |
> CR_DISK_ADD |  |
> CR_NOT_ENOUGH_DISKS |  |
> CR_NOT_ENOUGH_DISKS_IN_POOL |  |
> CR_NOT_ENOUGH_DISKS_IN_POOLS |  |
> CR_NOT_DISKS_SIZE |  |
> CR_INCORRECT_DISKCOUNT |  |
> CR_ONE_DISK_RAIDGROUP |  |
> CR_PLEX_IN_BAD_STATE |  |
> CR_RAIDGROUP_DONT_EXIST |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_RAIDGROUP_FULL |  |
> CR_BAD_DISK_ID |  |
> CR_NOT_SPARE_DISK |  |
> CR_NO_BLOCK_DISKS |  |
> CR_NOT_A_BLOCK_DISK |  |
> CR_NOT_SAME_POOLS |  |
> CR_POOL_ISOLATION_VIOLATION |  |
> CR_CANT_ALLOC_MEMORY |  |
> CR_NON_CONT_VBN |  |
> CR_VOL_TOO_LARGE |  |
> CR_VOLADD_TOO_LARGE |  |
> CR_EXCEEDS_RAW_SIZE |  |
> CR_TOO_MANY_GROUPS |  |
> CR_MAX_GROUP_COUNT |  |
> CR_DISK_ERROR |  |
> CR_ILLEGAL_RAIDSIZE |  |
> CR_LOW_SPARE |  |

volume-create | [top]

> Creates a new volume with the given volume name. You can create up to 200 volumes on each filer. Volume may not be operational immediately after the API returns. 'volume-list-info' can be used to query the status of the newly created volume to determine when it is fully operational.

> Input Name | Range | Type | Description
> disk-count |  | integer optional | Number of disks in the volume, including the parity disks. The disks in this newly created volume come from the pool of spare disks. The smallest disks in this pool join the volume first, unless you specify the "disk-size" argument. Range [0..2^31-1]. Either "disk-count" or "disks" must be supplied.
> disk-size |  | integer optional | Size is the disk size in GB, and disks that are within 10% of the specified size will be selected for use in the volume. If not specified, the smallest disks in the pool will join the volume first. This option will be ignored if you specify a specific list of disks to use through "disks". Range [0..2^31-1].
> disks |  | disk-info[] optional | Specific list of disks to use for the new volume. If "mirrored" is set to true, and a specific list of disks is supplied, Another list "mirror-disks" must also be supplied with the same number of disks. Either "disk-count" or "disks" must be supplied.
> force |  | boolean optional | The disks in a plex are not permitted to span spare pools. This behavior can be overridden with this force option, when set to "true".
> is-mirrored |  | boolean optional | This option can be used to specify that the new volume be mirrored (have two plexes) upon creation. If this is set to "true", then the indicated disks will be split across the two plexes. By default, the new volume will not be mirrored.
> is-snaplock |  | boolean optional | This option can be used to specify that the new volume be a SnapLock volume upon creation. If this is set to "true", then the volume will be created as a SnapLock volume. By default, the new volume will be a regular volume.
> language-code |  | string optional | Creates the volume with the language specified by the language code. The default is the language of the root volume of the filer. Language codes are: C (POSIX) da (Danish) de (German) en (English) en_US (English (US)) es (Spanish) fi (Finnish) fr (French) he (Hebrew) it (Italian) ja (Japanese euc-j) ja_JP.PCK (Japanese PCK (sjis)) ko (Korean) no (Norwegian) nl (Dutch) pt (Portuguese) sv (Swedish) zh (Simplified Chinese) zh.GBK (Simplified Chinese (GBK)) zh_TW (Traditional Chinese euc-tw) zh_TW.BIG5 (Traditional Chinese Big 5) To use UTF-8 as the NFS character set append '.UTF-8'.
> mirror-disks |  | disk-info[] optional | Specific list of mirror disks must contain the same number of disks specified in "disks".
> raid-size |  | integer optional | Raid size argument specifies the maximum number of disks in each RAID group in the volume. The maximum value of raidsize is 28. The default value is 8, if it is not specified. Range : [0..2^31-1].
> volume |  | string | Name of volume to create. The volume name can contain letters, numbers, and the underscore character(_), but the first character must be a letter or underscore.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | List of disks that were not added. Only return if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMENAMEINVALID |  |
> EVOLUMERGSIZEINVALID |  |
> EINVALIDINPUTERROR |  |
> EVOLUMELANGUAGEINVALID |  |
> EVOLUMEDISKSIZEINVALID |  |
> EVOLUMEDISKDUP |  |
> CR_MAX_DISKS |  |
> CR_REVERT_RUNNING |  |
> CR_TOO_MANY_VOLUMES |  |
> CR_ILLEGAL_VALUE |  |
> CR_NO_LICENSE |  |
> CR_NO_RAIDRD_LICENSE |  |
> CR_NO_WORM_LICENSE |  |
> CR_NOT_ENOUGH_DISKS |  |
> CR_DEST_EXISTS |  |
> CR_NO_MORE_VOLS |  |
> CR_VOLUME_LOCK |  |
> CR_NOT_ENOUGH_DISKS_IN_POOL |  |
> CR_NOT_ENOUGH_DISKS_IN_POOLS |  |
> CR_NOT_DISKS_SIZE |  |
> CR_NO_BLOCK_DISKS |  |
> CR_NOT_A_BLOCK_DISK |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_POOL_ISOLATION_VIOLATION |  |
> CR_INCORRECT_DISKCOUNT |  |
> CR_ONE_DISK_RAIDGROUP |  |
> CR_NOT_SPARE_DISK |  |
> CR_NOT_SAME_POOLS |  |
> CR_CANT_ALLOC_MEMORY |  |
> CR_VOL_TOO_LARGE |  |
> CR_EXCEEDS_RAW_SIZE |  |
> CR_TOO_MANY_GROUPS |  |
> CR_MAX_GROUP_COUNT |  |
> CR_DISK_ERROR |  |
> CR_SPARECORE_DISK |  |
> CR_LOW_SPARE |  |

volume-destroy | [top]

> Destroys the specified volume or plex. If a volume is specified, all plexes in the volume are destroyed. If a plex is specified, the plex is destroyed, leaving an unmirrored volume containing the remaining plex. The disks originally in the destroyed object become spare disks. Only offline volumes and plexes can be destroyed.

> Input Name | Range | Type | Description
> name |  | string | Name of an existing volume or plex.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |
> CR_PLEX_UNSUPPORTED |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_VOL_IS_VIRTUAL |  |
> CR_VOLUME_LOCK |  |
> CR_WRONG_HOST |  |
> CR_NOT_FAILED |  |
> CR_DESTROY_FAILED |  |
> CR_CANT_DESTROY_WORM_VOLUME |  |

volume-get-language | [top]

> Get the character mapping on a volume.

> Input Name | Range | Type | Description
> volume |  | string | Name of an existing volume.
> Output Name | Range | Type | Description
> language |  | string | Language of the volume. As describe in volume-create.
> nfs-character-set |  | string | NFS Character set.
> oem-character-set |  | string | OEM Character set.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEBUSY |  |

volume-get-root-name | [top]

> Return the name of the "root" volume.

> Output Name | Range | Type | Description
> volume |  | string | Name of the root volume.

volume-list-info | [top]

> Get volume status from RAID.

> Input Name | Range | Type | Description
> verbose |  | boolean optional | If set to "true", detailed information for plex will be returned including all the raid group info and disk. If not set or set to false, raid group info will not be returned.
> volume |  | string optional | Get status for specific volume, if not supplied get status of all volumes.
> Output Name | Range | Type | Description
> volumes |  | volume-info[] | List of volumes and their status.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |

volume-mirror | [top]

> Turns an unmirrored volume into a mirrored volume by adding a plex to it. The plex is either newlyformed from disks chosen from a spare pool, or, if the "victim-volume" option is specified, is taken from another existing unmirrored volume. Volume must be currently unmirrored. Disks may be specified explicitly using "mirror-disks" list option in the same way as with the volume-create and volume-add commands. The number of disks indicated must match the number present on the existing volume. If disks are not specified explicitly, then disks are automatically selected to match those in the volume's existing plex.

> Input Name | Range | Type | Description
> force |  | boolean optional | The disks in a plex are not permitted to span spare pools. This behavior can be overridden with this force option, when set to "true".
> mirror-disks |  | disk-info[] optional | Specific list of mirror disks must match the number present on the existing volume. The disks specified are not permitted to span disk pools. This behavior can be overridden with the force option.
> victim-volume |  | string optional | This option can be used to join the "victim-volume" back into this volume to form a mirrored volume. The result is a mirrored volume which is otherwise identical to volume before the operation. The "victim-volume" is effectively destroyed. "victim-volume" must have been previously mirrored with this volume, then separated via "volume-split" command. "victim-volume" must be offline.
> volume |  | string | Name of an existing volume.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | List of disks that were not added. Only return if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEDISKDUP |  |
> CR_NO_LICENSE |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_JOIN_CKSUM_STATE_MISMATCH |  |
> CR_JOIN_CONFIG_MISMATCH |  |
> CR_VOLUME_LOCK |  |
> CR_WRONG_HOST |  |
> CR_ALREADY_MIRRORED |  |
> CR_ILLEGAL_MIRROR_STATE |  |
> CR_JOIN_WAFL_INCONSISTENT |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_JOIN_NO_COMMON_SNAPSHOT |  |
> CR_CANT_ALLOC_MEMORY |  |
> CR_CREATE_PLEX_ERROR |  |
> CR_JOIN_LOCAL_ID_MISMATCH |  |
> CR_CREATE_PLEX_ERROR |  |
> CR_NOT_ENOUGH_DISKS |  |
> CR_BAD_DISK_ID |  |
> CR_NOT_SPARE_DISK |  |
> CR_POOL_ISOLATION_VIOLATION |  |
> CR_NOT_DISKS_SIZE |  |
> CR_INCORRECT_DISKCOUNT |  |
> CR_NO_BLOCK_DISKS |  |
> CR_NOT_SAME_POOLS |  |
> CR_CANT_ALLOC_MEMORY |  |
> CR_TOO_MANY_GROUPS |  |
> CR_SPARECORE_DISK |  |
> CR_PLEX_TOO_LARGE |  |
> CR_EXCEEDS_RAW_SIZE |  |
> CR_LOW_SPARE |  |

volume-offline | [top]

> Takes the specified volume or plex offline. The command takes effect before returning. Except in maintenance mode, the current root volume may not be taken offline. Neither may a volume marked to become root be taken offline. A number of operations being performed on the volume in question can prevent vol offline from succeeding, for various lengths of time. If such operations are found, there will be a one-second wait for such operations to finish. If they do not, the command is aborted. A check is also made for files on the volume opened by internal ONTAP processes. The command is aborted if any are found.

> Input Name | Range | Type | Description
> cifs-delay |  | integer optional | If a volume contains CIFS shares, users should be warned before taking the volume offline. The cifs-delay argument specifies the number of minutes to delay before taking the volume offline, during which time CIFS users are warned of the pending loss of service. A time of 0 means take the volume offline immediately with no warnings given. CIFS users can lose data if they are not given a chance to terminate applications gracefully. By default cifs-delay is 0.
> name |  | string | Name of an existing volume or plex. If a volume contains CIFS shares, users should be warned before taking the volume offline. Use "cifs-delay-time" to specify number of seconds to wait. If a plexname is specified, the plex must be part of a mirrored volume and both plexes must be online. Prior to offlining a plex, the system will flush all internally buffered data associated with the plex and create a snapshot that is written out to both plexes. The snapshot allows for efficient resynchronization when the plex is subsequently brought back online.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMECIFSTERMINATE |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_VOLUME_LOCK |  |
> CR_ALREADY_OFFLINE |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_GIVEBACK_IN_PROGRESS |  |
> CR_BEING_USED |  |
> CR_CIFS_TERMINATION_FAILED |  |
> CR_CIFS_OPENS |  |
> CR_VOL_FENCED |  |
> CR_PARTIAL_VOL |  |
> CR_PLEX_NOT_FOUND |  |
> CR_PLEX_ALREADY_OFFLINE |  |
> CR_CANT_OFFLINE_PLEX |  |
> CR_OFFLINE_ERROR |  |

volume-online | [top]

> Brings the specified volume or the plex online. This command takes effect immediately. If there are CIFS shares associated with the volume, they are enabled.

> Input Name | Range | Type | Description
> name |  | string | Name of an existing volume or plex. If the volume is specified, it must be currently offline, restricted, or foreign. If the volume is foreign, it will be made native before being brought online. A ``foreign'' volume is a volume that consists of disks moved from another filer and that has never been brought online on the current filer. Volumes that are not foreign are considered ``native.'' If the volume is inconsistent, but has not lost data, it is advisable to run WAFL_check (or do a snapmirror initialize in case of a replica volume) prior to bringing an inconsistent volume online. Bringing an inconsistent volume online increases the risk of further file system corruption. If the volume is inconsistent and has experienced possible loss of data, it cannot be brought online unless WAFL_check (or snapmirror initialize) has been run on the volume. If a plex is specified, the plex must be part of an online mirrored volume. The system will initiate resynchronization of the plex as part of online processing.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_REVERT_RUNNING |  |
> CR_NO_LICENSE |  |
> CR_NO_RAIDRD_LICENSE |  |
> CR_VOLUME_LOCK |  |
> CR_ALREADY_ONLINE |  |
> CR_DUPLICATE_NAME |  |
> CR_TOO_MANY_GROUPS |  |
> CR_ONLINE_ERROR |  |
> CR_INSUFFICIENT_MEMORY |  |
> CR_DUPLICATE_FSID |  |
> CR_UNKNOWN_VERSION |  |
> CR_INCONSISTENT_STATE |  |
> CR_INVALID_FSINFO |  |
> CR_VOL_READONLY |  |
> CR_VOL_IRONUPGRADE |  |
> CR_VOL_IRONSTREAMDIRUPGRADE |  |
> CR_ONLINE_FAILED |  |

volume-options-list-info | [top]

> Get the option that have been set for specified volume.

> Input Name | Range | Type | Description
> volume |  | string | Name of an existing volume.
> Output Name | Range | Type | Description
> options |  | volume-option-info[] | List of options set for this volume.

> Errno | Description
> EINTERNALERROR |  |
> CR_BUF_NOT_FOUND |  |
> CR_OBJ_NOT_FOUND |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_DISK_NOT_FOUND |  |

volume-rename | [top]

> Renames the specified volume to a new name specified by "new-volume-name". If the volume is referenced in the /etc/exports file, remember to make the name change in /etc/exports also so that the affected file system can be exported by the filer after the filer reboots. The "volume-rename" command does not automatically update the /etc/exports file.

> Input Name | Range | Type | Description
> new-volume-name |  | string | New volume name.
> volume |  | string | Name of an existing volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMENAMEINVALID |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_VOLUME_LOCK |  |
> CR_DEST_EXISTS |  |
> CR_DEST_INVALID |  |
> CR_CANT_RENAME_WORM_VOLUME |  |
> CR_CANT_ALLOC_MEMORY |  |

volume-restrict | [top]

> Put the specified volume into restricted state, starting from either online or offline state. If the volume is online then it will be made unavailable for data access as described under "volume-offline".

> Input Name | Range | Type | Description
> cifs-delay |  | integer optional | If a volume contains CIFS shares, users should be warned before taking the volume offline. The cifs-delay argument specifies the number of minutes to delay before taking the volume offline, during which time CIFS users are warned of the pending loss of service. A time of 0 means take the volume offline immediately with no warnings given. CIFS users can lose data if they are not given a chance to terminate applications gracefully. By default cifs-delay is 0.
> name |  | string | Name of an existing volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMECIFSTERMINATE |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_ALREADY_RESTRICT |  |
> CR_VOLUME_LOCK |  |
> CR_VOL_HAS_MOUNTED_VVOLS |  |
> CR_DUPLICATE_NAME |  |
> CR_TOO_MANY_GROUPS |  |
> CR_RESTRICT_ERROR |  |

volume-scrub-list-info | [top]

> Get the status of parity scrubbing on the named volume, plex, or group; all RAID groups currently undergoing parity scrubbing if no name is given. The status includes a percent-complete, and the scrub's suspended status.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.
> Output Name | Range | Type | Description
> scrub-details |  | scrub-detail-info[] | List of RAID groups and their scrub status.

> Errno | Description
> EINTERNALERROR |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_SCRUB_ERROR |  |

volume-scrub-resume | [top]

> Resume parity scrubbing on the named volume, plex, or group; if no name is given, on all RAID groups currently undergoing parity scrubbing that have been suspended.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.

> Errno | Description
> EINTERNALERROR |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_SCRUB_ERROR |  |

volume-scrub-start | [top]

> Start parity scrubbing. Parity scrubbing compares the data disks to the parity disk in a RAID group, correcting the parity disk's contents as necessary. If no name is given then parity scrubbing is started on all online volumes. If a volume name is given, scrubbing is started on all RAID groups contained in the volume. If a plex name is given, scrubbing is started on all RAID groups contained in the plex. If a RAID group name is given scrubbing is started only on that group. Use volume-scrub-list-info to check status of scrubbing.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.

> Errno | Description
> EINTERNALERROR |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_FOREIGN_VOLUME |  |
> CR_SCRUB_ERROR |  |

volume-scrub-stop | [top]

> Stop parity scrubbing on the named volume, plex, or group; if no name is given, on all RAID groups currently undergoing parity scrubbing.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.

> Errno | Description
> EINTERNALERROR |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_SCRUB_ERROR |  |

volume-scrub-suspend | [top]

> Suspend parity scrubbing on the named volume, plex, or group; if no name is given, on all RAID groups currently undergoing parity scrubbing.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.

> Errno | Description
> EINTERNALERROR |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_SCRUB_ERROR |  |

volume-set-language | [top]

> Set the character mapping on a volume.

> Input Name | Range | Type | Description
> language-code |  | string | Language of the volume to set. As describe in volume-create.
> volume |  | string | Name of an existing volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEBUSY |  |

volume-set-option | [top]

> Sets the specified option of the volume to the value "option-value". The command remains effective after the filer is rebooted. Some options have values that are numbers. Some options have values that may be "on" (which can also be expressed as "yes", "true", or "1" ) or "off" (which can also be expressed as "no", "false", or "0"). You can use a mixture of uppercase and lowercase characters when typing the value of an option. The "root" option is special in that it does not have a value.

> Input Name | Range | Type | Description
> option-name |  | string | Name of the option. Possble values : name : "root" value : The specified volume will become the root volume for the filer on the next reboot. This option can be used on one volume only at any given time. The existing root volume will become a non-root volume after the reboot. Until the system is rebooted, the original volume will continue to show root as one of its options, and the new root volume will show diskroot as an option. In general, the volume that has the diskroot option is the one that will be the root volume following the next reboot. The only way to remove the root status of a volume is to set the root option on another volume. ----------------------------------------------------- name : "raidsize" value : The value of this option is the maximum size of a RAID group within the volume. Changing the value of this option will not cause existing RAID groups to grow or shrink; it will only affect whether more disks will be added to the last existing RAID group and how large new RAID groups will be. ----------------------------------------------------- name : "maxdirsize" value : Sets the maximum size (in K-Bytes) that a directory can grow to. This is set to 10240 by default; it limits directory size to 10MBytes and can hold up to 300,000 files. The number of files that the directory actually does hold will vary depending on the length of the names in the directory. Most users should not need to change this setting. This option is useful for environments where system users may grow a directory to a size that starts impacting system performance. When a user tries to create a file in a directory that is at the limit, the system returns a ENOSPC error and fails the create. ----------------------------------------------------- name : "create_ucode" value : "on" | "off" Setting this option to on forces Unicode format directories to be created by default, both from NFS and CIFS. By default it is set to off, in which case all directories are created in pre-4.0 format and the first CIFS access will convert it to Unicode format. ----------------------------------------------------- name : "convert_ucode" value : "on" | "off" Setting this option to on forces conversion of all directories to Unicode format when accessed from both NFS and CIFS. By default it is set to off, in which case access from CIFS causes conversion of pre-4.0 and 4.0 format directories; access from NFS causes conversion of 4.0 format directories. ----------------------------------------------------- name : "fs_size_fixed" value : "on" | "off" This option causes the filesystem to remain the same size and not grow when a snapmirrored volume is broken, or when a vol add is performed on it. This option is automatically set to be on when a volume becomes a snapmirrored volume. It will remain on after the snapmirror break command is issued for the volume. This allows a volume to be snapmirrored back to the source without needing to add disks to the source volume. If the volume size is larger than the filesystem size, turning off this option will force the filesystem to grow to the size of the volume. ----------------------------------------------------- name : "minra" value : "on" | "off" If this option is on, the filer performs minimal read-ahead on the volume. By default, this option is off, causing the filer to perform very aggressive read-ahead on the volume. ----------------------------------------------------- name : "no_atime_update" value : "on" | "off" If this option is on, it prevents the update of the access time on an inode when a file is read. This option is useful for volumes with extremely high read traffic, since it prevents writes to the inode file for the volume from contending with reads from other files. It should be used carefully. That is, use this option when you know in advance that the correct access time for inodes will not be needed for files on that volume. ----------------------------------------------------- name : "nosnap" value : "on" | "off" If this option is on, it disables automatic snapshots on the volume. ----------------------------------------------------- name : "nosnapdir" value : "on" | "off" If this option is on, it disables the visible .snapshot directory that is normally present at client mount points, and turns off access to all other .snapshot directories in the volume. ----------------------------------------------------- name : "nvfail" value : "on" | "off" If this option is on, the filer performs additional status checking at boot time to verify that the NVRAM is in a valid state. This option is useful when storing database files. If the filer finds any problems, database instances hang or shut down, and the filer sends error messages to the console to alert you to check the state of the database. ----------------------------------------------------- name : "snapmirrored" value : "off" If SnapMirror is enabled, the filer automatically sets this option to on. Set this option to off if you no longer want to use SnapMirror to update the mirror. After you set this option to off, the mirror becomes a regular writable volume. You can set this option only to off; only the filer can change the value of this option from off to on. ----------------------------------------------------- name : "ignore_inconsistent" value : "on" | "off" This command can only be used in maintenance mode. If this option is set, it allows the root volume to be brought online on booting, even though it is inconsistent. The user is cautioned that bringing it online prior to running WAFL_check may result in further file system inconsistency. ----------------------------------------------------- name : "resyncsnaptime" value : This option is used to set the mirror resynchronization snapshot frequency (in minutes). The default value is 60 minutes. ----------------------------------------------------- name : "create_reserved" value : "on" | "off" This option, if on, makes space reservation the default for newly created files in the volume. The default value can be changed by using the file command for any given file. Reserving space for files ensures that the entire file can be written up to its current size, without running out of disk space. Without reservations, this is not necessarily the case as there may not be sufficient disk space to fill holes in the file, or to overwrite blocks of the file that are already stored in a snapshot.
> option-value |  | string | Value of option.
> volume |  | string | Name of an existing volume.

> Errno | Description
> EINTERNALERROR |  |
> CR_BAD_OBJECT_TYPE |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_VOLUME_LOCK |  |
> CR_VOL_RESTRICTED |  |
> CR_BAD_ATTRIBUTE |  |
> CR_REVERT_RUNNING |  |
> CR_MAINT_MODE |  |
> CR_IS_REPLICA |  |
> CR_EXTRA_ARG |  |
> CR_NOT_BOOLEAN_VALUE |  |
> CR_ILLEGAL_RAIDSIZE |  |
> CR_ILLEGAL_VALUE |  |
> CR_UNKNOWN_GROUPTYPE |  |
> CR_UNSUPPORTED_PLATFORM |  |
> CR_NOT_ENOUGH_DISKS |  |
> CR_MAINT_MODE |  |
> CR_INCORRECT_VOL_TYPE |  |
> CR_NO_RAIDRD_LICENSE |  |
> CR_NOT_ONLINE |  |
> CR_MIRROR_DEGRADED |  |
> CR_PLEX_IN_BAD_STATE |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_GROUP_NOT_NORMAL_STATE |  |
> CR_NO_ROOT_CLONE |  |
> CR_ROOT_CANNOT_BE_WORM |  |
> CR_DIAG_MAINT_MODE_ONLY |  |
> CR_ZCS_VOL_ONLY |  |
> CR_RAIDERR_T |  |
> CR_BCS_VOL_ONLY |  |
> CR_SNAPMIRROR_TRY_SET |  |
> CR_UNREPLICA_FAIL |  |
> CR_VOLCOPY_SOURCE |  |
> CR_REPLICA_SOURCE |  |

volume-split | [top]

> Removes the specified plex from a mirrored volume and creates a new unmirrored volume with the specified name that contains the plex. The original mirrored volume becomes unmirrored. The plex to be split from the original volume must be functional (not partial), but it could be inactive, resyncing, or out-of-date. Vol split can therefore be used to gain access to a plex that is not up to date with respect to its partner plex, if its partner plex is currently failed. If the plex is offline at the time of the split, the resulting volume will be offline. Otherwise, the resulting volume will be in the same online/offline/restricted state as the original volume. A split mirror can be joined back together via the "victim-volume" option to "volume-mirror".

> Input Name | Range | Type | Description
> new-volume-name |  | string | Name of a new volume.
> plex |  | string | Name of the plex to split.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |
> CR_VOLUME_NOT_FOUND |  |
> CR_REVERT_RUNNING |  |
> CR_VOLUME_LOCK |  |
> CR_WRONG_HOST |  |
> CR_DISKADD_IN_PROGRESS |  |
> CR_VOL_OFFLINE |  |
> CR_EXTRA_ARG |  |
> CR_SPLIT_PLEX_FAILED |  |
> CR_ILLEGAL_MIRROR_STATE |  |
> CR_NOT_MIRROR_VOLUME |  |
> CR_PLEX_NOT_FOUND |  |
> CR_SPLIT_PLEX_NO_FS |  |
> CR_SPLIT_PLEX_DIRTY_DEGRADED_RG |  |
> CR_CANT_REMOVE_ONLY_GOOD_PLEX |  |
> CR_SPLIT_PLEX_ALL_VSIZE |  |

volume-wafl-info | [top]

> Get wafl status information.

> Output Name | Range | Type | Description
> checksum-types |  | string | Checksum type. Possible values are "zoned" if all volumes are Fixed VBN, "block" if all volumes are Block Appended, "mixed" if volumes are mixed Fixed VBN and Block Appended, or "none" if no volumes have zoned or block checksum.
> disk-types |  | string | Type of disks. Possible values are "512" if all disks 512 BPS, "520" if all disks 520 BPS, "mixed" if disks are mixed 512 and 520, or "none" if no disks have 512 or 520 BPS.
> root-volume |  | string | Current root volume.
> snapshots-max |  | integer | Maximum number of snapshots available. Range : [0..2^31-1].

> Errno | Description
> EINTERNALERROR |  |

Element definition: disk-info | [top]

> Disk info, which only contains its name.

> Name | Range | Type | Description
> name |  | string | Name of disk.

Element definition: scrub-detail-info | [top]

> Information about scrubbing.

> Name | Range | Type | Description
> is-suspended |  | boolean | Suspended state of scrubbing.
> last-scrub-timestamp |  | integer optional | Time at which the last full scrub completed. If scrub was never complete before, this will not be returned. Time is in seconds since January 1, 1970. Range : [0..2^31-1].
> percentage-complete |  | integer optional | Scrubbing percentage complete. If scrubbing is not active, percentage will not be returned. Range : [0..100].
> raid-group |  | string | Name of the raid group.

Element definition: volume-info | [top]

> Volume status information.

> Name | Range | Type | Description
> checksum-style |  | string | Checksum style. e.g. none, zoned, block, wafl, unknown.
> disk-count |  | integer | Number of disks. Range : [0..2^31-1].
> files-total |  | integer | Total file count. Range : [0..2^64-1].
> files-used |  | integer | Files used. Range : [0..2^64-1].
> is-checksum-enabled |  | boolean | Checksum enabled for volume.
> is-inconsistent |  | boolean | Whether or not volume is inconsistent.
> is-snaplock |  | boolean | Whether or not volume is a SnapLock volume.
> mirror-status |  | string | Mirror status of volume. e.g. invalid, uninitialized, needs CP count check, CP count check in progress, unmirrored, mirrored, mirror degraded, mirror resynchronizing, failed, limbo, .
> name |  | string | Name of volume.
> percentage-used |  | integer optional | Percentage of volume used. Range : [0..100]. Not returned if the volume is not usuable, i.e. it is offline.
> plex-count |  | integer | Count of child plexes. Range : [0..2^31-1]. The size of the plex array returned.
> plexes |  | plex-info[] | List of plexes for this volume.
> quota-init |  | integer | Quota state and percent initialized. 100% means on, 0% means off, anywhere in between means initializing. Range : [0..100].
> raid-size |  | integer | Current raid group size. Range : [0..2^31-1].
> raid-status |  | string | Raid status. e.g. normal, verifying, snapmirrored, copying, ironing, mirrored, resyncing, mirror degraded, invalid, needs check, initializing, growing, partial, noparity, degraded, reconstruct, out-of-date, foreign, raid4, raid0, raid_dp. The output could be a combination of the statuses listed above. If more than one status is in the output, they will be separated by ','. For example 'reconstruct,growing'.
> size-available |  | integer | Bytes available on volume. Range : [0..2^64-1].
> size-total |  | integer | Total size in bytes on volume. Range : [0..2^64-1].
> size-used |  | integer | Bytes used. Range : [0..2^64-1].
> state |  | string | State of the volume. The possible values are: unknown, offline, online, partial, failed, creating, and restricted.
> uuid |  | string | Universal unique identifier for volume.

Element definition: volume-option-info | [top]

> Option key and value.

> Name | Range | Type | Description
> name |  | string | Option key.
> value |  | string | Option value.

Element definition: plex-info | [top]

> Information for a plex.

> Name | Range | Type | Description
> is-online |  | boolean | State of the plex, "true" if it is online "false" otherwise.
> is-resyncing |  | boolean | "true" if the plex is currently resycing. "false" otherwise.
> name |  | string | Plex name. e.g. /myevol/plex0
> raid-groups |  | raid-group-info[] optional | List of raid groups in plex. Will be returned only if verbose is set to "true".
> resyncing-percentage |  | integer optional | Resyncing percentage if plex is currently being resynced. Range : [0..100].

Element definition: raid-group-info | [top]

> Information for a raid group.

> Name | Range | Type | Description
> disks |  | disk-info[] | List of disks.
> is-reconstructing |  | boolean | True if raid group is currently reconstructing.
> name |  | string | Raid group name.
> reconstruction-percentage |  | integer optional | Percentage of reconstruction work completed, if it is currently reconstructing. Range : [0-100].

Element definition: disk-info | [top]

> Disk info, which only contains its name.

> Name | Range | Type | Description
> name |  | string | Name of disk.