
# man vxassist
Reformatting page.  Wait... done

Maintenance Commands                                 vxassist(1M)

NAME
     vxassist - create, relayout, convert, mirror, backup,  grow,
     shrink, delete, and move volumes

SYNOPSIS
     vxassist [ options ] [ -b ] addlog volume [ attribute ... ]

     vxassist [ options ] [ -b ] convert volume [ attribute ... ]

     vxassist [ options ] [ -b ]  growby  volume  lengthchange  [
     attribute ... ]

     vxassist [ options ] [ -b ] growto volume newlength [ attri-
     bute ... ]

     vxassist help [ alloc | attrs | layout | mirror | options  |
     showattrs | space | usage]

     vxassist [ options ] [ -b ] make volume length  [  attribute
     ... ]

     vxassist [ options ] [ -b ] maxsize [ attribute ... ]

     vxassist [ options ] [ -b ] maxgrow volume [ attribute ... ]

     vxassist [ options ] [ -b ] mirror volume [ attribute ... ]

     vxassist [ options ] [ -b ] move volume storage-spec  ...  [
     attribute ... ]

     vxassist [ options ] [ -b ] relayout volume [ attribute  ...
     ]

     vxassist [ options  ]  remove  {volume|mirror|log  }  volume
     storage-spec ... [ attribute ... ]

     vxassist [ options ] shrinkby volume lengthchange

     vxassist [ options ] shrinkto volume newlength

     vxassist [ options ] snapabort volume

     vxassist [ options ] snapshot volume newvolume

     vxassist [ options ] [ -b ] snapstart volume [ attribute ...
     ]

     vxassist [ options ] snapwait volume

DESCRIPTION
     The vxassist utility is an interface to the  VERITAS  Volume
     Manager  that  finds space for and creates volumes, performs

VxVM 3.0            Last change: 11 Dec 1998                    1

Maintenance Commands                                 vxassist(1M)

     volume  conversion,  adds  mirrors  and  logs  to   existing
     volumes,  extends and shrinks existing volumes, provides for
     the migration of data from a specified  set  of  disks,  and
     provides  facilities  for  the  on-line  backup  of existing
     volumes.

     The vxassist command is supplied a keyword that selects  the
     action to be performed.

     Each operation can be applied to only one disk  group  at  a
     time,  due  to internal implementation constraints.  For the
     make operation, attributes that name specific disks  may  be
     used  to  determine  a  default disk group, according to the
     standard   disk   group   selection   rules   described   in
     vxintro(1M).   For  other  operations, the volume operand is
     used.  A specific disk group can be  forced  with  -g  disk-
     group.  When  no  disk  attributes  are  specified, the make
     operation defaults to  using  the  rootdg  disk  group.   An
     alternate  default disk group can be specified in a defaults
     file (/etc/default/vxassist).

     Many vxassist operations can take a set of  attributes  that
     specify  how volumes should be laid out, which sets of disks
     they should be built on, among other things.  Attributes are
     of  two  basic types:  storage specifications, and attribute
     settings.  Storage specification attributes are either  sim-
     ple  disk  names (for example, disk01) or selected groups of
     disks (for example, ctlr:c1  specifies  all  disks  on  con-
     troller 1).  Excluded (negated) storage specification can be
     specified with a prefix of !.  For  example,  the  arguments
     ctlr:c1  and  !target:c1t5  can be combined to indicate that
     storage should be allocated from controller 1, but not  from
     SCSI target 5 on that controller.

     Other attributes are of the form attrname=value; these addi-
     tional  attributes  can  specify  the type of a volume (mir-
     rored, RAID-5, striped, logged), layout  policies  (contigu-
     ous,  spanning),  mirroring requirements (mirror across con-
     trollers or SCSI targets), constraint parameters  (constrain
     allocations  to  a single controller), and more.  A complete
     list of attribute specifications is given later in this  man
     page.

     If no  non-excluded  storage  specification  attributes  are
     given,  then any non-reserved, non-volatile, non-spare, non-
     excluded disk may be used to allocate  storage.   Attributes
     may  constrain  the  selection, particularly with respect to
     the selection of multiple disks.  For example, the command:

          vxassist make mirvol 500m layout=mirror,log mirror=ctlr !ctlr:c2

VxVM 3.0            Last change: 11 Dec 1998                    2

Maintenance Commands                                 vxassist(1M)

     requests that vxassist create a new mirrored volume  on  any
     disks  that are not on controller 2.  The selection of disks
     is constrained by the mirror=ctlr  attribute  such  that  no
     disks  within  a mirror can be on the same controller as any
     disks on the other mirror.

KEYWORDS
     addlog    Add a log to a mirrored or RAID-5 volume.   A  log
               can be added to a mirrored volume only if the log-
               ging type of  the  volume  is  DRL  (this  is  the
               default  logging type).  When adding the first log
               to a mirrored or RAID-5 volume, the loglen  attri-
               bute can be used to specify the length of the log;
               otherwise, the loglen attribute will  be  ignored.
               Other  attributes  can  be  specified  to indicate
               desired properties for the new allocations.   Mir-
               roring  constraints  do  not apply to logs, though
               storage constraints can  be  specified  that  con-
               strain  the  logs to disk sets already used by the
               volume.

               Adding a log to a  DRL  mirrored  volume  involves
               creating  a  single  log subdisk and a new plex to
               contain that subdisk.  The new plex will  then  be
               attached  to the volume.  Adding a log to a RAID-5
               volume involves creating a new plex that  will  be
               attached to the volume as a log plex.

     convert   Converts a volume layout to a mirror-stripe from a
               stripe-mirror,   or  from  a  mirror-stripe  to  a
               stripe-mirror. Also converts to mirror-concat from
               a  concat-mirror,  or  from  a  mirror-concat to a
               concat-mirror.

     growby | growto
               Increase the length of the  named  volume  to  the
               length  specified by newlength (growto), or by the
               length specified by  lengthchange  (growby).   The
               new  length  or change in length is specified as a
               standard Volume Manager length (see  vxintro(1M)).
               The  growto  operation  fails if the new length is
               not greater than the current volume  length.   The
               length  of  the  volume  is increased by extending
               existing subdisks in the volume, or by adding  and
               associating  new  subdisks.   Plexes  that are not
               fully populated already (that is, that are sparse)
               are left unchanged.  Log-only plexes are also left
               unchanged.

               When a volume is grown, the  volume  may  be  con-
               verted  from  one  layout  to  another  as  a side
               effect.   For  example,  a  volume  that  has  the

