volmake(4) Kernel Interfaces Manual 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 descrip-
tion 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 configu-
ration 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 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 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 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: 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
character /. 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 volin-
tro(8). This syntax consists of one or more numbers separated by + or - to indicate addition 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 indi-
cate 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 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 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 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. 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. 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 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 specified to volprint with the -F option. All field names
containing underscores 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: The record ID for the volume record. An enumeration field. This is
the kernel-enabled state of the volume. Possible values are ENABLED, DISABLED, 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 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. 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 cho-
sen 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 policy 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. 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. 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 pol-
icy, 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 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. Comment-type fields of
up to fourteen characters. These are the permanent 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. 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 multi-
plier, so lack of a suffix specifies a simple integer. 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 rep-
resents a usage-type-dependent volume state.
Usage types normally ignore attempts to set this field in volmake. 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 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 system shutdown (for example, after a panic, unin-
tended 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 con-
sistency 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 vol-
ume, and off otherwise. specify_writecopy is set to on by utilities whenever the administrator explicitly sets the value of write-
copy.
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. 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 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. 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 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). 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; 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. 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 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. 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: The record ID for the plex 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
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. 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 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
general, only RW and WO are useful. 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 installations. 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 associated, 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 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). 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 off-
set 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 associ-
ated 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. The record ID of the log subdisk. 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 associated 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 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. 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 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: 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
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. 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 asso-
ciated 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 Boolean 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 sub-
disk 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 subdisk 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 subdisk. 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 creating 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 sub-
disk 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 associated, this is 0.0. This is a read-only field and attempts to set it are ignored. A com-
ment-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
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. 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 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. Comment-type fields of up to fourteen characters. These are the permanent 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 dif-
ferent 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 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. 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 pri-
vate 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
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 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. 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. 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 voldisk init.
See voldisk(8) for more information. 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. 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 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. Comment-type fields of up to fourteen characters. These are the permanent 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 number 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 fea-
ture, 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 eliminate the chance
that any two disk groups ever created will have the same disk group ID. 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), voldisk(8), voledit(8), volintro(8), volmake(8)
volmake(4)