unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Page:
Section:
Apropos / Subsearch:
optional field



volmake(4)							   volmake(4)



NAME

  volmake - Format of a	volmake	description file

DESCRIPTION

  Descriptions of configuration	records	can be given to	the volmake utility
  either on the	command	line or	in a file. Descriptions	given on the command
  line can specify only	one new	record.	Descriptions given in a	description
  file can specify more	than one record. The description file format is	a
  convenient way of indicating record contents for other uses as well. For
  example, the volprint	utility	can print records in this format to provide
  input	to a shell or awk script that can be more easily parsed	than other
  verbose formats.

  In many places within	the utility set	where a	user can specify a field name
  and a	value, a format	is used	that specifies only one	configuration field,
  rather than complete configuration records.

  Record Description Format


  The volmake description files	specify	configuration records, one after
  another. Each	record description specifies a record type, name, and zero or
  more fields.

  The record type is a single keyword from the set vol,	plex, sd, dm, or dg,
  to indicate a	volume,	plex, subdisk, disk media, or disk group record,
  respectively.	The record name	must be	specified on the same line as the
  record type keyword.

  The volmake utility does not take disk media or disk group record descrip-
  tions	on input. The volprint utility can print descriptions of disk media
  and disk group records in this format	though.

  Fields are specified as a field name and a field value separated by a	sin-
  gle =	character. A record description	can span more than one line if its
  continuation lines begin with	a character that is a space or tab. Empty
  lines	are ignored and	do not end a record description.

  Comments can be included in a	record description. A comment is introduced
  with the character #,	either at the beginning	of a line, or after a blank
  that is not used as part of a	field value. Comments continue until the next
  new line character or	until the end-of-file.

  A field specification	normally ends with the next white-space	character.  A
  field	can be extended	until the end of a line	by preceding the field value
  with one double-quote	character ("). Such quoted strings extend until	the
  next newline,	rather than until a double quote. This makes volmake descrip-
  tions	easier to generate within shell	scripts.

  The following	example	shows a	valid configuration file:

       vol v1 usetype=gen      # simple	gen volume with	no plexes
       plex p1		       # plex with no subdisk
       plex p2 sd=s1,s2	       # striped plex with two subdisks
			       # and a comment
	       comment="This is	a comment
	       layout=stripe stwidth=64k

       vol v1 use_type=gen
       plex p2 sd=s3:16384     # free plex with	hole at	beginning

       # subdisks
       sd s1 disk=disk01 len=1g+512m  offset=0
       sd s2 disk=disk02 len=512m-1   offset=0
       sd s3 path=disk03 len=32768    offset=512m-1

  Field	Description Format


  Sometimes a utility gets field descriptions from somewhere other than	a
  volmake description file and uses that field description to set a field in
  a volume, plex, or subdisk record. In	these cases, the utility itself	has a
  quoting convention for separating one	field from another. An example of a
  utility that does this is voledit.

  The voledit utility takes field descriptions from the	command	line. For
  example, the following voledit command sets a	comment	for the	record named
  v1:

       voledit set comment="Henry \"Hank\" Finglestein's volume" v1

  Shell	quoting	conventions are	sufficient to allow for	double quotes and
  spaces, so quoting conventions are not defined for these simple field
  descriptions.

FIELDS

  Within volmake description files any volume, plex, or	subdisk	field can be
  specified. However, some field settings are ignored.	This allows a user to
  use a	command	such as	the following:

       "volprint -hm v1"

  This command gets a set of record descriptions that can be fed back into
  volmake, possibly with some changes. If this is done,	then any field that
  cannot be set	is ignored, but	the resulting record hierarchy,	plex layout,
  and subdisk offsets are the same, along with most or all fields that are
  normally administrator-definable.

  Different fields have	different properties with respect to the description
  language. The	classes	of fields are as follows:

  name
      A	record name field can be an arbitrary string of	up to fourteen char-
      acters. However, a name cannot contain a null byte, white-space charac-
      ters, or the character /.

  string
      Other types of string fields can contain any characters other than a
      null byte	or a newline. Different	string fields have different length
      restrictions.

  boolean
      Boolean fields contain a truth value. The	value for a Boolean field can
      be either	off or on. Alternately,	yes or no, or true or false can	be
      used.  volprint prints truth values as on	or off.

  length-number
      Fields which define object sizes of some type, such as volume lengths,
      plex offsets, or stripe widths, have the syntax of standard Logical
      Storage Manager length numbers, as defined in volintro(8). This syntax
      consists of one or more numbers separated	by + or	- to indicate addi-
      tion or subtraction.

      Each separate number in the string can have a prefix of 0x to indicate
      that the number is in hexadecimal, or a prefix of	0 to indicate octal.
      Suffix characters	can be used to specify the unit	for the	number.
      Defined suffixes are: b for 512-byte blocks, s for standard system sec-
      tors, k for kilobytes, m for megabytes, and g for	gigabytes. Suffix
      letters can be specified either upper case or lower case.

      The size of a sector is system dependent.	On most	systems	it is 512
      bytes, the same as blocks. On systems that support disks with differing
      sector sizes, one	standard sector	size is	chosen as the standard.

      The unit for a number is in sectors by default.  volprint	prints length
      numbers as a decimal number of sectors, with no unit suffix.

      Because b	and B are valid	digits in a hexadecimal	number,	a single
      space must be used to separate the hexadecimal number from the suffix.
      Double quotes are	not necessary in Record	Description Format, unlike
      the rules	for string-valued fields that contain spaces.

      Unless otherwise indicated, all length numbers must be greater than or
      equal to zero.

  simple-number
      Simple numbers are used for counts or for	other purposes besides
      representation of	a length of offset. Simple numbers can be specified
      in decimal (default), hexadecimal, or octal using	the 0x or 0 prefixing
      convention. No suffixes or arithmetic are	defined	for simple numbers.

  device-number
      Device numbers define the	major and minor	number of a device.  These
      numbers are in the form major-number.minor-number	where major-number
      and minor-number are both	simple numbers.	In some	cases, the device
      number will be NODEV, indicating that the	device number is undefined.

  enumeration
      An enumeration field can be set to one of	a set of symbolic values. The
      set of symbolic values for enumeration fields are	specified in the
      field descriptions below.	The enumeration	fields are listed in this
      manual page in upper case. These enumeration constants can be given as
      input in either all upper-case letters, or all lower-case	letters.

  record ID or sequence	number
      These are	values assigned	to records or to configuration changes,
      respectively. The	record ID assigned to a	record is guaranteed to	be
      unique within that disk group. Also, that	record ID will never be
      reused if	the record is deleted.

      Every time the configuration of a	disk group is updated, the configura-
      tion update sequence number is increased.	The configuration update
      sequence number only increases; it never decreases. This can be used to
      determine	the order in which records were	changed, or as a quick test
      for what has changed since a known time in the past.

      Record IDs and sequence numbers have the form high-part.low-part,	where
      both high-part and low-part are simple unsigned numbers.

      Some additional one-of-a-kind field types	also exist. These are
      described	in the description for the corresponding field.

      Many fields have aliases that can	be used	in volmake descriptions. In
      all cases, the volprint -m format	uses the first name given for each
      field. However, alias field names	can be used in format strings speci-
      fied to volprint with the	-F option. All field names containing under-
      scores have an alias that	is identical but lacks the underscores.	For
      example, start_opts has an alias of startopts.

  Volume Record	Fields


  These	are the	fields that can	be used	for specifying volume records:

  rid The record ID for	the volume record.

  kstate
      An enumeration field. This is the	kernel-enabled state of	the volume.
      Possible values are ENABLED, DISABLED, and DETACHED.

  use_type
      A	name field. This is the	name of	the usage type for the volume.

  fstype
      A	name field. This is the	file system type associated with the volume
      contents.	A usage	type is	free to	use or ignore this value.

  comment
      A	comment-type field of up to 40 characters. This	is reserved for	use
      by local installations.

  start_opts
      A	comment-type field of up to 32 characters. This	field is used in a
      usage-type-dependent manner. The existing	usage types use	this field as
      a	set of options to apply	to the volume for the volume start operation.

  read_pol, pref_name, pref_plex_rid,

  current_read_pol (alias: creadpol)
      The read_pol parameter is	an enumeration field that specifies the	read
      policy for the volume. Possible values are ROUND,	PREFER,	SELECT.	A
      value of ROUND indicates round-robin read	scheduling, PREFER indicates
      a	preferred plex.	Round-robin scheduling scatters	reads evenly between
      all plexes. Preferred-plex read scheduling attempts to use a single
      plex for all reads.

      Typically, if a volume consists of one striped plex and one non-striped
      plex, it is better to read only from the striped plex. This is because
      the striped plex can handle more write traffic and is thus more likely
      to be free to accept read	requests with a	minimum	of delay.

      If the SELECT read policy	is used, the actual read policy	(round-robin
      or preferred plex), is chosen automatically. The policy chosen with
      SELECT is	to prefer a striped plex if there is exactly one striped plex
      in the volume, and to use	round-robin otherwise.	The read policy	that
      is actually in effect is stored in current_read_pol.

      If a preferred plex policy is in effect, either because PREFER is	set
      or because the SELECT policy chose the preferred-plex policy, the	value
      of pref_name indicates the name of the preferred plex. The SELECT	pol-
      icy sets the value of pref_name automatically. The ROUND policy ignores
      any value	stored in pref_name.

      The record ID for	the preferred plex can be set or displayed with
      pref_plex_rid.

  len A	length number field. This is the volume	length.	If a volume is
      created in volmake with a	plex attribute that associates plexes, the
      volume length will default to the	length of the shortest associated
      plex. If no plexes are associated	at creation time, the volume length
      defaults to zero,	though a warning will be printed.

  log_type
      An enumeration field. This is the	logging	type for the volume.
      Possible values are: UNDEF, NONE,	and DRL. The first two possible
      values indicate that logging is disabled,	and the	third value indicates
      use of dirty region logging, where block numbers for write operations
      are logged before	the corresponding blocks are actually written to
      disk.

      The UNDEF	value indicates	that no	logging	policy has yet been chosen.
      If a log subdisk is associated to	a volume with the UNDEF	policy,	the
      policy will be changed to	DRL automatically.

  tutil0, tutil1, tutil2
      Comment-type fields of up	to fourteen characters.	These are the tem-
      porary utility fields, which are cleared by a reboot. The	first field
      is reserved for usage-type utilities, and	is typically used to define
      operation	locks. The second field	is reserved for	utilities, such	as
      the Visual Administrator,	that use the usage-type	utilities and that
      need to store their own state into records. The third field is reserved
      for use by local installations.

  putil0, putil1, putil2
      Comment-type fields of up	to fourteen characters.	These are the per-
      manent utility fields, which are preserved across	a reboot. The first
      field is reserved	for usage-type utilities. The second field is
      reserved for utilities, such as the Visual Administrator,	that use the
      usage-type utilities and that need to store their	own state into
      records. The third field is reserved for local installations.

  r_all, r_some, w_all,	w_some
      Enumeration fields. These	are the	exception policies for the volume,
      for read errors on all plexes, read errors on some plexes, write errors
      on all plexes, and write errors on some plexes. Possible values for
      these fields are as follows: NO_OP, FAIL_OP, DET_PL, FAIL_DET_PL,
      DET_VOL, FAIL_DET_VOL, GEN_DET, GEN_DET_SPARSE, GEN_FAIL,	and GEN_DET2.

      Usage types normally ignore any attempts to set these fields in vol-
      make.

  lasterr
      A	simple number field. This is the sequence number of the	last error on
      the volume. It is	a read-only field and attempts to set it are ignored.
      This number does not have	a default multiplier, so lack of a suffix
      specifies	a simple integer.

  config_id, config_epoch
      Simple unsigned number fields. These are the lower and upper 32 bits,
      respectively, of the update_tid field. These fields are provided for
      backward compatibility with earlier releases of the Logical Storage
      Manager. This field is not printed by the	-m flag	to volprint.

      These are	read-only fields and attempts to set them will be ignored.

  state
      A	comment	field of up to fourteen	characters. This field represents a
      usage-type-dependent volume state.

      Usage types normally ignore attempts to set this field in	volmake.

  writeback
      A	Boolean	field. If on, then if a	read failure on	one plex of a multi-
      plex volume the block will be read from another plex and written back
      to the plex with the failure. This often corrects	the I/O	failure. If
      the writeback succeeds, the failure is ignored and no action is taken
      to detach	the plex.

  writecopy, specify_writecopy
      Boolean fields. If writecopy is on, then writes to the volume will be
      copied prior to being written to disk. This prevents pages of memory
      that are undergoing changes from causing plexes in a volume to become
      inconsistent.

      Normally,	writecopy is not needed	because	the system pager ensures that
      a	consistent version of each page	is written to the volume prior to a
      clean system shutdown. For most volumes, recovery	after an unclean sys-
      tem shutdown (for	example, after a panic,	unintended reset, or power
      failure) recovers	all blocks in a	volume to have consistent data
      between each plex.

      However, volumes which use the dirty region logging feature recover
      only those regions which were being written at the time of an unclean
      shutdown.	 If some regions were written inconsistently at	some point
      prior to a shutdown, then	recovery may not ensure	consistency of these
      regions. The dirty region	logging	feature	is enabled when	log_type is
      set to DRL and at	least one plex has a log subdisk, and the volume has
      at least two read-write mode plexes.

      If specify_writecopy is off then the value of writecopy is set automat-
      ically to	be on if dirty-region-logging is enabled on the	volume,	and
      off otherwise.  specify_writecopy	is set to on by	utilities whenever
      the administrator	explicitly sets	the value of writecopy.

      This combination of writecopy and	specify_writecopy eliminates the need
      for administrators to set	this field explicitly, in most cases while
      allowing the administrator to override the default value,	if desired.
      It is often desirable to turn off	writecopy for dirty-region-logging
      volumes, to reduce the overhead of write operations.  Whether plexes
      can become inconsistent, and whether inconsistencies pose	problems, are
      matters that depend upon how the volume is used.

  logging
      A	Boolean	field. This is on if logging is	enabled	on the volume. Log-
      ging is enabled for a volume if the log type for the volume supports
      logging, the volume is enabled, the badlog flag is not set, and the
      volume has at least one enabled, associated plex with an enabled log
      subdisk. Normally, usage types do	not enable logging if only one plex
      in the volume has	a log subdisk.

      This is a	read-only field	and attempts to	set it are ignored.

  open
      A	Boolean	field. This is on if the volume	is open	or mounted. This is a
      read-only	field and attempts to set it are ignored.

  log_serial_lo	and log_serial_hi
      Simple unsigned number fields. These values, taken together, yield a
      value that is increased for every	log write that occurs to a volume
      with logging enabled.

      These are	read-only fields and attempts to set them are ignored.

  bdev (alias: dev)
      The block	device number for the volume. This is a	read-only field	and
      attempts to set it are ignored.

  cdev
      The character (raw) device number	for the	volume.	This is	a read-only
      field and	attempts to set	it are ignored.

  iosize
      The smallest I/O size allowed on the volume. This	corresponds to the
      largest sector size for any disk included	in the volume. The current
      release of the Logical Storage Manager does not support disks with
      differing	sector sizes. As a result, in the current release this value
      will always match	the system default sector size (normally 512 bytes).

  pl_num (alias: nplex)
      A	number field. This is the number of plexes associated with the
      volume. This is a	read-only field	and attempts to	set it are ignored.

  plex
      A	list of	names for plexes to associate with the volume. The names are
      separated	in the list by a comma or by blanks. If	a list is specified
      as input to volmake, then	the indicated plexes will be associated	with
      the volume.

  minor
      A	simple number field. This is the minor number to use for the volume
      block and	character devices. If volumes in two disk groups attempt to
      use the same minor number, one of	the volumes will be given a different
      one. To determine	the actual device number used for a particular
      volume, get the cdev and bdev fields.

      If a minor number	is specified as	input to volmake, the number will be
      used if it is not	already	in use,	or is reserved;	otherwise, a minor
      number will be chosen that is not	currently in use or reserved. Minor
      numbers from zero	to four	are reserved for internal purposes.

  user
      This is either a user name or a decimal user ID. The value specifies
      the user that owns the volume block and character	devices.

  group
      This is either a group name or a decimal group ID. The value specifies
      the user that owns the volume block and character	devices.

  mode
      This is a	symbolic or numeric file permission mode. This can be any
      string that is acceptable	to chmod(1) for	setting	the mode of a file.

  log_len
      The length for the volume's logging area.	This is	primarily intended
      for use with future logging types. When used with	block change logging
      (the only	currently available method of logging volume I/O), the value
      of log_len must be equal to the system sector size.

  update_tid
      The configuration	update sequence	number for the last transaction	to
      update this record. This is a read-only field and	attempts to set	it
      are ignored.

  detach_tid
      The configuration	update sequence	number in effect the last time the
      volume was detached by an	I/O failure, or	the last time dirty region
      logging was disabled by failures on all log subdisks. This is a read-
      only field and attempts to set it	are ignored.

  active
      A	Boolean. This is set to	on if the volume was open and had at least
      one pending write	at the time of the last	system failure.	Utilities can
      use this flag to indicate	that plex consistency recovery should be per-
      formed. If this flag is off, the volume should not require any
      recovery.

  forceminor
      A	Boolean. If this is on,	then the volume	can use	one of the reserved
      minor numbers (zero through four). The root and swap usage types set
      this automatically, to grab volume minor numbers 0 and 1 for the root
      and swap volumes,	respectively.

  badlog
      A	Boolean. This flag is set to on	if write failures occur	on all log
      subdisks for a volume that has dirty region logging enabled. Dirty
      region logging cannot be reenabled until this flag is turned off.	This
      flag can be turned off by	changing the logging type of the volume	to
      NONE and setting it back to DRL.

  rwback, krwback, rwback_offset
      The rwback and krwback fields are	Booleans. The rwback_offset field is
      a	length number. The rwback field	is set to on to	enable read-writeback
      mode on a	volume.	If this	is set,	then reads from	the volume past
      rwback_offset perform a recovery procedure that ensures that all plexes
      are consistent before the	read operation completes.  Reads that occur
      at the current read-writeback offset will	advance	the offset.  If	the
      read-writeback offset reaches the	end of the volume, read-writeback
      will be turned off. The value of krwback indicates whether read-
      writeback	is actually in effect.

      These fields are set by usage types. Attempts to set these fields	in
      volmake are ignored.

  Plex Record Fields


  These	are the	fields that can	be used	for specifying plex records:

  rid The record ID for	the plex record.

  tutil0, tutil1, tutil2
      Comment-type fields of up	to fourteen characters.	These are the tem-
      porary utility fields. The first field is	reserved for usage-type	util-
      ities.  The second field is reserved for utilities, such as the Visual
      Administrator, that use the usage-type utilities and that	need to	store
      their own	state into records. The	third field is reserved	for local
      installations.

  putil0, putil1, putil2
      Comment-type fields of up	to fourteen characters.	These are the per-
      manent utility fields. The first field is	reserved for use by usage-
      type utilities. The second field is reserved for use by utilities, such
      as the Visual Administrator, that	use the	usage-type utilities and that
      need to store their own state into records. The third field is reserved
      for use by local installations.

  compact
      A	Boolean	field. This is on if the plex is compact. A compact plex has
      no holes;	that is, it has	no regions within the length of	the plex that
      aren't backed by a subdisk. This is a read-only field and	attempts to
      set it are ignored.

  iomode
      A	pseudo enumeration field. This field does not represent	an explicit
      enumeration field	in the plex record. Rather it represents the possible
      values in	the plex pl_tflag structure element (which is not accessible
      through the volmake description format) that form	the I/O	mode of	the
      plex. Possible values are	NONE, RO, WO, and RW, which mean no I/O	is
      possible,	read-only, write-only and read-write, respectively. In gen-
      eral, only RW and	WO are useful.

  volatile
      A	Boolean	field. This is on if any subdisk associated with the plex has
      its volatile flag	set to on; otherwise, this is off. This	is a read-
      only field and attempts to set it	are ignored.

  kstate
      An enumeration field. This is the	kernel-enabled state of	the plex.
      Possible values are ENABLED, DISABLED, and DETACHED.

  lasterr
      A	number field. This is the sequence number of the last error on the
      volume. It is a read-only	field and attempts to set it are ignored.

  len A	length number field. This is the length	of the plex. The length	of a
      plex is computed from the	end of the associated subdisk that has the
      largest plex offset.

      This is a	read-only field	and attempts to	set it are ignored.

  config_len
      A	length number field. This is the offset	of the first block in the
      plex that	doesn't	map to a subdisk. If the plex is compact, contig_len
      will equal len; otherwise, contig_len will identify where	the first
      hole in the plex is.

      This is a	read-only field	and attempts to	set it are ignored.

  dev The device number	of the plex device. This is a read-only	field and
      attempts to set it are ignored.

  minor
      A	simple number. This is the minor number	of the plex device.

  comment
      A	comment-type field of up to 40 characters. This	is reserved for	use
      by local installations.

  v_name (alias: volume)
      A	name field. This is the	name of	the volume to which the	plex is	asso-
      ciated. This is a	read-only field	when used with the volmake utility
      and attempts to set it are ignored.

  vol_rid
      The record ID of the associated volume. If the plex is not associated,
      the value	of this	field is 0.0.

  layout
      An enumeration field. This specifies how blocks in the plex address
      space map	onto blocks within the subdisks	associated with	the plex.
      Possible values are CONCAT and STRIPE.  A	value of CONCAT	indicates
      that subdisks are	simply concatenated together to	form the blocks	in
      the plex address space. A	value of STRIPE	indicates that fixed-length
      stripes out of each subdisk in turn are mapped onto the plex address
      space.

  st_width
      A	length number field. If	the value of layout is STRIPE, then this
      specifies	the length of each stripe.  This length	must be	non-negative
      and must be an even multiple of a	block (512 bytes on most machines).

  sd_num (alias: nsd)
      A	simple number field. This is the number	of subdisks associated with
      the plex.	It is a	read-only field	and attempts to	set it are ignored.

  sd  A	list of	subdisks to associate with the plex. Each subdisk is
      separated	by a comma. A specific plex offset can be given	for a subdisk
      by following the subdisk name with a colon and a number. If no plex
      offset is	specified, then	the subdisk is associated at the end of	the
      previous subdisk in the list. The	default	plex offset for	the first
      subdisk in the list is zero.

  state
      A	comment	field of up to fourteen	characters. This is a usage-type-
      dependent	volume state. Typically, usage types will ignore any attempts
      to set this field	in volmake.

  log_sd
      A	name field. This is the	name of	an associated log subdisk, if such a
      subdisk has been associated to the plex with the volsd aslog operation.
      This can be specified as input to	volmake	to specify that	the subdisk
      should be	associated to the plex by volmake.

  log_sd_rid
      The record ID of the log subdisk.	Attempts to set	this field in volmake
      are ignored.

  open
      A	Boolean	field. This is on if the plex device is	open. This is a
      read-only	field and attempts to set it are ignored.

  log A	Boolean	field. This is set to on to enable use of any log subdisk
      associated with the plex.	If off,	then any associated log	subdisk	is
      ignored.

  complete
      A	Boolean	field. This is set to on to indicate to	the GEN_DET,
      GEN_DET2,	and GEN_DET_SPARSE exception policies that the plex should be
      considered to be complete, relative to any volume	to which the plex is
      associated.

  noerror
      A	Boolean	field. This field is on	if I/O errors on the plex should not
      result in	actions	based on the volume exception policies.	This maps
      onto setting the PL_PFLAG_NOERROR	flag in	the plex pl_pflag structure
      element.

  kdetach (alias: iofail)
      A	Boolean	field. This is set to on if the	plex becomes detached as a
      result of	an I/O failure.	If this	is set,	the plex contents may be
      out-of-date and will require recovery from another plex in the volume.

  detach_tid
      The configuration	update sequence	number in effect the last time the
      plex was detached	by an I/O failure. This	is a read-only field and
      attempts to set it are ignored.

  stale	(alias:	recover)
      A	Boolean	field. This is set to on if a disk is removed that containing
      one of the subdisks in the plex, or if the disk for one of the subdisks
      fails while the plex is in use. If this is set, the plex contents	may
      be out-of-date and will require recovery from another plex in the
      volume.

  nodarec (alias: nodevice)
      A	Boolean	field. This is set to on if the	disk for one of	the subdisks
      in the plex has the nodarec flag set. This implies that the physical
      disk backing a subdisk either could not be found after a reboot, or
      failed entirely during operation.

      This is a	read-only field	and attempts to	set it are ignored.

  removed
      A	Boolean	field. This is set to on if the	disk for one of	the subdisks
      in the plex has the removed flag set. This implies that the physical
      disk backing a subdisk was removed by the	voldg rmdisk operation.

      This is a	read-only field	and attempts to	set it are ignored.

  update_tid
      The configuration	update sequence	number for the last transaction	to
      update this record. This is a read-only field and	attempts to set	it
      are ignored.

  Subdisk Record Fields


  These	are the	fields that can	be used	for specifying subdisk records:

  rid Record ID	for the	subdisk	record.

  tutil0, tutil1, tutil2
      Comment-type fields of up	to fourteen characters.	These are the tem-
      porary utility fields. The first field is	reserved for usage-type	util-
      ities.  The second field is reserved for utilities, such as the Visual
      Administrator, that use the usage-type utilities and that	need to	store
      their own	state into records. The	third field is reserved	for local
      installations.

  putil0, putil1, putil2
      Comment-type fields of up	to fourteen characters.	These are the per-
      manent utility fields. The first field is	reserved for usage-type	util-
      ities.  The second field is reserved for utilities, such as the Visual
      Administrator, that use the usage-type utilities and that	need to	store
      their own	state into records. The	third field is reserved	for local
      installations.

  dev This is the device number	of the public region for the disk that the
      subdisk resides on. If the disk is removed or failed, the	value for
      this field is NODEV. This	is a read-only field and attempts to set it
      are ignored.

  open
      A	Boolean	field. This is on if the associated plex device	is open, or
      if the associated	volume is open or mounted. This	is a read-only field
      and attempts to set it are ignored.

  is_log (alias: log)
      A	Boolean	field. This is on if the subdisk is associated with a subdisk
      as a log subdisk.

  dm_name (alias: disk or medianame)
      The name of the disk media record	that the subdisk is defined on.	This
      field is the primary means of defining the disk as input to volmake

  dm_rid
      The record ID of the disk	media record that the subdisk is defined on.
      This can be used as an alternative to setting dm_name as a means of
      specifying the disk to volmake.

  da_name (alias: device or accessname)
      The name of the disk access record used to access	the physical disk
      that backs the subdisk. If the disk media	record is in the nodarec or
      removed state, then this will be empty.  This can	be used	as an alter-
      native to	setting	dm_name	as a means of specifying the disk to volmake.

  path
      A	comment-type string field of up	to 32 characters. This is the path to
      the block	device for the public region of	the disk that the subdisk
      resides on. If the disk is currently failed or removed, this field is
      empty.  This field can be	specified as an	alternative to setting
      dm_name when creating a subdisk record, in which case it will be used
      to determine the disk.

  config_id, config_epoch
      Simple unsigned number fields. These are the lower and upper 32 bits,
      respectively, of the update_tid field. These fields are provided for
      backward compatibility with earlier releases of the Logical Storage
      Manager. This field is not printed by the	-m flag	to volprint.

      These are	read-only fields and attempts to set them will be ignored.

  pl_name (alias: plex)
      A	name field. This is the	name of	the plex to which the subdisk is
      associated. This is a read-only field and	attempts to set	it are
      ignored.

  plex_rid
      The record ID of the plex	to which the subdisk is	associated.  If	the
      subdisk is not associated, this is 0.0. This is a	read-only field	and
      attempts to set it are ignored.

  comment
      A	comment-type field of up to 40 characters. This	is reserved for	use
      by local installations.

  volatile
      A	Boolean	field. This is set to on if the	disk that backs	the subdisk
      is defined to be volatile.  See voldisk(8) for information on how	to
      create a volatile	disk with the nopriv disk type.	Typically, such	disks
      represent	RAM disks defined in memory that is reset by a reboot or a
      power failure.

  dm_offset (alias: offset)
      A	length number. This is the offset of the subdisk from the beginning
      of the private region of the disk	that backs it. This is a read-only
      field and	attempts to set	it are ignored.

  dev_offset
      A	length number. This is the offset of the subdisk from the beginning
      of the device containing the private region of the disk that backs it.
      This is not defined (prints as an	empty string) if the disk media
      record for the subdisk is	in the removed or nodarec state. This is a
      read-only	field and attempts to set it are ignored.

  pl_offset
      A	length number. This is the offset of the subdisk in address space of
      the plex address.	If the subdisk is not associated, the field is not
      defined (prints as an empty string). This	is a read-only field and
      attempts to set it are ignored.

  len A	length number. This is the subdisk length. The length must be a	non-
      negative number, and must	be a multiple of a standard disk block (512
      bytes on most machines).

  update_tid
      The configuration	update sequence	number for the last transaction	to
      update this record. This is a read-only field and	attempts to set	it
      are ignored.








  Disk Media Record Fields


  The following	fields can be used for specifying disk media records.  (NOTE:
  disk media records cannot be created using volmake.)

  rid The record ID for	the disk media record.

  tutil0, tutil1, tutil2
      Comment-type fields of up	to fourteen characters.	These are the tem-
      porary utility fields. The first field is	reserved for internal Logical
      Storage Manager purposes.	The second field is reserved for utilities,
      such as the Visual Administrator,	that use the usage-type	utilities and
      that need	to store their own state into records. The third field is
      reserved for local installations.

  putil0, putil1, putil2
      Comment-type fields of up	to fourteen characters.	These are the per-
      manent utility fields. The first field is	reserved for internal Logical
      Storage Manager purposes.	The second field is reserved for utilities,
      such as the Visual Administrator,	that use the usage-type	utilities and
      that need	to store their own state into records. The third field is
      reserved for local installations.

  comment
      A	comment-type field of up to 40 characters. This	is reserved for	use
      by local installations.

  da_name (alias: device or accessname)
      The name of the disk access record that can be used to access the	disk
      that backs the disk media	record.	This is	empty if the disk has the
      removed or nodarec flags set.

  device_tag
      A	name identifying the device that the disk access record	references.
      If two or	more disk access records identify the same actual device (for
      example, if they reference different sets	of partitions of the same
      physical disk), then device_tag will be the same for both	disk access
      records. The device_tag field is inherited by the	disk media record
      from the disk access record.

      This field is empty if the disk media record is in the removed or
      nodarec state.

  da_type (alias: type)
      The disk type for	the disk access	record that backs the disk media
      record. See voldisk(8) for a description of disk types. This field is
      empty if the disk	media record is	in the removed or nodarec state.

  pub_bpath (alias: bpath or path)
      The path to the block device containing the public region	for the	disk.
      The public region	is the region of the disk from which subdisks are
      allocated. The public region and the private region of a disk are	often
      defined on different partitions, so different device nodes must be used
      to access	them. This field is empty if the disk media record is in the
      removed or nodarec state.

  pub_cpath (alias: cpath)
      The path to the character	(raw) device containing	the public region for
      the disk.	This field is empty if the disk	media record is	in the
      removed or nodarec state.

  priv_bpath
      The path to the block device containing the private region for the
      disk. The	private	region is the region of	the disk used to allocate
      configuration information, disk headers, and other on-disk structures
      that are used by the Logical Storage Manager. None of the	private
      region can be allocated to volumes or used for uses outside of the Log-
      ical Storage Manager.

      This field is empty if the disk media record is in the removed or
      nodarec state, or	if the disk does not have a private region (for	exam-
      ple, for nopriv-type disks).

  priv_cpath
      The path to the character	(raw) device containing	the private region
      for the disk. This field is empty	if the disk media record is in the
      removed or nodarec state,	or if the disk does not	have a private region
      (for example, for	nopriv-type disks).

  pub_bdev (alias: pub_dev, bdev, or dev)

  priv_bdev (alias: priv_dev)
      The block	device numbers of the partition	containing the public and
      private regions of the disk, respectively. These fields are both NODEV
      if the disk media	record is in the removed or nodarec state. The
      priv_bdev	field is NODEV if the disk does	not have a private region
      (for example, for	nopriv-type disks).

  pub_offset, pub_len (alias: len)
      Length number fields. These define the offset and	length of the public
      region of	the disk within	the partition device containing	the public
      region. These fields are not defined (print as empty strings) if the
      disk media record	is in the removed or nodarec state.

  priv_offset, priv_len
      Length number fields. These define the offset and	length of the public
      region of	the disk within	the partition device containing	the public
      region. These fields are not defined (print as empty strings) if the
      disk media record	is in the removed or nodarec state, or if the disk
      does not have a private region (for example., for	nopriv-type disks).

  atomic_iosize	(alias:	iosize)
      The sector size of the device that backs the disk	media record.  This
      field is undefined (prints as an empty string) if	the disk media record
      is in the	removed	or nodarec state.

  sd_num (alias: nsd)
      A	simple number field. This is the number	of subdisks that are defined
      on the disk media	record.

  private
      A	Boolean. This is on if the disk	underlying the disk media record has
      a	private	region (for example, if	the disk is not	a nopriv-type disk).
      This if off if the disk media record is in the removed or	nodarec
      state.

  component
      A	Boolean. This is on if the public and private regions are on separate
      partition	devices. This if off if	the disk media record is in the
      removed or nodarec state.

  volatile
      A	Boolean. This is on if the disk	access record underlying the disk
      media record was created with the	volatile flag set. See voldisk(8) for
      information on how to create a nopriv-type disk with the volatile	flag
      set.

  nodarec (alias: nodevice)
      A	Boolean. This is on if the physical disk underlying the	disk media
      record could not be found	during system startup, or if it	failed
      completely during	system operation.

  autoconfig
      A	Boolean. This is on if the disk	access record that underlies the disk
      media record was auto-configured during system startup. This is off if
      the disk media record is in the nodarec or removed state,	or if the
      disk access record was created explicitly	with voldisk define or vol-
      disk init.

      See voldisk(8) for more information.

  diskid
      The disk ID for the physical disk	that backs the disk media record.
      This is a	64-byte	string that matches the	disk ID	stored in the disk
      header of	the disk on which this disk media record is defined. This
      field is empty if	the disk is in the removed state.  diskid will be set
      to a new value if	the disk media record is reassociated using voldg -k
      adddisk.

  last_da_name (alias: last_device)
      The name of the last disk	access record used by the disk media record.
      This is set whenever the disk access record changes. The disk access
      record used for a	disk media record can change if	disks are moved	dur-
      ing a reboot, or if a disk is replaced. The last_da_name field is
      preserved	if a disk fails	or is removed.

  reserved
      A	Boolean. This can be set or cleared (see voledit(8)) to	reserve	or
      unreserve	the disk. Reserving a disk prevents volassist from allocating
      subdisks from the	disk, unless the disk is specified explicitly on the
      volassist	command	line.

  removed
      A	Boolean. This is set to	on if the disk is detached from	its backing
      store using the voldg -k rmdisk operation. Detaching the disk also
      clears the diskid	field.

  update_tid
      The configuration	update sequence	number for the last transaction	to
      update this record.

  Disk Group Record Fields


  The following	fields can be used for specifying disk group records.  (NOTE:
  Disk group records cannot be created using volmake.)

  rid The record ID for	the disk group record.

  tutil0, tutil1, tutil2
      Comment-type fields of up	to fourteen characters.	These are the tem-
      porary utility fields. The first field is	reserved for internal Logical
      Storage Manager purposes.	The second field is reserved for utilities,
      such as the Visual Administrator,	that use the usage-type	utilities and
      that need	to store their own state into records. The third field is
      reserved for local installations.

  putil0, putil1, putil2
      Comment-type fields of up	to fourteen characters.	These are the per-
      manent utility fields. The first field is	reserved for internal Logical
      Storage Manager purposes.	The second field is reserved for utilities,
      such as the Visual Administrator,	that use the usage-type	utilities and
      that need	to store their own state into records. The third field is
      reserved for local installations.

  comment
      A	comment-type field of up to 40 characters. This	is reserved for	use
      by local installations.

  import_id
      A	sequence number	associated with	the current import of the disk group.
      Each time	a disk group is	imported, it is	assigned a sequence number
      from an increasing sequence stored in the	rootdg disk group. This
      number can be saved and then used	to find	out whether a disk group has
      been deported and	then re-imported again.

  real_name
      This is the name of the disk group as it is defined within the disk
      group. Future releases of	the Logical Storage Manager may	support	a
      temporary	aliasing feature, where	a disk group is	imported using a disk
      group name that differs from the name as it appears in the disk group
      configuration itself. Normally, this will	be the same as the disk
      imported disk name.

      Currently, real_name will	always match the import	name of	the disk
      group.

  dgid
      The disk group ID	of the disk group. This	is a 64-byte string that is
      assigned to the disk group when it is created. The form of the string
      is chosen	to substantially eliminate the chance that any two disk
      groups ever created will have the	same disk group	ID.

  update_tid
      The configuration	update sequence	number for the last transaction	to
      update this record.

SEE ALSO

  awk(1), chmod(1), sh(1), group(4) passwd(4), volassist(8), voldg(8), vol-
  disk(8), voledit(8), volintro(8), volmake(8)