VxVM 3.0            Last change: 11 Dec 1998                    3

Maintenance Commands                                 vxassist(1M)

               mirror-stripe  layout  may be converted to stripe-
               mirror when it is grown.  This kind of  conversion
               is done if vxassist determines that the new volume
               is too small or large for the original layout.  If
               the new volume layout is inappropriate, the volume
               can be converted back using the  vxassist  convert
               command.  See Layout Specifications for a descrip-
               tion of the methods used to  determine  disk  lay-
               outs.

               Attributes can be specified  to  indicate  various
               desired  properties  for the new allocations.  Any
               mirroring constraints will still apply between all
               extensions  to  the existing mirrors and the other
               mirrors.  Growing of a volume  requires  that  the
               volume be enabled.

               No attempt will be made by vxassist to  adapt  the
               file  system  that resides on the volume (or other
               users of the volume).  It  is  expected  that  any
               necessary  application  notifications will be made
               after the grow operation completes successfully.

     help      Displays information on vxassist  usage  and  VxVM
               attributes.

     make      Create a volume with the specified  name  and  the
               specified  length.   The  length is specified as a
               standard Volume Manager length (see  vxintro(1M)).
               Attributes  can  be  specified to indicate various
               desired properties and storage locations  for  the
               created  volume.   See Layout Specifications for a
               description of the methods used to determine  disk
               layouts.

     maxgrow   Reports the maximum size a volume could grow given
               its  attributes  and given the free storage avail-
               able.

     maxsize   Reports the maximum size a volume could be created
               with  given the attributes specified and given the
               free storage available.

     mirror    Create a new mirror (or plex) and attach it to the
               volume.   This  operation  is  allowed only if the
               volume is enabled.  Attributes can be specified to
               indicate  various  desired  properties and storage
               locations for the created volume.  Attributes that
               constrain  mirroring  (such as requiring that mir-
               rors be on separate groups of disks) apply between
               the  existing  mirrors  of  the volume and the new
               mirror.

VxVM 3.0            Last change: 11 Dec 1998                    4

Maintenance Commands                                 vxassist(1M)

     move      Move subdisks within  the  named  volume  off  the
               excluded  storage  specified  on the command line.
               Excluded storage is specified with a prefix of  !.
               The  move  operation  requires  that  at least one
               excluded storage specification be given.

               If the volume is  enabled,  then  subdisks  within
               detached  or  disabled  plexes (or detached log or
               RAID-5 subdisks) will be moved without recovery of
               data.   If  the  volume is not enabled, then stale
               log or RAID-5 subdisks, or subdisks  within  STALE
               or OFFLINE plexes, will be moved without recovery;
               if there are other subdisks within  a  non-enabled
               volume  that  require moving, then the move opera-
               tion will fail.

               For enabled subdisks in enabled plexes  within  an
               enabled  volume,  the data within subdisks will be
               moved to the new location, without loss of availa-
               bility (or redundancy) of the volume.

     relayout  Change a volume layout or properties.  This opera-
               tion  changes the number of columns in a stripe or
               the stripe width of a volume.  It also converts  a
               volume   to  or  from  RAID-5,  mirrored,  concat-
               mirrored, striped, or any similar layout.

               During the relayout process, a volume may also  be
               converted  into an intermediate layout.  For exam-
               ple, to convert from a 4-column mirror-stripe to a
               5-column   mirror-stripe,   the  volume  is  first
               changed to a stripe-mirror before the  new  column
               is added.

               To change volume  vol1  from  a  4-column  mirror-
               stripe to a 5-column mirror-stripe, enter:

                    vxassist relayout vol1 ncol=5
                    vxassist convert vol1 layout=mirror-stripe

               To change volume  vol1  from  a  4-column  stripe-
               mirror to a 5-column stripe-mirror, enter:

                    vxassist relayout vol1 ncol=5

               If you view the volume with  vxprint  during  this
               layout conversion, the volume shows several subvo-
               lumes that are used during the change, and a  more
               complex configuration than usual.

               After the new column is added the  volume  remains
               in   the   stripe-mirror  layout.   You  must  use

VxVM 3.0            Last change: 11 Dec 1998                    5

Maintenance Commands                                 vxassist(1M)

               vxassist convert to  convert  back  to  a  mirror-
               stripe layout.

               Note: If the  system  crashes  during  a  relayout
               operation,  the process continues. However, if the
               relayout was a two-stage operation, you must run a
               vxassist  convert  command  to convert back to the
               original layout.

     remove    Depending on the next keyword (volume, mirror,  or
               log),  vxassist  deletes the entire volume, one or
               more mirrors, or one or more logs. When deleting a
               mirror  or a log, the storage to be removed can be
               specified with the ! attribute.  The alloc=, nmir-
               ror=,  and  nlog=  are  also used to determine the
               number of mirrors or  logs  to  remove.  When  the
               number  of  mirrors  drops  to  1,  logs  are also
               removed. By default, vxassist removes 1 mirror  or
               1 log.

     shrinkby | shrinkto
               Decrease the length of the  named  volume  to  the
               length  specified  by  newlength (shrinkto), or by
               the length specified by  lengthchange  (shrinkby).
               The new length or change in length is specified as
               a   standard   Volume    Manager    length    (see
               vxintro(1M)).  The shrinkto operation fails if the
               new length is not less  than  the  current  volume
               length.

               The length of a volume is  decreased  by  removing
               and  shortening  subdisks  to leave each plex with
               the desired volume length.  The  freed  space  can
               then  be  allocated  for  use  by  other  volumes.
               Log-only plexes are left unchanged.

               When a volume is shrunk, the volume  may  be  con-
               verted  from  one  layout  to  another  as  a side
               effect.   For  example,  a  volume  that  has  the
               mirror-stripe  layout  may be converted to stripe-
               mirror when it is shrunk.  This kind of conversion
               is done if vxassist determines that the new volume
               is too small or large for the original layout.  If
               the new volume layout is inappropriate, the volume
               can be converted back using the  vxassist  convert
               command.  See Layout Specifications for a descrip-
               tion of the methods used to  determine  disk  lay-
               outs.

               No attempt will be made by vxassist to  adapt  the
               file  system  that resides on the volume (or other
               users of the volume).  It  is  expected  that  any

