NAME
evms − The evms command starts the Enterprise Volume Management System Command Line Interpreter (EVMS CLI). The parameter options listed below are allowed on the EVMS CLI command line. These parameter options control where the EVMS CLI gets commands from and how it interprets those commands. This document begins by explaining the parameter option descriptions and then goes on to explain the commands that can be entered at the Command Line Interpreter’s prompt.
SYNOPSIS
evms [ -b] [ -c] [ -d Debug Level] [ -f:Filename] [ -s] [ -p] [ -v | -v0 | -v1 | -v2] [ -h]
DESCRIPTION
The Command Line Interpreter does not accept EVMS commands as part of the command line used to invoke it. The parameter options on the command line determine where the interpreter gets the commands from and how it interprets those commands. By default, the Command Line Interpreter prompts the user for EVMS commands. To exit the EVMS Command Line Interpreter, press the ENTER key without having entered a command at the prompt.
PARAMETER OPTIONS
The following parameters are available for use during the initial call to invoke EVMS CLI.
-b |
Indicates that you are running in batch mode and any time there is a prompt for input from the user, the default value should be accepted automatically. This is the default behavior with the "-f" option. | ||
-c |
Indicates that changes are not committed to disk until the user exits the Command Line Interpreter. Normally, changes are committed to disk after each individual command is completed, even if there are multiple commands specified on the same command line. | ||
-d |
Debug Level sets the debug level that controls how much information is logged in the evmsEngine.log file located in the /var/log directory. Debug Level is specified as one of the following: default, critical, serious, error, warning, details, extra, entry_exit, everything, or debug. | ||
-f |
Filename tells the Command Line Interpreter to accept input from the file specified by Filename. When all of the commands in Filename have been processed, the Command Line Interpreter will exit. | ||
-s |
Tells the Command Line Interpreter to prompt for a single command line and then exit. Normally, the Command Line Interpreter will prompt for command lines until it finds an empty command line at which point it will exit. | ||
-p |
Tells the Command Line Interpreter to parse commands only. Errors found during parsing will be reported, but the commands will not be executed. | ||
-v |
Enables verbose mode. Verbose mode allows EVMS Engine status messages to be displayed whenever you commit changes to disk. The messages are displayed using a single line on the screen; this means that the current message is erased, and the next message is displayed in its place. | ||
-v0 |
Disables verbose mode. Verbose mode 0 allows EVMS Engine status messages to be discarded whenever changes are committed to disk. | ||
-v1 |
Enables verbose mode 1. Verbose mode 1 allows EVMS Engine status messages to be displayed whenever you commit changes to disk. The messages are displayed one per line on the screen. | ||
-v2 |
Enables verbose mode 2. Verbose mode 2 allows EVMS Engine status messages to be displayed whenever you commit changes to disk. The messages are displayed using a single line on the screen; this means that the current message is erased, and the next message is displayed in its place. | ||
-h |
Provides help on invoking the EVMS Command Line Interpreter. To get help on commands accepted by the Command Line Interpreter, invoke the interpeter, enter the word help at the prompt, and press Enter. |
COMMANDS FOR THE EVMS PROMPT
The following commands can be typed at the EVMS CLI prompt. This prompt appears when the EVMS CLI is ready to accept a command.
ADD
FEATURE
The Add Feature command adds an EVMS feature to an
existing EVMS native volume. The feature is added to the
volume by shrinking the filesystem on the volume to make
room for the metadata of the new feature. The metadata is
then written on the volume. In order to successfully write
the metadata for the feature on the volume, EVMS must have a
filesystem interface module (FSIM) for the filesystem on the
volume, and the FSIM must support filesystem shrinking.
If the volume cannot be unmounted (perhaps because it is root), the FSIM must support on-line shrinking of the filesystem. The filesystem must be able to be shrunk by an amount that is equal to or larger than the metadata of the feature.
CAUTION: The Add Feature command should not be used on volumes that do not have a filesystem (such as databases) as data loss may occur.
The add feature command has the following syntax:
Add Feature
: Feature Name =
{ name=value,
name=value. . . } Volume
Name
where
Feature Name
is the name of the EVMS feature to add to the volume
name |
is the name of an option accepted by the feature |
|||
value |
is an acceptable value for the option name |
Volume Name
is the name of an EVMS volume that feature described in Feature Name is added to
NOTE: The Add Feature command can be abbreviated as AF on the command line.
The following example adds the feature "My_Drive_Link" to the volume, "My_EVMS_Volume."
AF:DriveLink={Name=My_Drive_Link},/dev/evms/My_EVMS_Volume
ALLOCATE
The Allocate command is used to allocate regions or
segments from blocks of freespace. The Allocate
command can be abbreviated as a on the command
line.
The Allocate command has the following syntax:
Allocate : freespace, name=value
where
freespace
is the name of a region or segment which represents freespace, such as sdb_freespace1.
name |
is the name of an option accepted by the region manager or segment manager which created freespace. | ||
value |
is an acceptable value for the option name. |
Example: Given a disk with no partitions that is under the control of the Default Segment Manager, create a 50 MB segment in an extended partition. The new segment does not have to be bootable.
The following command illustrates how to complete the above example:
a:sdb_freespace1,size=50MB,offset=0,primary=false,bootable=false
ASSIGN
The Assign command is used to assign a segment
manager to any disk or segment in the system that does not
already have a Segment Manager assigned to it. The
Assign command can be abbreviated to as on the
command line.
The Assign command has the following syntax:
Assign : Segment Mgr Name = { name = value , name = value . . . } , Disk Name
where
Segment Mgr Name
is the name of the segment manager that is to be assigned to a disk.
name |
is the name of an option accepted by the segment manager. | ||
value |
is an acceptable value for the option name. |
Disk Name
is the name of the disk that the Segment Manager will be assigned to.
Example 1: You have installed a brand new disk into your computer. You wish to partition this disk into multiple partitions using the Default Segment Manager and the standard Linux partitioning scheme. What must you do before you can partition the disk?
You must assign the Default Segment Manager to the disk. If EVMS identifies the disk as sdb, the command to do this is:
as:DefaultSegMgr={TypeByName=Linux},sdb
Example 2: You have installed a brand new disk into your computer. You wish to partition this disk into multiple partitions using the Default Segment Manager and the OS/2 partitioning scheme. What must you do before you can partition the disk?
You must assign the Default Segment Manager to the disk. If EVMS identifies the disk as sdb, the command to do is:
as:DefaultSegMgr={TypeByName=OS2,DiskName=My_Disk},sdb
The previous commands will cause the Default Segment Manager to assume control of the disk sdb and prepare the disk for partitioning. In Example 2, the disk name is also stored because the name is supported by the OS/2 partitioning scheme. Two new storage objects will result from the Assign command; a metadata segment object and a freespace segment object. The freespace segment, sdb_freespace1, is created to represent the space available on sdb. This space can be divided into data segments (partitions) using Allocate or Create.
CHECK
The Check command performs a consistency check on the
filesystem contained within the specified volume. This
command is the equivalent of the Linux fsck command.
Check can be abbreviated as Ch on the command
line.
The Check command has the following syntax:
Check :
Volume ,
Name= Value , ... , Name
=Value
where
Volume |
is the name of the volume with the filesystem to be checked. | ||
Name |
is the name of an option supported by the File System Interface Module (FSIM) for the filesystem found on the specified volume. | ||
Value |
is an acceptable value for option Name. |
COMMIT
The Commit command can be used when the EVMS Command
Line Interpreter (CLI) is running in alternate mode to force
the CLI to save all changes since the last save.
The EVMS CLI can run in either of two modes: default or alternate. The default mode writes to disk any changes made by a command immediately after that command is executed. The alternate mode, which is invoked by using the -c option on the command line that invoked the CLI, holds all changes in memory until the CLI exits. Once the CLI exits, all of the changes being held in memory are written to disk. This alternate mode can significantly improve performance in situations where large command files are executed or complex configurations are used. However, it is not always desireable to hold all changes in memory until the EVMS CLI exits.
When the EVMS CLI is operating in default mode, the Commit command does nothing. When the EVMS CLI is operating in alternate mode, the Commit command forces the EVMS CLI to save all changes it has accumulated. This option effectively gives the user control over when changes are saved and when they are held in memory.
The Commit command has the following syntax:
Commit Optional Parameter
where
Optional Parameter
is a colon followed by either the "Hold" or "Release" keywords (if the parameter exists). The "Hold" keyword tells the EVMS Command Line Interpreter to hold all changes in memory and to commit those changes to disk when the Interpreter exits. The "Release" keyword tells the EVMS Command Line Interpreter to write all pending changes to disk immediately and write changes to disk after each command has been completed.
NOTE: There is no abbreviation for the Commit command.
COMMIT WITH
THE HOLD KEYWORD
The EVMS Command Line Interpreter is operating it its defalt
mode, with changes being committed to disk after each
command. Change the Interpreter’s mode of operation so
that changes are held in memory until the Interpreter
exits.
commit:hold
COMMIT WITH
THE RELEASE KEYWORD
The EVMS Command Line Interpreter is operating in its
alternate mode, with all changes being held in memory until
the EVMS Command Line Interpreter exits. Change the EVMS
Command Line Interpreter’s mode of operation so that
changes are committed to disk after each command, and write
to disk all changes that are currently being held in
memory.
commit:release
COMMIT IN
ALTERNATE MODE
The EVMS Command Line Interpreter is operating in its
alternate mode, with all changes being held in memory until
the EVMS Command Line Interpreter exits. Without changing
the mode the Interpreter operates in, force the Interpreter
to commit to disk all the changes it is currently holding in
memory.
commit
CONVERT
The Convert command has two forms. The first form
converts an existing compatibility volume into an EVMS
native volume. The second form converts an EVMS native
volume into a compatibility volume.
CONVERTING
FROM COMPATABILITY VOLUMES TO NATIVE VOLUMES
The Convert command converts an existing
compatibility volume into an EVMS native volume by adding
EVMS metadata to the compatability volume. If the
compatibility volume does not contain a filesystem, EVMS can
add its metadata to the volume and convert it. If the
compatibility volume contains a filesystem, EVMS shrinks the
filesystem to make room for the EVMS metadata. EVMS must
have a filesystem interface module (FSIM) that corresponds
to the compatability volume’s filesystem, and the FSIM
must support filesystem shrinking.
If the compatibility volume cannot be unmounted (for example, it is mounted as root), the FSIM must support on-line shrinking of the filesystem. If the filesystem cannot be shrunk, the volume cannot be converted to a compatability volume.
CAUTION: The Convert command should not be used on compatibility volumes that are being used without a filesystem (for example, databases) as data loss may occur.
The Convert command has the following syntax when converting a compatibility volume to an EVMS native volume:
Convert : Volume Name , Name = New Volume Name
where
Volume Name
is the name of the compatibility volume to be converted into an EVMS volume
New Volume Name
is the new name for the volume. Please note that the new volume names must be in single quotation marks if they contain spaces or any non-alphanumeric characters.
NOTE: The Convert command may be abbreviated as Co and the "Name" keyword may be abbreviated as the single letter "n."
Example: The following example changes hda3 into an EVMS native volume named, "New EVMS Volume."
Co : /dev/evms/hda3 , N = "New EVMS Volume"
CONVERTING
FROM NATIVE VOLUMES TO COMPATABILITY VOLUMES
The Convert command converts an existing EVMS native
volume into a compatibility volume by removing any EVMS
metadata on the volume. Currently, this conversion can only
occur for EVMS volumes that have no features applied to
them.
The Convert command has the following syntax when attempting to convert an EVMS volume into a compatibility volume:
Convert : Volume Name, Compatibility
where
Volume Name
is the name of the EVMS volume to be converted into a compatibility volume
Compatibility
is the EVMS keyword used to indicate that a compatibility volume is the type of the resulting volume.
NOTE: The Convert command may be abbreviated as Co and the "Compatibility" keyword may be abbreviated as the single letter "c".
CREATE
The Create command is used to create containers,
storage objects, regions, segments, and volumes. The command
can be abbreviated as c on the command line. The
different items the Create command generates can also
be abbreviated as a single letter on the command line.
The syntaxes for each of the Create command options are listed below:
CREATING
CONTAINERS
Create : Container, Region Mgr Name = {
name = value , name
= value . . . } , Segment or Disk
Name , Segment or Disk Name , . .
.
where
Region Mgr Name
is the name of the region manager to use when creating the container.
name |
is the name of an option accepted by the region manager. | ||
value |
is an acceptable value for the option name. |
Segment or Disk Name
is the name of a segment or disk used in the creation of the container.
Example: Given a system with three available hard drives (sdc, sdd, hdc), use the EVMS LVM Region Manager to combine these disks into a container called "Sample Container" with a PE (physical extent) size of 16KB.
The following command illustrates how to complete the example:
c:c,LvmRegMgr={name="Sample Container",pe_size=16KB},sdc,sdd,hdc
CREATING
STORAGE OBJECTS
Create : Object, Feature Name={
name= value, name=
value . . . } ,Backing
Store,Backing Store . . .
where
Feature Name
is the name of the EVMS Feature to use when creating the storage object.
name |
is the name of an option accepted by the region manager. | ||
value |
is an acceptable value for the option name. |
Backing Store
is the name of a region, segment, disk, or storage object to be used in the creation of the new storage object.
Example: Given a system with a volume /dev/evms/Source, and an available segment sdb5, create a snapshot object called "My Snapshot Object" using the EVMS SnapShot feature. /dev/evms/Source is the source of the snapshot, and sdb5 is the backing store for the snapshot.
The following command illustrates how to complete the example:
c:o,Snapshot={original=/dev/evms/Source,snapshot="My Snapshot Object",writeable=false},sdb5
CREATING
REGIONS
Create : Region,Region Mgr Name ={
name =value ,name
= value...} ,Backing
Store, Backing Store ...
Region Mgr Name
is the name of the EVMS Region Manager you want to use.
name |
is the name of an option accepted by the region manager. | ||
value |
is an acceptable value for the option name. |
Backing Store
is the name of a region, segment, or disk to be used in the creation of the new region.
CREATING
SEGMENTS
Create : Segment, Freespace Segment,
name =value,name=
value...
where
Freespace Segment
is the name of a segment representing freespace.
name |
is the name of an option accepted by the segment manager that created the Freespace Segment. | ||
value |
is an acceptable value for the option name. |
Example: Given a disk that is under the control of the Default Segment Manager, has no primary partitions, and has a 200 MB freespace segment called sdb_freespace1, create a 50 MB logical segment. The new segment does not have to be bootable.
The following command illustrates how to complete the above example:
c:s,sdb_freespace1,size=50MB,offset=0,primary=false,bootable=false
CREATING
COMPATIBILITY VOLUMES
Create : Volume , Segment or Region ,
Compatibility
where
Segment or Region
is the name of the segment or region that will become a volume.
Example: Given a system with an unused segment sda3, turn this segment into a compatibility volume.
The following command completes this example:
c:v,sda3,c
CREATING
EVMS VOLUMES
Create : Volume, Backing Store , Name =
User Defined Name
where
Backing Store
is any segment, disk, region, or storage object that is not already a volume or a part of a volume or storage object.
User Defined Name
is the name that you would like the volume to have. This name must be unique throughout the system, and the volume, once created, will be known as /dev/evms/User Defined Name.
Example: Given a system with an unused segment sda3, make sda3 an EVMS volume known as "Widow Maker."
The following command illustrates how to complete the example:
c:v,sda3,n="Widow Maker"
DELETE
The Delete command deletes a volume, storage object,
region, or segment from the system. The Delete
command can be abbreviated as d on the command
line.
The Delete command has the following form:
Delete : Item Name
where
Item Name
is the name of the volume, object, region, or segment that is to be deleted.
ECHO
The Echo command mirrors to the standard output a
string. Echo allows the user to output user defined
text from an EVMS command file.
The Echo command has the following syntax:
Echo : String
where
String |
is any sequence of ASCII characters except quotation marks. A string should be enclosed in quotation marks if it contains any non-alphabetic or non-numeric characters or spaces. If a quotation mark is embedded in the string as part of the string, then quotation marks should also surround the embedded string, as in the example below: |
Example:
Echo : "This is a ""sample"" string with embedded quotation marks."
EXPAND
The Expand command is used to increase the size of a
storage container, volume, or storage object. The
Expand command can be abbreviated as e on the
command line.
Listed below
are the two syntaxes of the expand command. The first
syntax is for increasing the size of storage containers. The
second syntax of Expand is for increasing the size of
volumes and storage objects.
Increasing the Size of a Storage Container
Storage Containers are expanded by adding segments or regions to them. When expanding containers, the Expand command has the following syntax:
Expand : Container Name, Storage To Use ... , Storage To Use
where
Container Name
is the name of the container to expand.
Storage To Use
is the name of a segment or region to add to the container specified by Container Name.
Increasing the Size of a Volume or Storage Object
An EVMS volume or storage object can be comprised of one or more storage objects, regions, segments, or disks. Whether a volume or storage object can be expanded or not depends on how it is constructed. For example, if a volume consists of a single segment with no EVMS features applied to it, then it can only be expanded if the Segment Manager that created the segment can increase the size of that segment. EVMS allows complete control over how a volume is expanded.
A more complicated volume may have several ways to expand. For example, a volume created from several segments using EVMS Drive Linking can be expanded by increasing the size of one of the segments linked to the volume. You can also expand the volume by using EVMS Drive Linking to add another segment to the volume. When a volume can be expanded in multiple ways, we say that the volume has multiple expansion points.
To expand a volume, you must specify which expansion point to use. The same is true for storage objects. In the example from the paragraph above, there are two expansion points. One expansion point is the storage object created by EVMS Drive Linking. This storage object could be expanded by adding another segment to it. The second expansion point is the last segment used in the storage object formed by EVMS Drive Linking. While the other segments used to create this storage object may be capable of being expanded, EVMS Drive Linking allows only the last segment to be expanded.
To find the expansion points for a storage object or volume, use the Query Expand Points command. Once you know the expansion points for a volume or storage object, these points can be used to expand the volume or storage object.
When increasing the size of a volume or storage object the Expand command has the following syntax:
Expand : Expansion Point , Name = Value , ... , Name = Value , Storage To Use , ... , Storage To Use
where
Expansion Point
is the name of an expansion point as provided by the Query Expand Points command.
Name |
is the name of an option supported by the plug-in module that controls Expansion Point. | ||
Value |
is an acceptable value for the option Name. |
Storage To Use
is the name of an acceptable storage object, region, segment, freespace, or disk to use for expanding the volume.
Example:
This example assumes that there is a volume created from three segments using EVMS Drive Linking. The three segments are sda1, sdb1, and sdc1. The storage object created by EVMS Drive Linking is called DL1, and the volume is called /dev/evms/Sample_Volume. The segment sdc1 is controlled by the Default Segment Manager (DefaultSegMgr), and has a 50 MB block of freespace (sdc_freespace1) adjacent to it on the disk. Also, there is an unused 200 MB segment known as hda7 available in the system. The Query Expand Points command indicates that this volume has two expansion points: DL1 and sdc1. Expand this volume by 250 MB.
First, we must consider the order in which we will use the expand points to expand the volume. Currently, sdc1 is an expand point. Since EVMS Drive Linking allows only the last segment it is linking to be expanded, sdc1 must be the last segment that EVMS Drive Linking uses to create DL1. If we add hda7 to DL1, then hda7 will become the last segment used in DL1, and sdc1 will not be an expansion point anymore. Without being able to expand sdc1, we will not be able to reach our goal of expanding the volume by 250 MB. However, expanding sdc1 has no effect on our ability to add hda7 to DL1, so if we expand sdc1 before we add hda7 to DL1, we will be able to achieve our goal of expanding the volume by 250 MB. Completing our expansion will require two commands. First, to expand sdc1, we use:
e:sdc1,size=50MB,sdc_freespace1
Now, to add hda7 to DL1, use the command:
e:DL1,hda7
The resulting change is that the volume is 250 MB larger
than before.
FORMAT
The Format command creates a filesystem on a volume.
This is the equivalent of the Linux mkfs command.
Format can be abbreviated as F on the command
line.
The Format command has the following syntax:
Format :
FSIM={ Name= Value ,
... , Name =
Value } , Volume
where
FSIM |
is the name of a File System Interface Module recognized by EVMS. The specified FSIM is used to create the filesystem on the volume specified by Volume. Normally there is one FSIM for each filesystem, so specifying the FSIM is the same as specifying the filesystem. In cases where one FSIM supports more than one filesystem, you can use an option to specify which filesystem should be created. | ||
Name |
is the name of an option supported by the FSIM for the filesystem found on the specified volume. | ||
Value |
is an acceptable value for the option Name. | ||
Volume |
is the name of the volume where the filesystem is to be created. |
HELP
The Command Line Interpreter offers help on the essential
commands. To obtain detailed help on an EVMS command, type
the following:
Help :
command
The Command Line Interpreter supports the following
commands:
Add Feature
adds the specified feature to an existing EVMS volume.
Allocate
allocates regions and segments from freespace.
Assign |
assigns a segment manager to a disk/segment. | ||
Check |
performs an fsck on a volume. | ||
Commit |
causes any changes that have not been written to disk to be written to disk. |
Convert
converts a compatability volume into an EVMS native volume or an EVMS native volume into a compatability volume.
Create |
creates volumes, storage objects, regions, segments, and containers. | ||
Delete |
deletes volumes, containers, regions, segments, and storage objects. | ||
Echo |
mirrors a string to standard output. | ||
Expand |
expands the size of volumes, containers, regions, segments, and storage objects. | ||
Format |
performs a mkfs operation on a volume. | ||
Help |
provides help on a specific EVMS command. | ||
Probe |
causes EVMS to check the system for hardware changes. | ||
Query |
gathers information about the volumes, containers, storage objects, regions, and segments in the system. | ||
Remove |
removes the segment manager assigned to a disk/segment. | ||
Rename |
changes the names of volumes. | ||
Revert |
deconstructs a volume or storage object a layer at a time. | ||
Set |
modifies some of the options associated with a storage object, region, container disk, or segment. | ||
Shrink |
reduces the size of volumes, containers, regions, segments, and storage objects. |
Unformat
removes a filesystem from a volume. The contents of the volume are lost.
Example: Get detailed help on the Create command.
Help: Create
PROBE
The Probe command is used to probe the system for
hardware changes. This command is useful when the media in a
removable media device has been changed. The Probe
command will commit any pending changes (from prior
commands) to disk before probing the system for hardware
changes, even if the "-c" option was used when
invoking the Command Line Interpreter. Probe can be
abbreviated as a single letter P on the command
line.
QUERY
The Query command is used to obtain information about
the states of the volumes, storage objects, regions,
containers, segments, and disks in the system. Query
can be abbreviated as q on the command line.
The Query command has several different syntaxes. One syntax is used for gathering information about the volumes, storage objects, regions, containers, segments, disks, and plug-in modules in the system. The other syntax for the Query command is used for gathering information related to various tasks that you can perform on items in the system.
To gather information about volumes, storage objects, regions, containers, segments, disks, or plug-in modules, use this syntax of the Query command:
Query: Type of data to return , filter , ... , filter
where
Type of data to return
is either:
• |
plug-ins (abbreviated as "p") |
|||
• |
volumes (abbreviated as "v") |
|||
• |
regions (abbreviated as "r") |
|||
• |
objects (abbreviated as "o") |
|||
• |
containers (abbreviated as "c") |
|||
• |
disks (abbreviated as "d") |
|||
• |
segments (abbreviated as "s") |
|||
filter |
is one of the available filters for the type of data being returned. A filter retstricts what is returned based upon some characteristic of the items being returned. The available filters for a query depend upon Type of data to return.
When processing a query like the one above, the Command Line Interpreter gathers items in the system of Type of data to return. The interpreter puts these items into a list called the Return Values List. Each of the filters you specified examines the Return Values List and removes any items that do not fit the filter criteria. Once all of the filters have processed the Return Values List, the Command Line Interpreter displays the items that remain in the Return Values List.
NOTE: Not all filters will work with every query. Furthermore, some filters may be mutually exclusive. See the EVMS Command Line Grammar to determine which combinations of filters are allowed for a particular query.
SUPPORTED
FILTERS
The EVMS Command Line Interpeter supports the following
filters:
Plug-in Type Filter
The Plug-in Type Filter is only available when Type of data to return is equal to plug-ins. This filter removes from the Return Values List any entries for plug-in modules that are not of the type specified. The Plug-in Type Filter can be abbreviated as the single letter "T."
The syntax for this filter is:
Type = Plug-in Type
where
Plug-in Type
is one of the following:
• |
device manager (abbreviated as "d") | ||
• |
feature (abbreviated as "f") | ||
• |
region manager (abbreviated as "r") | ||
• |
segment manager (abbreviated as "s") | ||
• |
filesystem interface module (abbreviated as "FSIM") | ||
• |
distributed lock management (abbreviated as "DLM") | ||
• |
cluster management (abbreviated as "CM") |
Plug-in Filter
The Plug-in Filter is available when Type of data to return is either volumes, storage objects, regions, containers, segments, disks, or plug-ins. The Plug-in Filter can be abbreviated as the single letter "P." This filter removes any entries that have no association with the specified plug-in module from the Return Values List.
• |
For volumes and storage objects, any volume that was created without the use of the specified plug-in module is removed from the Return Values List. | ||
• |
For regions, if the region does not come from a container created by the specified plug-in module, the region is removed from the Return Values List. | ||
• |
For containers, any container not created by the specified plug-in module is removed from the Return Values List. | ||
• |
For segments, any segment not created by the specified plug-in module is removed from the Return Values List. | ||
• |
For disks, any disk not claimed by the specified plug-in module is removed from the Return Values List. | ||
• |
For plug-in modules, all plug-in modules other than the one specified are removed from the Return Values List. |
The syntax of Plug-in Filter is:
Plugin = Plug-in Module Identifier
where
Plug-in Module Identifier
is the name or ID number of a plug-in module.
Volume Filter
The Volume Filter is available when Type of data to return is either plug-ins, regions, or objects. This filter removes any item that was not used in the construction of the specified volume from the Return Values List. The Volume Filter can be abbreviated as the single letter "V."
The syntax for the Volume Filter is:
Volume = Volume Name
where
Volume Name
is the fully qualified name of a volume.
Object Filter
The Object Filter is available when Type of data to return is either plug-ins, volumes, or regions. The Object Filter can be abbreviated as the single letter "O."
This filter removes items that either did not create the specified object, or were created without using the specified storage object from the Return Values List. The Object Filter removes from the Return Values List each of the following:
• |
For plug-in modules, the filter removes all plug-in modules except for those that are needed to create the specified storage object. | ||
• |
For volumes, the filter removes any volume that does not use the specified storage object. | ||
• |
For regions, the filter removes any region that was not used in the creation of the specified storage object. |
The syntax of the Object Filter is:
Object = Object Name
where
Object |
can be abbreviated as a single letter "O." |
Object Name
is the name of an object that EVMS has discovered.
Container Filter
The Containter Filter is available when Type of data to return is either plugins, volumes, regions, objects or segments. The Container Filter can be abbreviated as the single letter "c."
The list below explains what the Container Filter removes from the Return Values List when Type of data to return is one of the following:
• |
For plug-ins, the filter removes all plug-ins that were not used to create the container. | ||
• |
For volumes, the filter removes any volume constructed without using a region from the specified container. | ||
• |
For regions, the filter removes any regions that do not come from the specifed container. | ||
• |
For objects, the filter removes any object contructed without using a region from the specified container. | ||
• |
For segments, the filter removes any segment that was not used to create the container. |
The syntax of the Container Filter is:
Container = Container Name
where
Container Name
is the name of a container that EVMS has discovered.
Region Filter
The Region Filter is available when Type of data to return is either volumes, objects, or containers. This filter can be abbreviated as the single letter "R."
The list below explains what the Region Filter removes from the Return Values List when Type of data to return is one of the following:
• |
For volumes, this filter removes any volume constructed without using the specified region. | ||
• |
For objects, this filter removes any object contructed without using the specified region. | ||
• |
For containers, this filter removes any container other than the one it came from. |
The syntax of the Region Filter is:
Region = Region Name
where
Region Name
is the name of a region that EVMS has discovered.
Disk Filter
The Disk Filter is available when Type of data to return is segments. This filter removes from the Return Values List any segment which does not lie on the specified disk. The Disk Filter can be abbreviated as the single letter "D."
The syntax of the Disk Filter is:
Disk = Disk Name
where
Disk Name
is the name of a disk that EVMS knows about.
Size Filters
There are three Size Filters: less than, greater than, and equal to. These filters are available when Type of data to return is either volumes, regions, containers, objects, disks, or segments. These filters remove items from the Return Values List based upon their size.
The Less Than Filter has the following syntax:
LT XXX Unit
where
XXX |
is a positive integer or 0. |
|||
Unit |
is either KB, MB, GB, or TB. |
The Greater Than Filter has the following syntax:
GT XXX Unit
where
XXX |
is a positive integer or 0. |
|||
Unit |
is either KB, MB, GB, or TB. |
The Equal Filter has the following syntax:
EQ XXX Unit , Precision
where
XXX |
is a positive integer or 0. | ||
Unit |
if specified, must be either KB, MB, GB, or TB. |
Precision
is a positive integer. Precision indicates how "sloppy" a match to make. If no unit is specified, then Precision is interpreted to be a percentage. If Precision is seen as a percentage, the value is considered to be equal to XXX as long as the value is within XXX plus or minus Precision percent of XXX. If a unit (KB, MB, GB, TB) is specified for Precision, then a value is considered equal to XXX if the value is within the range of XXX - Precision to XXX + Precision.
Freespace Filter
The Freespace Filter removes any items that do not contain freespace from the Return Values List. This filter is only useable when Type of data to return is containers. The Freespace Filter can be abbreviated as the single letter "F."
The syntax of the Freespace Filter is:
Freespace , Size Filters
where
Size Filters
these filters are the same Size Filters used with other filters, only now, instead of using the size of the containers for comparisons, the Size Filters will use the freespace in the containers for comparisons.
Expandable Filter
The Expandable Filter is available when Type of data to return is either volumes, regions, objects, or segments. This filter removes any items that cannot be expanded from the Return Values List. This filter can be abbreviated as the single letter "E."
The syntax of this filter is: Expandable
Shrinkable Filter
The Shrinkable Filter is available when Type of data to return is either volumes, regions, objects, or segments. This filter removes any items that cannot be shrunk from the Return Values List. The Shrinkable Filter can be abbreviated as the single letter "S."
The syntax of this filter is: Shrinkable
Unclaimed Filter
The Unclaimed Filter is available when Type of data to return is disks. This filter removes all disks which have been claimed by a Segment Manager plug-in module (disks that have a recognized partitioning scheme in place) from the Return Values List. The disks left in the Return Values List will either have no partitioning scheme, or the partitioning scheme is unrecognized. The Unclaimed Filter can be abbreviated as the single letter "U."
The syntax of this filter is: Unclaimed
List Options Pseudo Filter
List Options is treated like a filter, but it actually causes the Command Line Interpreter to list what can be done with each item in the Return Values List. This filter can be abbreviated with the letters "LO."
The syntax of this filter is: List Options
SAMPLE QUERIES USING FILTERS
• |
To query the plug-ins in the system and their options: |
q:p,lo
• |
To query only the region manager plug-ins in the system and their options: |
q:p,t=r,lo
• |
To query the volumes in the system: |
q:v
• |
To query the volumes in the system over 1GB in size: |
q:v,gt 1GB
• |
To query the storage objects in the system: |
q:o
• |
To query the segments in the system that reside on disk sda: |
q:s,d=sda
• |
To query the segments in the system that belong to the container lvm/MyStuff, are over 500 MB in size and less than 2 GB in size, and come from disk sda: |
q:s,c=lvm/MyStuff,GT 500MB,lt 2GB,d=sda
SPECIALTY
QUERY COMMANDS
The following commands allow for specialty queries.
Query Children
The Query Children command returns items that were used to create the specified item. For example, the children of a storage object are the storage objects, regions, disks, or segments that were used to create the specified storage object.
The syntax of this command is:
Query : Children , Item Name
where
Children
can be abbreviated as "CHI."
Item Name
is the name of a volume, storage object, region, segment, or container.
Query Parent
The Query Parent command returns the item (if there is one) that uses the specified item. For example, if a storage object is specified, then this command will return the volume or storage object which was created using the specified storage object, if such a volume or storage object exists. The syntax of this command is:
Query : Parent , Item Name
where
Parent |
can be abbreviated as "Par." |
Item Name
is the name of a storage object, region, segment, container, or disk.
Query Expand Points
The Query Expand Points returns the expansion points for a volume or storage object. The expansion points for a volume or storage object are those entities within the volume or storage object that can be expanded without causing a loss of data.
The syntax of this command is:
Query : Expand Points , Item Name
where
Expand Points
can be abbreviated as "EP."
Item Name
is the name of a storage object or volume.
Query Shrink Points
Query Shrink Points returns the shrink points for a volume or storage object. The shrink points for a volume or storage object are those entities within the volume or storage object that can be shrunk without causing a loss of data. The syntax of this command is:
Query : Shrink Points , Item Name
where
Shrink Points
can be abbreviated as "SP."
Item Name
is the name of a Storage Object or Volume.
Query Extended Info
Query Exended Info command allows access to any additional information that may be available for a plug-in module, a storage object, a disk, a region, a segment, or a container. The syntax of this command is:
Query : Extended Info , Item Name , Field Name
where
Extended Info
can be abbreviated as "EI."
Item Name
is the name of a storage object, disk, region, segment, container, or plug-in module. It can also be the numeric ID of a plug-in module.
Field Name
is the name of a specific piece of extended information. Extended Information is grouped into fields. Each field has a name and one or more values associated with it. Field Name is optional.
Query Acceptable
The Query Acceptable allows you to discover which storage objects, regions, segments, or disks are acceptable for creating or expanding a volume, storage object, region, or segment. The command works as follows:
When you create containers, objects, or regions, specify the following: the plug-in module being used; the values for the options that the plug-in module is to use when creating the container/object/region; and the storage objects, regions, segments, or disks that you have decided to use. The query will return any storage objects, regions, segments, or disks that are still available and acceptable for use in creating the container/object/region.
Example:
An example of using this command would be to determine what segments should be used to create a software RAID 5 storage object. Initially, no segments have been selected, so all unused segments in the system might be available and might be returned by this query. Choose an initial segment, which causes all segments on the same drive to not be acceptable anymore.
To find out what segments are still available, use this query again and specify the segments that have already been chosen. This query will return all of the segments that might still be chosen. To see which segments are still available, choose another segment, and use this query again, specifying all of the segments that have already been chosen in the order in which they were chosen. You can use this iterative process to build an ordered list of segments. From this list you can see what segments you can use in an actual create command to create the desired software RAID 5 storage object.
When expanding volumes or storage objects, specify the volume or storage object to be expanded along with any storage objects, segments, regions, or disks that you have already chosen to use in the expansion. This query will return the storage objects, regions, segments, or disks that you can still select and use to expand the specified volume or storage object
As described above, an iterative process can be used to build an ordered list of the storage objects, regions, segments, or disks that can be used to expand the specified volume or storage object with an actual expand command.
The Query Acceptable command has two syntaxs: one for use with Create, the other for use with Expand.
Create |
For determining what is acceptable for use with Create, use the following syntax: |
Query :
Acceptable, Create ,
Item To Create, Plug-in Module= {
name = value... ,
name= value } , item to
use ... , item to use
where
Acceptable
can be abbreviated as the single letter "a."
Create |
can be abbreviated as the single letter "c." |
Item To Create
is either object, region, or container. Object can be abbreviated as a single letter "O," region can be abbreviated as a single letter "r," and container can be abbreviated as a single letter "c."
Plug-in Module
is the name or ID number of the plug-in module to use when creating Item To Create.
name |
is the name of an option supported by Plug-in Module. | ||
value |
is a legitimate value for the option name. |
item to use
is the EVMS name of a storage object, region, segment or disk which is to be used to create Item To Create.
Expand |
For determining what is acceptable for use with Expand, use the following syntax: |
Query :
Acceptable , Expand ,
Item to Expand ,
item to use ... item to use
where
Acceptable
can be abbreviated by the single letter "A."
Expand |
can be abbreviated by the single letter "E." |
Item to Expand
is the name of a volume or storage object that is to be expanded.
item to use
is the EVMS name of a storage object, region, segment or disk which is to be used when expanding Item To Expand.
REMOVE
The Remove command is used to remove a segment
manager from a disk. A segment manager can only be removed
from a disk when all of the data segments on that disk have
been deleted. The Remove command causes a Segment
Manager to remove its metadata from the disk, thereby
leaving an empty disk. The empty disk can be used directly,
or another segment manager can be assigned to it.
Example:
This example will assume that you have a disk, sdb, and that this disk has several partitions on it that are managed by the Default Segment Manager. The data segments on disk sdb are not being consumed by any EVMS object and could be deleted. Assume that you have a drive link that is aggregating several disks and that you would like to expand the drive link with the addition of disk sdb. In order for disk sdb to become an acceptable object for expanding the drive link, you must remove the segment manager and all the partitions from the disk.
After deleting all the data segments on disk sdb, use the following command:
Rem:sdb
RENAME
The Rename command is used to change the name of an
EVMS volume. This command can be abbreviated as the single
letter "r."
The Rename command has the following syntax:
Rename :
Volume Name , Name= New Volume Name
Volume Name
is the name of the volume that needs to be changed.
New Volume Name
is the new name for the volume. Please note that the new volume name must be in quotation marks if it contains spaces or any non-alphanumeric characters.
Example: Rename the volume /dev/evms/John to /dev/evms/Fred.
The following command illustrates how to complete the above example:
r:/dev/evms/John,n=Fred
REVERT
The Revert command strips away the topmost layer of
an EVMS volume or storage object and restores it to its
previous EVMS state. Thus, an EVMS Volume will revert to the
EVMS Storage Object that it came from. The Revert can
be abbreviated as "Rev" on the command line.
The Revert Command has the following syntax:
Revert :
Volume or Storage Object
Volume or Storage Object
is the name of the volume or storage object to revert.
Example: In this example, assume that you have just created a storage object named "Fred" from a storage object named "Barney." Fred is a complicated storage object that would take time to recreate. However, after creating Fred, you find out that you applied the wrong feature to Barney to create Fred. To remove the feature that was applied to Barney to create Fred without having to delete Fred and start from scratch, type the following command:
Rev:Fred
The Revert command will strip away the top most feature on Fred undoing the creation of Fred and leaving Barney.
SET
The Set command changes options on storage objects,
regions, containers, segments, or disks. If a Query command
which returns storage objects, regions, containers,
segments, or disks is executed using the List Options Pseudo
Filter, then the changeable options for each item returned
will be listed with that item.
The Set command has the following syntax:
Set :
Object , Name = Value
, ... , Name
= Value
where
Object |
is the name of a storage object, region, container, segment or disk whose options are to be changed. | ||
Name |
is the name of an option that can be set for Object. | ||
Value |
is an acceptable value for option Name. |
SHRINK
The Shrink command reduces the size of a volume,
storage object, or storage container. This command can be
abbreviated as the letter "S" on the command line.
Reducing the Size of a Storage Container
You can reduce the size of a storage container by removing one or more of the segments or regions it contains.
The Shrink command has the following syntax when used with storage containers:
Shrink : Container Name , Storage To Remove ... Storage To Remove
where
Shrink |
can be abbreviated by the single letter ’S’. |
Container Name
is the name of the storage container to shrink.
Storage To Remove
is the name of a segment or region in the storage container that is to be removed from the storage container.
Reducing the Size of a Volume or Storage Object
An EVMS volume or storage object can be comprised of one or more storage objects, regions, segments, or disks. Whether or not a volume or storage object can be shrunk depends upon how it is constructed. For example, if a volume consists of a single segment with no EVMS features applied to it, then whether or not you can shrink the volume depends upon whether the segment manager that created that segment can decrease the size of that segment.
You can shrink a more complicated volume in several ways. For example, you can shrink a volume created from several segments using EVMS Drive Linking by decreasing the size of one of the segments being linked. You could also use EVMS Drive Linking to remove a segment from the volume. If you could do both options to shrink the volume, we say that the volume has multiple shrink points, because there are multiple ways in which the volume can be shrunk.
EVMS gives you control over how a volume is shrunk. To shrink a volume, you need to specify which shrink point to use. The same is true for storage objects. If there are two shrink points, the first would be the storage object created by EVMS Drive Linking. This storage object could be shrunk by removing a segment from it. The second shrink point would be the last segment used in the storage object formed by EVMS Drive Linking. While you might be able to shrink the other segments used to create this storage object, EVMS Drive Linking prohibits shrinking these segments.
To find the shrink points for a storage object or volume, use the Query Shrink Points command. Once the shrink points for a volume or storage object are known, they can be used with this command to shrink the volume or storage object.
The Shrink command has the following syntax:
Shrink : Shrink Point , Name = Value , ... , Name = Value , Storage to remove , ... , Storage to remove
where
Shrink Point
is the name of a shrink point as provided by the Query Shrink Points command.
Name |
is the name of an option supported by the plug-in module that controls Shrink Point. | ||
Value |
is an acceptable value for option Name |
Storage to remove
is the name of an acceptable storage object, region, segment, or disk to be shrunk or removed from the volume.
Example: This example assumes that you have a volume created from three segments using EVMS Drive Linking. The three segments used are sda1, sdb1, and sdc1. The storage object created by EVMS Drive Linking is called DL1, and the volume is called /dev/evms/Sample_Volume. The segment sdc1 is controlled by the Default Segment Manager (DefaultSegMgr), and it can be shrunk by 50 MB. The Query Shrink Points command returns DL1 and sdc1 as the available shrink points. Shrink the volume by 50 MB.
s:sdc1,size=50MB,sdc1
TASK
The Task command accesses features specific to an
EVMS plug-in module. The Task command can be used
directly on an EVMS plug-in module, or it can be used on a
volume storage object, region, segment, or container. When
used on a storage object, region segment, or container, the
command is directed to the plug-in module that owns the
storage object, region, segment, or container. When used on
a volume, the command is directed to the File System
Interface Module asociated with the volume.
The Task command has the following syntax:
Task : Task Name, Specify Target, Name=Value, . . . , Value, Specify Source, ... Specify Source
Where
Task Name
is the name of the task as defined by the EVMS plug-in that is expected to perform the task.
Specify Target
is the volume, object, region, segment, container, or plug-in that the task is to be performed on.
Name |
is the name of an option accepted by the plug-in that controls the specified target. | ||
Value |
is an acceptable value for option Name. |
Specify Source
is the name of a volume, object, region, segment to use when performing the specified task on the specified target.
UNFORMAT
The Unformat command destroys the filesystem within
the specified volume. This process is typically completed by
overwriting the metadata for the filesystem with zeros. All
data on the volume is lost. Unformat can be
abbreviated by the single letter "U" on the
command line.
The Unformat command has the following syntax:
Unformat : Volume
where
Volume |
is the name of the volume whose filesystem is to be destroyed. |