xvm(1M)
xvm - xvm command line interface
Showing IRIX 6.5.30 (default release). Last changed in IRIX 6.5.30.
NAME xvm - xvm command line interface SYNOPSIS xvm [-domain local|cluster] [command ...] DESCRIPTION xvm is a command line interface to the XVM volume manager subsystem. Throughout this document xvm (lower case) refers to the xvm cli whereas XVM (upper case) refers to the XVM subsystem. When no command is supplied on the command line, xvm reads and executes commands interactively. When a command is supplied, only that command will be executed, and the xvm exit status will indicate whether or not the command succeeded. If cluster services have been enabled when you enter this command, XVM will run in the cluster domain by default. If cluster services have not been enabled, XVM will run in the local domain by default. You can specify the XVM domain when you bring up the XVM volume manager by using the -domain option. You may find this option useful for changing the domain of XVM command execution if you are writing a script in which you want to execute a single command in the local domain. Basic XVM terminology is not discussed here - see xvm(7M) for coverage of XVM concepts and terminology. Use the help command with no arguments to get a list of supported commands. Help with no options will print a brief synopsis for the indicated commands. Help with the -verbose option will print full man- like help for the indicated commands. Verbose help output also includes examples of command usage. Commands Commands are case-insensitive keywords that may be abbreviated to any unique substring. Command options are multi-character keywords that are case-insensitive, and may be abbreviated to be unique among the options supported by the command. The following commands are supported by xvm, grouped by function. Consult the xvm help -verbose output for specifics. Failover Commands foconfig Read the failover2.conf configuration file. foswitch Switch a physvol to a new path. Physvol and Unlabeled disk Commands change Change attributes of a physvol. label Label a disk for xvm usage. probe Read (or re-read) the labels off of a labeled XVM disk. unlabel Remove a disk from the XVM arena. VE Creation Commands concat Concatenate ve's into a single address space mirror Mirror multiple ve's slice Create a slice ve to represent a range of blocks on a physvol stripe Create a stripe group from multiple ve's subvolume Create a subvolume ve volume Group subvolumes under a single volume name VE Manipulation Commands attach Attach a set of ve's to another ve. change Change attributes of a ve. Attributes that can be changed are ve-type specific. collapse Remove a ve from a tree without taking the subvolume off line. delete Delete a ve. detach Detach a ve from its parent. insert Insert a concat or mirror ve into a tree without taking the subvolume off line. remake Remake a ve, collapsing holes and optionally reordering the pieces. Display Commands dump Dump out the command or commands to reconstruct a ve. show Show various information about a ve or physvol. General Commands ? Alias for help bye Alias for exit exit Exit xvm help Display synopsis or full help for commands quit Alias for exit set Set or clear an xvm global variable. Command Output In general, commands which create or manipulate objects will print out the name of the created or target object upon successful completion. This is convenient for using shell substitution to feed the output of one command into another. For example, under ksh: $ xvm concat -volname fred $(xvm slice -all phys1) $(xvm slice -all phys2) would create a concatenated ve whose volume name is fred, and whose components are the physvols phys1 and phys2. Commands which fail, or for which the manipulated object does not make sense eg. delete, do not print out the target object name. Tokens which appear inside of <> are treated as comments by the cli. Commands which create or modify ve's also display the subvolume block- special name that the target ve belongs to inside of <>. For example the command: slice -all phys1 produces the following output (if successful): </dev/xvm/phys1s0> slice/phys1s0 Where slice/phys1s0n is the name of the slice ve created, and /dev/xvm/phys1s0 is a path to the subvolume block-special that can be opened to gain access to the slice. Object Specification xvm objects are specified using a path-like syntax using one of the following forms: [type/]objname [type/]vepath Where objname is the name of the object, and vepath is a path leading from one ve to another. An optional type may preface the object name or ve path to make the object name unique, and to make name resolution faster by providing a hint as to the type of object. See the help names for more details on object naming and specification. fnmatch(3G) wildcarding is supported for objname. Wildcard characters may only be present in the last component of vepath. See the xvm help regexp for more details on regular expression usage. If an object name is ambiguous, and wildcarding is not used, an error will be returned. Safe vs. Unsafe commands Ve manipulation commands can be considered safe, or unsafe. An unsafe command is one that will in some way affect the address space of the subvolume that the ve is under eg. detaching or deleting a child of a concat ve. Safe commands do not affect the address space of the subvolume eg. detaching or deleting all but the last child of a mirror ve (detaching or deleting the last child is unsafe). Safe commands can always be issued regardless of the open state of the affected subvolume, whereas unsafe commands can be issued only if the subvolume is not open. Mounted subvolumes are always open, however a subvolume may also be open without being mounted, eg. if an application is accessing the raw subvolume. Unsafe commands to open subvolumes will result in an error by default, but certain commands take a -force option to override that behavior. Conversely, certain commands take a -safe option which will enforce the safe checks even if the the subvolume is not open. SEE ALSO xvm(7M).