VxVM 3.0            Last change: 11 Dec 1998                    6

Maintenance Commands                                 vxassist(1M)

               necessary  application  notifications will be made
               before the shrink operation is initiated.

     snapabort When a snapstart  mirror  has  been  started  (and
               eventually  completed),  the snapabort can be used
               to remove the mirror snapshot.

     snapstart and snapshot
               Create a temporary mirror and  attach  it  to  the
               named volume.  When the attach completes, the mir-
               ror will be considered a candidate  for  selection
               by the snapshot operation.  The snapshot operation
               takes one of these attached temporary mirrors  and
               creates  a new volume with the temporary mirror as
               its one plex.   Attributes  can  be  specified  to
               indicate  desired  properties of the snapshot mir-
               ror.

               Some usage types will attempt to  synchronize  any
               in-memory data associated with the volume (such as
               unwritten  file  system  modifications)  when  the
               snapshot operation is done.  In particular, if the
               fsgen usage type is used with a volume  containing
               a  VxFS  file  system, then cooperating procedures
               ensure that all file system data  is  consistently
               flushed  to  the  volume. For ufs and s5, the syn-
               chronization operation consists of a call to sync,
               which  will  make the snapshot a better image, but
               which may leave some inconsistencies  between  in-
               memory  file  system data and the data residing on
               the backup image.

     snapwait  If a snapstart mirror attach is done  as  a  back-
               ground  task (such as using the -b option), it may
               be convenient to wait for an  attached  mirror  to
               become  available.   The  snapwait operation waits
               for such  an  attach  to  complete  on  the  named
               volume.  When a snapshot attach has completed, the
               operation exits.

OPTIONS
     -b        Perform extended  operations  in  the  background.
               This  applies  to plex consistency recovery opera-
               tions for vxassist make, growto, and growby.  This
               flag   also  applies  to  plex  attach  operations
               started by vxassist  mirror,  vxassist  snapstart,
               and  to  Relayout  operations  started by vxassist
               Relayout.

     -d defaults
               Specify a file  containing  defaults  for  various
               attributes  related  to  volume creation and space

VxVM 3.0            Last change: 11 Dec 1998                    7

Maintenance Commands                                 vxassist(1M)

               allocation.  If not specified,  this  defaults  to
               /etc/default/vxassist.

     -f        Forces operations not usually allowed by vxassist.

     -g diskgroup
               Specify the disk group for the  operation,  either
               by  disk  group  ID  or  by  disk  group name.  By
               default, the disk group is  chosen  based  on  the
               medianame  operands (if any) for the vxassist make
               operation, or based on the volume operands for all
               other operations.

     -n        Do not read the system defaults file.

     -o useopt Pass in usage-type-specific options to the  opera-
               tion.  A certain set of operations are expected to
               be implemented by all usage types:

               slow[=iodelay]
                         Reduce the system performance impact  of
                         copy  operations.   Copy  and  plex con-
                         sistency recovery operations are usually
                         a  set  of  short  operations  on  small
                         regions of the volume (normally from  16
                         kilobytes   to   128  kilobytes).   This
                         option  inserts  a  delay  between   the
                         recovery   of   each   such  region.   A
                         specific delay  can  be  specified  with
                         iodelay  as a number of milliseconds, or
                         a default is chosen (normally  250  mil-
                         liseconds).

               iosize=size
                         Perform copy and recovery operations  in
                         regions  with  the  length  specified by
                         size, which is a standard Volume Manager
                         length number (see vxintro(1M)).  Speci-
                         fying a larger number  typically  causes
                         the  operation  to  complete sooner, but
                         with greater impact on  other  processes
                         using  the volume.  The default I/O size
                         is typically between 32  and  128  kilo-
                         bytes.

     -p        For use with maxsize and maxgrow. Prints only  the
               maximum size with no text wrappers.

     -r        Tells vxassist to include  the  spare  disks  (the
               disks reserved for relocation) in the calculation.

     -t tasktag

VxVM 3.0            Last change: 11 Dec 1998                    8

Maintenance Commands                                 vxassist(1M)

               If any tasks are registered to track the  progress
               of  an  operation, mark them with the tag tasktag.
               This option is passed to utilities called by vxas-
               sist,  so  any  child  tasks  are also tagged with
               tasktag.

     -U usetype
               Limit the operation to apply to this  usage  type.
               Attempts  to affect volumes with a different usage
               type will fail.  For a  vxassist  make  operation,
               this  indicates  the  usage  type  to  use for the
               created volume.  Otherwise, the  default  is  used
               and  is determined by the existence of an entry in
               the /etc/default/vxassist file or else is  set  to
               the fsgen usage type.

     -v        Traces calls to other utilities to determine which
               VxVM commands vxassist is executing.

