 |
Index for Section 4 |
|
 |
Alphabetical listing for V |
|
 |
Bottom of page |
|
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
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:
name
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 /.
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
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 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 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
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:
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
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.
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
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.
putil0, putil1, putil2
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.
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
volmake.
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
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.
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
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 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
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 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.
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.
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
performed. 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
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.
putil0, putil1, putil2
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.
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
general, 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
associated. 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
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.
putil0, putil1, putil2
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.
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
alternative 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
nonnegative 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
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.
putil0, putil1, putil2
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.
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
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).
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
voldisk 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
during 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
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.
putil0, putil1, putil2
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.
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),
voldisk(8), voledit(8), volintro(8), volmake(8)
 |
Index for Section 4 |
|
 |
Alphabetical listing for V |
|
 |
Top of page |
|