Provided by: libstoragemgmt-tools_0.0.20-1_all
NAME
lsmcli - LibStorageMgmt command line interface
SYNOPSIS
lsmcli [options]... [command]... [command options]...
DESCRIPTION
lsmcli is the command line tool for the libStorageMgmt library. This tool allows users to do one off storage related management operations or to script management of their storage.
OPTIONS (global)
--version show program's version number and exit -h, --help show this help message and exit -u URI, --uri=URI uniform resource identifier (env LSMCLI_URI) -P, --prompt prompt for password (env LSMCLI_PASSWORD) -H, --human print sizes in human readable format (e.g., MiB, GiB, TiB) -t SEP, --terse=SEP print output in terse form with "SEP" as a record separator -e, --enum display enumerated types as numbers instead of text -f, --force bypass confirmation prompt for data loss operations -w WAIT, --wait=WAIT command timeout value in ms (default = 30s) --header include the header with terse -b run the command asynchronously instead of waiting for completion. lsmcli command will exit with exit code(7) and job id will be written to stdout when a command is still executing on the storage array. Use --job-status <job id> to inquire on the progress of the command.
ENVIRONMENT
LSMCLI_URI The URI for the storage array in question. LSMCLI_PASSWORD The password to use for the array.
COMMANDS
-l <type>, --list=<type> List records of type: [VOLUMES|INITIATORS|POOLS|FS|SNAPSHOTS|EXPORTS |NFS_CLIENT_AUTH|ACCESS_GROUPS|SYSTEMS] Note: SNAPSHOTS listing requires: --fs <fs id> --capabilities=<system id> Retrieves array capabilities --plugin-info Retrieves plugin description and version --delete-fs=<fs id> Delete a filesystem --delete-access-group=<group id> Deletes an access group --access-group-add=<access group id> Adds an initiator to an access group, requires: --id <initiator id --type <initiator type> --access-group-remove=<access group id> Removes an initiator from an access group, requires: --id <initiator id> --create-volume=<volume name> Creates a volume (logical unit) requires: --size <volume size> --pool <pool id> --provisioning (optional) [DEFAULT|THIN|FULL] --create-fs=<fs name> Creates a file system requires: --size <fs size> --pool <pool id> --create-ss=<snapshot name> Creates a snapshot requires: --file <repeat for each file> (default is all files) --fs <file system id> --create-access-group=<Access group name> Creates an access group, requires: --id <initiator id> --type [WWPN|WWNN|ISCSI|HOSTNAME] --system <system id> --access-group-volumes=<access group id> Lists the volumes that the access group has been granted access to --volume-access-group=<volume id> Lists the access group(s) that have access to volume --volumes-accessible-initiator=<initiator id> Lists the volumes that are accessible by the initiator --initiators-granted-volume=<volume id> Lists the initiators that have been granted access to specified volume --restore-ss=<snapshot id> Restores a FS or specified files to previous snapshot state, requires: --fs <file system> --file <repeat for each file (optional)> --fileas <restore file name (optional)> --all (optional, exclusive option, restores all files in snapshot other options must be absent) --clone-fs=<source file system id> Creates a file system clone requires: --name <file system clone name> --backing-snapshot <backing snapshot id> (optional) --clone-file=<file system> Creates a clone of a file (thin provisioned) requires: --src <source file to clone (relative path)> --dest <destination file (relative path)> --backing-snapshot <backing snapshot id> (optional) --delete-volume=<volume id> Deletes a volume given its id --delete-ss=<snapshot id> Deletes a snapshot requires --fs -r <volume id>, --replicate-volume=<volume id> replicates a volume, requires: --type [SNAPSHOT|CLONE|COPY|MIRROR_ASYNC|MIRROR_SYNC] --name <human name> Optional: --pool <pool id> (Plugin choice if absent) --replicate-volume-range-block-size=<system id> size of each replicated block in bytes --replicate-volume-range=<volume id> Replicates a portion of a volume, requires: --type [SNAPSHOT|CLONE|COPY|MIRROR] --dest <destination volume> --src_start <source block start number> --dest_start <destination block start> --count <number of blocks to replicate> --iscsi-chap=<initiator id> configures ISCSI inbound/outbound CHAP authentication Optional: --in-user <inbound CHAP user name> --in-password <inbound CHAP password> --out-user <outbound CHAP user name> --out-password <inbound CHAP user password --access-grant=<initiator id> Grants access to an initiator to a volume requires: --type <initiator id type> --volume <volume id> --access [RO|RW], read-only or read-write --access-grant-group=<access group id> Grants access to an access group to a volume requires: --volume <volume id> --access [RO|RW], read-only or read-write --access-revoke=<initiator id> Removes access for an initiator to a volume requires: --volume <volume id> --access-revoke-group=<access group id> Removes access for access group to a volume requires: --volume <volume id> --resize-volume=<volume id> Re-sizes a volume, requires: --size <new size> --resize-fs=<fs id> Re-sizes a file system, requires: --size <new size> --nfs-export-remove=<nfs export id> Removes a nfs export --nfs-export-fs=<file system id> creates a nfs export Optional: --exportpath e.g. /foo/bar. Note: root, ro, rw are to be repeated for each host --root <no_root_squash host> --ro <read only host> --rw <read/write host> --anonuid <uid to map to anonymous> --anongid <gid to map to anonymous> --auth-type <NFS client authentication type> --job-status=<job status id> retrieve information about job --volume-dependants=<volume id> Returns True if volume has a dependant child --volume-dependants-rm=<volume id> Removes dependencies --fs-dependants=<fs id> Returns true if a child dependency exists. --file <file> for File check (optional) --fs-dependants-rm=<fs id> Removes dependencies --file <file> for File check (optional)
COMMAND OPTIONS
--size=size size (Can use B, K, M, G, T, P postfix, IEC sizing) No postfix indicates bytes --pool=pool id pool ID --provisioning=PROVISIONING [DEFAULT|THIN|FULL] --type=type type specifier --name=name human readable name --volume=volume volume ID --access=access [RO|RW], read-only or read-write access --id=initiator id initiator id --system=system id system id --backing-snapshot=<backing snapshot> backing snap shot name for operation --src=<source file> source of operation --dest=<source file> destination of operation --file=<file> file to include in operation, option can be repeated --fileas=<fileas> file to be renamed as, option can be repeated --fs=<file system> file system of interest --exportpath=<path for export> desired export path on array --root=<no_root_squash_host> list of hosts with no_root_squash --ro=<read only host> list of hosts with read/only access --rw=<read/write host> list of hosts with read/write access --anonuid=<anonymous uid> uid to map to anonymous --anongid=<anonymous uid> gid to map to anonymous --authtype=<type> NFS client authentication type --all specify all in an operation --src_start=<source block start> source block address to replicate --dest_start=<dest. block start> destination block address to replicate --count=<block count> number of blocks to replicate --in-user=<username> CHAP inbound user name --in-password=<password> CHAP inbound password --out-user=<out_user> CHAP outbound user name --out-password=<out_password> CHAP outbound password
FILES
~/.lsmcli lsmcli configuration file, containing name-value pairs separated by '='. The only currently supported configuration option is 'uri', such as 'uri=ontap://user@filer.example.com'. Configuration options in .lsmcli are only used if not overridden by command-line option or environment variable.
BUGS
Please report bugs to <libstoragemgmt-devel@lists.sourceforge.net>
AUTHOR
Tony Asleson <tasleson@redhat.com>