ATTRIBUTES
     Attribute values for various purposes can be specified  with
     arguments  of the form attribute=value.  Attributes can also
     be passed in through a  defaults  file.   Default  attribute
     values can be stored in the file /etc/default/vxassist.

     Attributes are selected according to the order in which they
     are scanned.  In general they are taken in decreasing prior-
     ity of being specified on:

          1. The command line.

          2. The specified defaults file (as supplied with the -d
             command line argument).

          3. The  system   defaults   file   (as   specified   in
             /etc/default/vxassist).

     Attributes from all sources have the same form.  However, in
     some cases, command-line attributes change default behaviors
     in ways that defaults-file supplied attributes do  not.   In
     particular,  references  to  mirroring (such as specifying a
     mirror count) or logging (such as specifying a log count  or
     length)  on the command line will cause mirroring or logging
     to happen by default.  If such attributes are specified in a
     defaults  file,  then they just indicate the attributes that
     would be used if mirroring or logging were enabled.

     Attributes  are  either  storage  specifications   (possibly
     negated), or are in the form attribute=value.  In a defaults
     file, attributes are whitespace separated or are on separate
     lines.  Blank lines in a defaults file are ignored, and com-
     ments can be included with the standard # convention.

VxVM 3.0            Last change: 11 Dec 1998                    9

Maintenance Commands                                 vxassist(1M)

Storage Specifications
     Storage specification attributes have one of  the  following
     forms:

     [!]diskname
               Specify (or exclude)  the  given  disk.   diskname
               refers  to  a  disk  media record name in a Volume
               Manager disk group.

     [!]diskclass:instance
               Specify (or exclude) a set  of  disks.   diskclass
               names  a  particular  type  of  disk grouping (for
               example, ctlr to indicate groups  of  disks  on  a
               single  controller),  and instance specifies which
               grouping of that type (for example c1).  Each type
               of disk class has a particular format for specify-
               ing instances of the class.

     diskclass:same
               Specify that the allocation must be constrained to
               include  disks from the same instance of the given
               class.  For example, a  storage  specification  of
               diskparam:same  indicates  that all disks selected
               must have the same  basic  parameters  (tracksize,
               cylinder  size, size, and revolutions-per-minute),
               but does not specify which specific parameters  to
               use.

     The defined disk classes (and alternate names,  or  aliases,
     for those classes) are as follows:

     ctlr (alias c, ctrl, cntrl, controller)
               Specify disks from a particular  controller.   The
               controller  is  identified in the form c#, where #
               is a decimal controller number starting at 0.

     ctype (alias ctlrtype, ctrltype, controllertype)
               Specify disks  from  a  particular  type  of  con-
               troller.   The controller type is usually a driver
               name.  For example, on Sun machines,  the  regular
               SCSI   controller   type   can  be  identified  as
               ctype:esp.  As a special  case,  the  SPARCstorage
               Array controller type is specified as ctype:ssa.

     da        Specify a specific Volume  Manager  disk  by  disk
               access  record  name.  An example of a disk access
               record name is  c2t1d0s2, which indicates  a  spe-
               cial  Volume  Manager  disk  defined on slice 2 of
               c2t1d0s2.

     device (alias d)
               Specify all Volume Manager  disks  on  a  specific

VxVM 3.0            Last change: 11 Dec 1998                   10

Maintenance Commands                                 vxassist(1M)

               physical  disk.  The physical disk is specified in
               the form c#t#d#, which indicates  the  controller,
               target,  and  disk  numbers.   Normally,  only one
               Volume Manager disk device  is  created  for  each
               physical  disk.  However, the vxdisk define opera-
               tion (see vxdisk(1M)) can be used to create  addi-
               tional  Volume  Manager  disk  devices on selected
               partitions.

fied
     Specify disks with a particular geometry.  The geometry is speci-
               in  the  form  cyls.heads.sectors, to indicate the
               number of cylinders, heads, and sectors per track,
               of  the  disk.   Many  modern drives have variable
               geometries (or geometries that don't fit the stan-
               dard  conventions).  For such drives, the geometry
               parameters used are whatever the drive reports.

     diskparam Specify disks  with  particular  parameters.   The
               parameters    are    specified    in    the   form
               cyls.heads.sectors.rpm,  to  indicate   cylinders,
               heads,  sectors per track, and the number of revo-
               lutions per minute of  the  drive.   As  with  the
               diskgeom parameter, the instances of the diskparam
               disk class depend upon the values reported by  the
               drive, and may not be accurate.

     diskrpm (alias rpm)
               Specify disks with a particular number of  revolu-
               tions  per  minute.  The revolutions per minute is
               given as a simple decimal number.

     dm (alias disk)
               Specify a Volume Manager disk by disk media record
               name, in the disk group of the volume.  Specifying
               a disk class type of dm or disk is  equivalent  to
               giving  a storage specification with no disk class
               name.

     probe_granularity
               The  granularity  is  a  result  of  the   maxsize
               request. The default value is 1M.

     target (alias t)
               Specify disks on the same SCSI target  address  in
               the  same  controller.  The target is specified in
               the form c#t#.  For example, t:c2t4 selects  disks
               on target 4 of controller 2.

     tray      Specify disks in  the  same  removable  tray  (for
               SPARCstorage  Array  controllers).   Trays  in the
               SPARCstorage Array are grouped as two SCSI targets

VxVM 3.0            Last change: 11 Dec 1998                   11

Maintenance Commands                                 vxassist(1M)

               per  tray (for example, targets 0 and 1 are in the
               same tray).   Trays  are  specified  in  the  form
               c#tray#,   where   c#   identifies   a  particular
               SPARCstorage Array controller  and  tray#  is  the
               number  of  a  tray (0 for SCSI targets 0 and 1, 1
               for targets 2 and 3, or 2 for targets  4  and  5).
               For example, c2tray2 selects disks in tray 2 (tar-
               gets 4 and 5) of controller 2.

     The diskgeom and diskparam attributes are most often  useful
     in  the  form  diskgeom:same and diskparam:same, to indicate
     that all disks used for creating a volume should be on simi-
     lar disk drives.

