dmsetup(8) -- Linux man page
NAME
dmsetup - low level logical volume management
SYNOPSIS
dmsetup create
device_name [-u uuid] [--notable] [table_file]
dmsetup remove
device_name
dmsetup remove_all
dmsetup suspend
device_name
dmsetup resume
device_name
dmsetup load
device_name [table_file]
dmsetup clear
device_name
dmsetup reload
device_name [table_file]
dmsetup rename
device_name new_name
dmsetup ls [--target target_type] [--exec command]
dmsetup info
[device_name]
dmsetup info -c|-C|--columns [--noheadings] [-o name]
[device_name]
dmsetup deps
[device_name]
dmsetup status [--target target_type]
[device_name]
dmsetup table [--target target_type]
[device_name]
dmsetup wait
device_name
[event_nr]
dmsetup mknodes
[device_name]
dmsetup targets
dmsetup version
devmap_name
major minor
devmap_name
major:minor
DESCRIPTION
dmsetup manages logical devices that use the device-mapper driver.
Devices are created by loading a table that specifies a target for
each sector (512 bytes) in the logical device.
The first argument to dmsetup is a command.
The second argument is the logical device name or uuid.
Invoking the command as devmap_name is equivalent to
dmsetup info -c --noheadings -j major -m minor.
OPTIONS
- -c|-C|--columns
-
Display output in columns rather than as Field: Value lines.
- -j|--major
major-
Specify the major number.
-m|--minor minor-
Specify the minor number.
-n|--noheadings-
Suppress the headings line when using columnar output.
- --noopencount
-
Tell the kernel not to supply the open reference count for the device.
- --notable
-
When creating a device, don't load any table.
- -o|--options
-
Specify which fields to display. Only -o name is supported.
- -r|--readonly
-
Set the table being loaded read-only.
- -u|--uuid
-
Specify the uuid.
- -v|--verbose
-
Produce additional output.
- --version
-
Display the library and kernel driver version.
COMMANDS
- create
-
device_name [-u uuid] [--notable] [table_file]
Creates a device with the given name.
If table_file is supplied, the table is loaded and made live.
Otherwise a table is read from standard input unless --notable is used.
The optional uuid can be used in place of
device_name in subsequent dmsetup commands.
If successful a device will appear as
/dev/device-mapper/<device-name>.
See below for information on the table format.
- deps
-
[device_name]
Outputs a list of (major, minor) pairs for devices referenced by the
live table for the specified device.
- info
-
[device_name]
Outputs some brief information about the device in the form:
State: SUSPENDED|ACTIVE, READ-ONLY
Tables present: LIVE and/or INACTIVE
Open reference count
Last event sequence number (used by wait)
Major and minor device number
Number of targets in the live table
UUID
- ls
-
[--target target_type]
[--exec command]
List device names. Optionally only list devices that have at least
one target of the specified type. Optionally execute a command for
each device. The device name is appended to the supplied command.
- load|reload
-
device_name [table_file]
Loads table_file into the inactive table slot for device_name.
If table_file is not supplied, reads a table from standard input.
- remove
-
device_name
Removes a device. It will no longer be visible to dmsetup and
will be deleted when its open_count is zero.
- remove_all
-
Attempts to remove all device definitions i.e. reset the driver.
Use with care!
- rename
-
device_name new_name
Renames a device.
- resume
-
device_name
Un-suspends a device.
If an inactive table has been loaded, it becomes live.
Postponed I/O then gets re-queued for processing.
- status
-
[--target target_type]
[device_name]
Outputs status information for each of the device's targets.
With --target, only information relating to the specified target type
is displayed.
- suspend
-
device_name
Suspends a device. Any I/O that has already been mapped by the device
but has not yet completed will be flushed. Any further I/O to that
device will be postponed for as long as the device is suspended.
- table
-
[--target target_type]
[device_name]
Outputs the current table for the device in a format that can be fed
back in using the create or load commands.
With --target, only information relating to the specified target type
is displayed.
- targets
-
Displays the names and versions of the currently-loaded targets.
- version
-
Outputs version information.
- wait
-
device_name
[event_nr]
Sleeps until the event counter for device_name exceeds event_nr.
Use -v to see the event number returned.
To wait until the next event is triggered, use info to find
the last event number.
TABLE FORMAT
Each line of the table specifies a single target and is of the form:
logical_start_sector num_sectors target_type target_args
There are currently three simple target types available together
with more complex optional ones that implement snapshots and mirrors.
- linear
-
destination_device start_sector
The traditional linear mapping.
- striped
-
num_stripes chunk_size [destination start_sector]+
Creates a striped area.
e.g. striped 2 32 /dev/hda1 0 /dev/hdb1 0
will map the first chunk (16k) as follows:
LV chunk 1 -> hda1, chunk 1
LV chunk 2 -> hdb1, chunk 1
LV chunk 3 -> hda1, chunk 2
LV chunk 4 -> hdb1, chunk 2
etc.
- error
-
Errors any I/O that goes to this area. Useful for testing or
for creating devices with holes in them.
EXAMPLES
# A table to join two disks together
0 1028160 linear /dev/hda 0
1028160 3903762 linear /dev/hdb 0
# A table to stripe across the two disks,
# and add the spare space from
# hdb to the back of the volume
0 2056320 striped 2 32 /dev/hda 0 /dev/hdb 0
2056320 2875602 linear /dev/hdb 1028160
AUTHORS
Original version: Joe Thornber (thornber@sistina.com)
SEE ALSO
Device-mapper resource page: http://sources.redhat.com/dm/
|