volmake(4)volmake(4)NAMEvolmake - Format of a volmake description file
DESCRIPTION
Descriptions of configuration records can be given to the volmake util‐
ity 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 eas‐
ily 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 configura‐
tion 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
descriptions 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
single = 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 intro‐
duced 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 charac‐
ter. 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 descriptions 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 hierar‐
chy, 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 descrip‐
tion language. The classes of fields are as follows: A record name
field can be an arbitrary string of up to fourteen characters. However,
a name cannot contain a null byte, white-space characters, or the char‐
acter /. 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 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.
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 sectors, 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 suf‐
fix.
Because b and B are valid digits in a hexadecimal number, a sin‐
gle space must be used to separate the hexadecimal number from
the suffix. Double quotes are not necessary in Record Descrip‐
tion Format, unlike the rules for string-valued fields that con‐
tain spaces.
Unless otherwise indicated, all length numbers must be greater
than or equal to zero. 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), hexadeci‐
mal, or octal using the 0x or 0 prefixing convention. No suf‐
fixes or arithmetic are defined for simple numbers. Device num‐
bers define the major and minor number of a device. These num‐
bers are in the form major-number.minor-number where major-num‐
ber and minor-number are both simple numbers. In some cases, the
device number will be NODEV, indicating that the device number
is undefined. 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 enu‐
meration 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. 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
configuration update sequence number is increased. The configu‐
ration 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 num‐
bers.
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 descrip‐
tions. 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 specified to volprint with the -F option. All
field names containing underscores have an alias that is identi‐
cal 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:
The record ID for the volume record. An enumeration field. This is the
kernel-enabled state of the volume. Possible values are ENABLED, DIS‐
ABLED, and DETACHED. A name field. This is the name of the usage type
for the volume. 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. A comment-type field of up to 40 characters. This is reserved
for use by local installations. A comment-type field of up to 32 char‐
acters. This field is used in a usage-type-dependent manner. The exist‐
ing usage types use this field as a set of options to apply to the vol‐
ume for the volume start operation. The read_pol parameter is an enu‐
meration 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 pre‐
ferred plex. The SELECT policy sets the value of pref_name auto‐
matically. 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. 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 associ‐
ated at creation time, the volume length defaults to zero,
though a warning will be printed. 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 log‐
ging 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.
Comment-type fields of up to fourteen characters. These are the
temporary utility fields, which are cleared by a reboot. The
first field is reserved for usage-type utilities, and is typi‐
cally 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. Comment-type fields of up to fourteen charac‐
ters. These are the permanent utility fields, which are pre‐
served 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. 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
volmake. 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 inte‐
ger. 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. 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 vol‐
make. A Boolean field. If on, then if a read failure on one
plex of a multiplex 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. 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 vol‐
ume 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 system 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 inconsis‐
tently 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
automatically 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 over‐
head of write operations. Whether plexes can become inconsis‐
tent, and whether inconsistencies pose problems, are matters
that depend upon how the volume is used. A Boolean field. This
is on if logging is enabled on the volume. Logging 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 vol‐
ume 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. 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. 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.
The block device number for the volume. This is a read-only
field and attempts to set it are ignored. The character (raw)
device number for the volume. This is a read-only field and
attempts to set it are ignored. 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 Log‐
ical Storage Manager does not support disks with differing sec‐
tor sizes. As a result, in the current release this value will
always match the system default sector size (normally 512
bytes). 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. 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. 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; other‐
wise, 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. This is either a user name or a decimal user
ID. The value specifies the user that owns the volume block and
character devices. This is either a group name or a decimal
group ID. The value specifies the user that owns the volume
block and character devices. 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. 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. 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. 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. 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 performed. If this flag
is off, the volume should not require any recovery. 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. A Boolean. This flag is
set to on if write failures occur on all log subdisks for a vol‐
ume 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. 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 per‐
form a recovery procedure that ensures that all plexes are con‐
sistent 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 indi‐
cates 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: The
record ID for the plex record. Comment-type fields of up to fourteen
characters. These are the temporary utility fields. 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. Comment-type fields
of up to fourteen characters. These are the permanent 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 Administra‐
tor, 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. 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. 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 descrip‐
tion 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 general, only RW and WO are use‐
ful. 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. An enumeration
field. This is the kernel-enabled state of the plex. Possible values
are ENABLED, DISABLED, and DETACHED. 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. 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. 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.
The device number of the plex device. This is a read-only field
and attempts to set it are ignored. A simple number. This is
the minor number of the plex device. A comment-type field of up
to 40 characters. This is reserved for use by local installa‐
tions. A name field. This is the name of the volume to which
the plex is associated. This is a read-only field when used with
the volmake utility and attempts to set it are ignored. The
record ID of the associated volume. If the plex is not associ‐
ated, the value of this field is 0.0. 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. A length number field. If the value of lay‐
out 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). 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. 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. 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. 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 asso‐
ciated to the plex by volmake. The record ID of the log sub‐
disk. Attempts to set this field in volmake are ignored. 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. A Boolean
field. This is set to on to enable use of any log subdisk asso‐
ciated with the plex. If off, then any associated log subdisk is
ignored. 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. 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. 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. 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. 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. 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 physi‐
cal 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. A
Boolean field. This is set to on if the disk for one of the sub‐
disks 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.
The configuration update sequence number for the last transac‐
tion 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:
Record ID for the subdisk record. Comment-type fields of up to four‐
teen characters. These are the temporary utility fields. 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. Comment-
type fields of up to fourteen characters. These are the permanent util‐
ity fields. The first field is reserved for usage-type utilities. The
second field is reserved for utilities, such as the Visual Administra‐
tor, that use the usage-type utilities and that need to store their own
state into records. The third field is reserved for local installa‐
tions. 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. 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. A Bool‐
ean field. This is on if the subdisk is associated with a subdisk as a
log subdisk. 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 The record ID of the disk media record that the sub‐
disk is defined on. This can be used as an alternative to setting
dm_name as a means of specifying the disk to volmake. The name of the
disk access record used to access the physical disk that backs the sub‐
disk. If the disk media record is in the nodarec or removed state, then
this will be empty. This can be used as an alternative to setting
dm_name as a means of specifying the disk to volmake. 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 creat‐
ing a subdisk record, in which case it will be used to determine the
disk. 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. 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. The record ID of the plex to
which the subdisk is associated. If the subdisk is not associ‐
ated, this is 0.0. This is a read-only field and attempts to set
it are ignored. A comment-type field of up to 40 characters.
This is reserved for use by local installations. 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. 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. A length number. This is the
offset of the subdisk from the beginning of the device contain‐
ing 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. 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. A length number. This is
the subdisk length. The length must be a nonnegative number, and
must be a multiple of a standard disk block (512 bytes on most
machines). 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.) The record
ID for the disk media record. Comment-type fields of up to fourteen
characters. These are the temporary 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-type fields of up to fourteen characters. These are the perma‐
nent 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. A comment-type field of up to 40
characters. This is reserved for use by local installations. 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. 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. 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. The path to the block device con‐
taining 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. 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. 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 Stor‐
age Manager. None of the private region can be allocated to vol‐
umes or used for uses outside of the Logical 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 example, for nopriv-type disks). 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). 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). 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. 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). 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. A simple number field. This is the number of
subdisks that are defined on the disk media record. 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. 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. A Bool‐
ean. This is on if the disk access record underlying the disk
media record was created with the volatile flag set. See vold‐
isk(8) for information on how to create a nopriv-type disk with
the volatile flag set. 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 opera‐
tion. A Boolean. This is on if the disk access record that
underlies the disk media record was auto-configured during sys‐
tem startup. This is off if the disk media record is in the
nodarec or removed state, or if the disk access record was cre‐
ated explicitly with voldisk define or voldisk init.
See voldisk(8) for more information. The disk ID for the physi‐
cal 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. 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 during a reboot, or if a
disk is replaced. The last_da_name field is preserved if a disk
fails or is removed. 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. 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. 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.) The record
ID for the disk group record. Comment-type fields of up to fourteen
characters. These are the temporary 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-type fields of up to fourteen characters. These are the perma‐
nent 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. A comment-type field of up to 40
characters. This is reserved for use by local installations. 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 num‐
ber can be saved and then used to find out whether a disk group has
been deported and then re-imported again. 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. 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 elim‐
inate the chance that any two disk groups ever created will have
the same disk group ID. The configuration update sequence num‐
ber for the last transaction to update this record.
SEE ALSOawk(1), chmod(1), sh(1), group(4)passwd(4), volassist(8), voldg(8),
voldisk(8), voledit(8), volintro(8), volmake(8)volmake(4)