Other Attributes
     Other attributes are of the form attribute=value. The attri-
     bute  name  in  an attribute value pair will never contain a
     colon, so it is possible to specify a disk that has an equal
     sign   in   its   name   using   the  storage  specification
     dm:disk01=a.  Without the dm: prefix, disk01=a  would  yield
     an error indicating an unrecognized attribute.

     Defined attributes (and common aliases) are:

     alloc=storage-spec[,storage-spec,...]
               This is provided as an alternate syntax for speci-
               fying  storage as single attributes.  It is useful
               in  a  defaults  file,  so  that  all   attributes
               (including  storage specifications) will be in the
               attribute=value format.   Any  number  of  storage
               specifications can be specified, separated by com-
               mas.  More than one alloc attribute can be  speci-
               fied,  in  which  case  they  are  logically  con-
               catenated to form one longer list.

     comment=comment
               Specify a comment to give to a volume when  it  is
               created.   This  comment  can  be  displayed  with
               vxprint -l, and can be changed, at a  later  time,
               with vxedit set.  This attribute is used only with
               the make operation.

     diskgroup=disk-group (alias: dg)
               Specify the disk group for  an  operation.   If  a
               disk  group  is specified in a defaults file, then
               it just specifies the default disk  group  to  use
               for  the  make  operation,  if  no  other means of
               determining the disk group can be used.  If speci-
               fied  as a command line attribute, it has the same
               effect as specifying a  disk  group  with  the  -g
               option  (the  operation  is forced to apply to the
               given disk group).

VxVM 3.0            Last change: 11 Dec 1998                   12

Maintenance Commands                                 vxassist(1M)

     excl=yes|y|on|true|no|n|off|false
               Sets or clears the EXCLUSIVE flag on  the  volume.
               A  volume in exclusive open state can be opened by
               only one node in the cluster at a  time.  Multiple
               opens  of  an  exclusive volume from the same node
               are  permitted.   Non-exclusive  volumes  can   be
               simultaneously  opened  by  more  than  one  node.
               After a node  opens  an  exclusive  volume,  every
               other  node's  open  attempt  fails until the last
               close of the volume by the first opener.  Such  an
               open  failure  returns a EBUSY error code.  Avail-
               able only with Cluster Volume Manager.

     fstype=file-system-type
               Specify the file system  type  for  a  new  volume
               (this  is used only with the make operation).  The
               file system type for a volume  is  usually  deter-
               mined  when  needed  by  running the fstyp utility
               (see fstyp(1M)), but can be specified  explicitly.
               The  file  system  type parameter is used with the
               Volume Manager vxresize utility, as well  as  with
               volume  snapshots,  copies,  and  dissociates  (to
               select features that are  used  with  the  VERITAS
               VxFS file system).

               The file system type can be changed at  any  later
               time with the vxedit set operation.

     group=owning-group
               Set the group ID for a new volume.  The  group  ID
               can  be  specified  numerically  or  with a system
               group name.  This attribute is used only with  the
               make  operation.   By default, volumes are created
               with group 0.

     init=initialization-type
               Specify the means for initializing a  new  volume.
               The  default  method (which can be selected expli-
               citly with init=default) is to call vxvol start to
               do  a  usage-type-specific  default initialization
               operation.  A new volume can be left uninitialized
               with  init=none.  The most useful non-default ini-
               tialization that can be specified is init=zero, to
               clear  the  volume  before enabling it for general
               use.

     layout=layout-spec[,layout-spec,...]
               Specify a volume or plex layout type (RAID-5, mir-
               rored,  unmirrored,  striped, cylinder alignment),
               and turn on or off some  features  (such  as  log-
               ging).  The list of layout specifications is given
               in the  next  section.   By  default,  unmirrored,

VxVM 3.0            Last change: 11 Dec 1998                   13

Maintenance Commands                                 vxassist(1M)

               non-striped volumes are created with no log.

     loglen=length
               Specify a log length to use for  dirty-region  log
               subdisks  for  mirrored  volumes or for RAID-5 log
               plexes.  If a log length is specified on the  com-
               mand   line,  then  logging  will  be  enabled  by
               default.

     logtype=drl|region|none
               Specify the logging type for  a  mirrored  volume.
               Dirty region logging (the default) can be selected
               with either logtype=drl or  logtype=region.   Log-
               ging can be disabled altogether with logtype=none.

     max_nraid5column=number
               (alias:     maxraid5columns,      max_nraidcolumn,
               max_nraid5stripe, max_nraidstripe, maxraidcolumns,
               maxraid5stripes,   maxraidstripes)   Specify   the
               default  maximum  number  of  stripe columns for a
               RAID-5 volume (default value is 8). The rules  for
               selecting  the  default  number  of  RAID-5 stripe
               columns are described in the nstripe attribute.

     max_ncolumn=number (alias: maxcolumns, max_nstripe, maxstripes)
               Specify  the  default  maximum  number  of  stripe
               columns,  either   for   a   RAID-5   volume   (if
               max_nraid5stripe  is  not also specified) or for a
               striped plex (default value is 8).  The rules  for
               selecting  the default number of stripe columns is
               described in the nstripe attribute.

     max_regionloglen=length (alias: maxregionloglen)
               Specify the maximum default dirty  region  logging
               log  subdisk length.  If the user does not specify
               the dirty region log length  for  a  volume,  when
               creating  the  first  log  for  a mirrored volume,
               vxassist uses a simple formula based  on  the  log
               length.  The default length will not be bounded by
               max_regionloglen (default value is 32K).

     min_nraid5column=number
               (alias:      minraid5columns      min_nraidcolumn,
               min_nraid5stripe, min_nraidstripe, minraidcolumns,
               minraid5stripes,   minraidstripes)   Specify   the
               default  minimum  number  of  stripe columns for a
               RAID-5 volume (default value is  3).   The  policy
               for  selecting  a  default number of RAID-5 stripe
               columns will not be allowed  to  create  a  RAID-5
               volume  with  fewer  than  min_nraid5stripe stripe
               columns.

VxVM 3.0            Last change: 11 Dec 1998                   14

Maintenance Commands                                 vxassist(1M)

     min_nstripe=number (alias: minstripes)
               Specify  the  default  minimum  number  of  stripe
               columns   for   either   a   RAID-5   volume   (if
               min_nraid5stripe is not also specified) or  for  a
               striped plex (default value is 2).  The policy for
               selecting a default number of stripe columns  will
               not be allowed to select fewer than this number of
               columns.

     mirror= +/- number|yes|no|diskclass[,...]
               Specify various  mirroring  parameters.   Multiple
               mirroring  parameters can be given, each separated
               by a comma.  A decimal number indicates a specific
               number  of mirrors to create, when creating a mir-
               rored volume (equivalent to nmirror=number).   yes
               indicates  that  volumes  should  be  mirrored  by
               default (equivalent to layout=mirror).   no  indi-
               cates that volumes should be unmirrored by default
               (equivalent to layout=nomirror).

               Any  other  mirroring  parameters   specify   that
               volumes  should  be mirrored across instances of a
               particular disk class.  For example, mirror=target
               specifies  that volumes should be mirrored between
               SCSI target addresses.  Each  mirror  can  contain
               disks  from  any  number  of instances of the disk
               class, but different mirrors cannot use disks from
               the same instance of the disk class.

     mode=permissions
               Specify the permissions for the block and  charac-
               ter  device  nodes  created for a new volume.  The
               mode can be specified either as an octal number or
               symbolically.   A symbolic mode is specified using
               the syntax given in chmod(1).  This  attribute  is
               used  only  with  the make operation.  The default
               mode for a volume gives read and write access only
               to the owner.

     nlog= +/- number, (nlogs, logs)
               Specify the number of logs to create, by  default,
               for  a  RAID-5  or mirrored volume (presuming that
               logs will be created).   The  number  of  logs  to
               create  can  be specified independently for RAID-5
               or mirrored volumes using the nraid5log  and  nre-
               gionlog attributes.

     nmirror= +/- number, (nmirrors, mirrors)
               Specify the number of mirrors to create when  mir-
               roring a volume (default value is 2).

     nraid5log=number

VxVM 3.0            Last change: 11 Dec 1998                   15

Maintenance Commands                                 vxassist(1M)

               (alias: nraid5logs,  raid5logs,  nraidlog,  nraid-
               logs,  raidlogs)  Specify the number of log plexes
               to create for a new RAID-5 volume  (default  value
               is  1).  This attribute is used only with the make
               operation.

     nraid5stripe= +/- number
               (alias: raid5stripes,  nraid5column,  nraidstripe,
               raidstripes,       raidcolumns,       nraidcolumn,
               raid5columns) Specify the number of stripe columns
               to  use  when  creating  a  new RAID-5 volume (the
               default is  to  adjust  the  number  to  available
               disks).  This attribute is used only with make and
               relayout operations.  For the relayout  operation,
               the  default  is the same number of stripe columns
               the volume has. For the relayout, this  value  can
               be  preceded by a + or a - in order to add or sub-
               stract column(s).

     nregionlog=number (alias: nregionlogs, regionlogs, ndrl)
               Specify the number of log subdisks to create for a
               new  mirrored  volume  (default  value  1).   This
               attribute is used only with  the  make  operation,
               and only if logging is requested for the volume.

     nstripe= +/- number
               (alias: stripes, ncolumn, ncolumns,  ncol,  ncols,
               columns,   cols)  Specify  the  number  of  stripe
               columns to use when creating a new  RAID-5  volume
               (with  the  make  operation)  or  when  creating a
               striped plex (with the make, relayout, mirror, and
               snapstart  operations).   The default is to adjust
               to the number of available disks. For the relayout
               operation,  the  default  is  the  same  number of
               stripe columns the volume has. For  the  relayout,
               this  value can be preceded by a + or a - in order
               to add or substract column(s).

     raid5_stripeunit=width
               (alias:       raid5_stwidth,       raid5_st_width,
               raid5_stwidth, raid_st_width, raid_stripeunitsize,
               raid5_stripeunitsize,       raid5_stripeunitwidth,
               raid_stwid,     raid_stwidth,     raid_stripeunit,
               raid_stripeunitwidth) Specify the stripe unit size
               to  use when creating a new RAID-5 volume (default
               value is 16K).  This attribute is used  only  with
               the make operation.

     raid5loglen=length, (alias: raidloglen)
               Specify the log length  to  use  when  adding  the
               first log to a RAID-5 volume.  The default is four
               times the full stripe width (the stripe unit  size

VxVM 3.0            Last change: 11 Dec 1998                   16

Maintenance Commands                                 vxassist(1M)

               times the number of stripe columns).

     regionloglen=length, (alias: drlloglen, drllen)
               Specify the log subdisk length to use when  adding
               the  first  log subdisk to a mirrored volume.  The
               default is chosen based on a formula involving the
               volume length.

     stripe=diskclass[,...]
               Specify that  volumes  should  be  striped  across
               instances  of  a particular disk class.  For exam-
               ple, stripe=target specifies that  volumes  should
               be  striped  between  SCSI target addresses.  Each
               column  can  contain  disks  from  any  number  of
               instances of the disk class, but different columns
               cannot use disks from the  same  instance  of  the
               disk class.

     stripe_mirror_col_trigger_pt=size
               This size specification triggers the creation of a
               stripe-mirror  volume.   If the size of the volume
               is greater than the size specified in this  attri-
               bute, then a stripe-mirror volume is created.

     stripe_mirror_col_split_trigger_pt=size
               This size specification triggers the creation of a
               stripe-mirror-sd  volume.   If  the  size  of each
               column is greater than the size specified in  this
               attribute,   then  a  stripe-mirror-sd  volume  is
               created.

     stripe_stripeunit=width
               (alias:       stripe_stwid,        stripe_stwidth,
               stripe_st_width,            stripe_stripeunitsize,
               stripe_stripeunitwidth) Specify  the  stripe  unit
               size to use when creating striped plexes to attach
               to a volume.   When  attaching  a  new  plex,  the
               default is to use the same stripe unit size as any
               other striped plexes in the volume.  If the volume
               does  not  yet contain striped plexes, the default
               value is 64K.

     stripeunit=width
               (alias:  stwid,  stripewidth,  stwidth,  st_width,
               stripe_width,   stripeunitsize,   stripeunitwidth)
               Specify the stripe unit size to use for  either  a
               RAID-5  volume  or for striped plexes.  stripeunit
               can  be  used  to  set   the   values   for   both
               raid5_stripeunit and stripe_stripeunit.

     tmpsize=size
               Specify the space to be used as temporary  storage

VxVM 3.0            Last change: 11 Dec 1998                   17

Maintenance Commands                                 vxassist(1M)

               in order to perform a relayout operation.

     tmpalloc=storage-spec[,storage-spec,...]
               Specify a set of  desired  storage  specifications
               for the temporary storage required during a relay-
               out operation.  The format is the same as for  the
               alloc attribute (a comma-separated list of storage
               specifications).

     user=owning-user
               Specify the user ID  for  a  new  volume  (default
               value  is  root).   The  user  ID can be specified
               numerically or it can  be  a  system  login  name.
               This  attribute  is used only with the make opera-
               tion.

     usetype=volume-usage-type
               Specify the usage type to use when creating a  new
               volume (default value is raid5 for RAID-5 volumes;
               fsgen, otherwise).  This attribute  is  used  only
               with  the make operation.  The usage type can also
               be specified in the option list with -U.

     wantalloc=storage-spec[,storage-spec,...]
               Specify a set of desired  storage  specifications.
               This  is  useful  in  a  defaults file to indicate
               desired storage specifications that should be dis-
               carded  if  they fail to yield a reasonable set of
               allocations.  The format is the same  as  for  the
               alloc attribute (a comma-separated list of storage
               specifications).

               For example, a defaults file can name  a  specific
               controller  type to use for allocations, if possi-
               ble.  As soon as all disks on that  type  of  con-
               troller are full, other controllers will be used.

     wantmirror=diskclass[,diskclass,...]
               Specify a desired list  of  disk  class  mirroring
               specifications.  This is useful in a defaults file
               to indicate a set of desired mirroring constraints
               that  can  be dropped if they fail to yield a rea-
               sonable set of allocations.

               For example, a  defaults  file  can  specify  that
               volumes  should  be mirrored between disks on dif-
               ferent controllers in the system.   Then,  if  the
               set  of volumes builds up in such a way that a new
               volume  cannot  be  mirrored  across  SPARCstorage
               Array trays, this constraint will be dropped.

     wantstripe=diskclass[,diskclass,...]

VxVM 3.0            Last change: 11 Dec 1998                   18

Maintenance Commands                                 vxassist(1M)

               Specify a desired list  of  disk  class  stripping
               specifications.  This is useful in a defaults file
               to indicate a set of desired stripping constraints
               that  can  be dropped if they fail to yield a rea-
               sonable set of allocations.

               For example, a  defaults  file  can  specify  that
               volumes  should  be  striped between disks on dif-
               ferent controllers in the system. Then, if the set
               of  volumes  builds  up  in  such a way that a new
               volume cannot be striped across SPARCstorage Array
               trays, this constraint will be dropped.

Layout Specifications
     The layout attribute specifies  a  comma-separated  list  of
     simple parameters (with no arguments) that apply to vxassist
     operations.

     Two new layouts were added in  the  3.0  release  of  Volume
     Manager:   stripe-mirror  and  concat-mirror.   In  previous
     releases, whenever mirroring was used, the mirroring had  to
     happen  above  striping  or concatenation.  Now there can be
     mirroring both above and below striping and concatenation.

     Putting mirroring below striping mirrors each column of  the
     stripe.  If the stripe is large enough to have multiple sub-
     disks per column, each subdisk can be individually mirrored.
     A similar concatenated volume would also mirror each subdisk
     individually.  These  new  layouts  enhance  redundancy  and
     reduce  recovery  time  in  case  of an error.  In a mirror-
     stripe layout, if a disk fails, the entire plex is detached,
     thereby  losing  redundancy  on the entire volume.  When the
     disk is replaced, the entire plex  must  be  brought  up  to
     date.   Recovering  the  entire  plex can take a substantial
     amount of time.  If a disk fails in a stripe-mirror  layout,
     only  the  failing  subdisk  must be detached, and only that
     portion of the volume loses redundancy.  When  the  disk  is
     replaced,   only  a  portion  of  the  volume  needs  to  be
     recovered.

     The new volume layouts  are  more  complex  than  the  older
     volume layouts.  Because the advantages of recovery time and
     improved redundancy are more important for  larger  volumes,
     it is best to continue using mirror-stripe and mirror-concat
     for most volumes and  only  use  stripe-mirror  and  concat-
     mirror for very large volumes.

     You can specify layout=mirror-stripe or layout=stripe-mirror
     to   implement   the   desired   layout.    If  you  specify
     layout=mirror-stripe, vxassist automatically determines  the
     best  layout  for  the  volume.  Unless there is a reason to
     implement a particular layout, it is best  to  let  vxassist

VxVM 3.0            Last change: 11 Dec 1998                   19

Maintenance Commands                                 vxassist(1M)

     create  the  layout for each volume.  Because the advantages
     of the new layouts are related to the size  of  the  volume,
     vxassist  creates  the  simplest  configuration  for smaller
     volumes  and  the  more  complex  stripe-mirror  for  larger
     volumes.

     The     attributes     stripe_mirror_col_trigger_pt      and
     stripe_mirror_col_split_trigger_pt  control  the  selection.
     They can be set in /etc/default/vxassist. Volumes  that  are
     smaller  than  stripe_mirror_col_trigger_pt  are  created as
     mirror-stripe, and volumes that are larger  are  created  as
     stripe-mirror.   If  vxassist  creates the stripe-mirror and
     the         columns         are         larger          than
     stripe_mirror_col_split_trigger_pt,  the individual subdisks
     are mirrored instead of mirroring the columns of the stripe.
     By  default,  both  of these attributes are set to one giga-
     byte.

     The diskgroup must be created on a 3.0 or later  release  to
     use  the  new  layouts, but older diskgroups can be updated.
     See the vxdg upgrade command for more information on upgrad-
     ing diskgroups.

     Defined layout specifications are:

     mirror, nomirror, raid5
               New  volumes  should   be   mirrored,   unmirrored
               (default),  or  RAID-5,  respectively. For mirror,
               The  attributes  stripe_mirror_col_trigger_pt  and
               stripe_mirror_col_split_trigger_pt are applied.

     mirror-stripe
               New volumes should be mirrored  and  striped.  The
               mirroring  is done at the volume level. The attri-
               butes       stripe_mirror_col_trigger_pt       and
               stripe_mirror_col_split_trigger_pt   are   ignored
               with this layout.

     mirror-concat
               New volumes should be mirrored. The  mirroring  is
               done   at   the   volume  level.   The  attributes
               stripe_mirror_col_trigger_pt                   and
               stripe_mirror_col_split_trigger_pt   are   ignored
               with this layout.

     stripe, nostripe
               New plexes should be striped or unstriped, respec-
               tively.   When  creating a new volume, the default
               is nostripe.  When adding a new plex to an  exist-
               ing  volume,  the  default is stripe if the volume
               already has one or more striped plexes,  and  nos-
               tripe  in  other  cases. For stripe (when combined

VxVM 3.0            Last change: 11 Dec 1998                   20

Maintenance Commands                                 vxassist(1M)

               with        mirror,         The         attributes
               stripe_mirror_col_trigger_pt                   and
               stripe_mirror_col_split_trigger_pt are applied.

     stripe-mirror
               New volumes should be striped  and  mirrored.  The
               mirroring  is handled at each column level or sub-
               disk   level   depending    on    the    attribute
               stripe_mirror_col_split_trigger_pt.

     stripe-mirror-col
               New volumes should be striped  and  mirrored.  The
               mirroring  is  handled  at  each column level. The
               attributes    stripe_mirror_col_trigger_pt     and
               stripe_mirror_col_split_trigger_pt   are   ignored
               with this layout.

     stripe-mirror-sd
               New volumes should be striped  and  mirrored.  The
               mirroring is handled at each a subdisk level.

     concat-mirror
               New volumes should be concatenated  and  mirrored.
               The  mirroring is handled at each a subdisk level.
               The  attribute  stripe_mirror_col_split_trigger_pt
               is applied.

     span, nospan
               Allow (default) or disallow plexes, regular stripe
               columns,  or  RAID-5  stripe columns from spanning
               multiple disks.   If  nospan  is  indicated,  then
               plexes  or  columns  can  be  formed from multiple
               regions of the same disk,  but  cannot  be  formed
               from more than one disk.

     contig, nocontig
               Disallow or allow (default) plexes, regular stripe
               columns,  or RAID-5 stripe columns from using mul-
               tiple regions of disk.  If  contig  is  specified,
               then  plexes  and columns must be allocated from a
               single contiguous region of disk.  If this is  not
               possible, the allocation fails.  By default, vxas-
               sist tries to  allocate  space  contiguously,  but
               will  use  multiple  regions  or multiple disks if
               needed.

     log, nolog
               Create (or don't create) dirty  region  logs  (for
               mirrored   volumes)  or  log  plexes  (for  RAID-5
               volumes) when creating a new volume.  This  attri-
               bute  can  be specified independently for mirrored
               and RAID-5 volumes with the raid5log and regionlog

VxVM 3.0            Last change: 11 Dec 1998                   21

Maintenance Commands                                 vxassist(1M)

               layout specifications.

     grow, nogrow
               Allows a volume to grow during a  relayout  opera-
               tion.

     shrink, noshrink
               Allows a volume to shrink during a relayout opera-
               tion.

     raid5log, noraid5log
               Create (default) or don't create  log  plexes  for
               RAID-5 volumes.

     regionlog, noregionlog
               Create or don't create (default) dirty-region  log
               subdisks for mirrored volumes.

     diskalign, nodiskalign
               Align  (default)  or  don't  align   subdisks   on
               cylinder  boundaries.   When alignment is not dis-
               abled, subdisks are created beginning on  cylinder
               boundaries  and are extended to match the end of a
               cylinder.  Dirty region log subdisks, however, are
               not cylinder aligned (they are usually only 2 or 3
               blocks long).  Instead,  when  creating  log  sub-
               disks, spaces are located from the available disks
               that could not be  turned  into  regular  subdisks
               because  the  spaces aren't cylinder aligned.  For
               example, once one cylinder is used for a log  sub-
               disk,  that  cylinder  cannot be used to create an
               aligned data (or RAID-5 log) subdisk, so other log
               subdisks will be created there until that cylinder
               fills up.

FILES
     /etc/default/vxassist         System default  settings  file
                                   for vxassist attributes.

EXIT CODES
     The vxassist utility exits with  a  nonzero  status  if  the
     attempted  operation  fails.   A  nonzero exit code is not a
     complete indicator of the problems encountered,  but  rather
     denotes the first condition that prevented further execution
     of the utility.

     See vxintro(1M) for a list of standard exit codes.

SEE ALSO
     chmod(1),  fstyp(1M),  sync(1M),  vxedit(1M),   vxintro(1M),
     vxmake(1M),    vxmend(1M),    vxplex(1M),    vxrelayout(1M),
     vxresize(1M), vxsd(1M), vxtask(1M), vxvol(1M)

VxVM 3.0            Last change: 11 Dec 1998                   22

#  

