Top |
CreateVolume (IN s name, IN o device, IN t logical_size, IN t index_memory, IN b compression, IN b deduplication, IN s write_policy, IN a{sv} options, OUT o vdo); ActivateVolumeByName (IN s name, IN a{sv} options); StartVolumeByName (IN s name, IN b force_rebuild, IN a{sv} options, OUT o vdo);
This interface provides a way to create new and activate or start existing VDO volumes. Once a volume has been started an additional org.freedesktop.UDisks2.Block.VDO interface will be exported on the related block object.
There are several limitations introduced by the backing vdo
tool that are reflected in the org.freedesktop.UDisks2.Manager.VDO interface.
The vdo
tool operates on VDO names and can't take block
device path as an identifier. Volumes that are in stopped state don't expose
any udev
attribute containing VDO name or any other information
that can be used for identification. That means that some of the
org.freedesktop.UDisks2.Block.VDO interface methods take VDO volume name
as an argument instead of an object path to the backing block device.
For the moment the VDO configuration file is not used to retrieve any extra information.
Since 2.8.0
CreateVolume (IN s name, IN o device, IN t logical_size, IN t index_memory, IN b compression, IN b deduplication, IN s write_policy, IN a{sv} options, OUT o vdo);
Creates a VDO volume from device
and its associated index and makes it available.
Known write_policy
values include:
sync |
Writes are acknowledged only after data is on stable storage. 'sync' policy is not supported if the underlying storage is not also synchronous. |
async |
Writes are acknowledged when data has been cached for writing to stable storage; data which has not been flushed is not guaranteed to persist in this mode. |
auto |
VDO will check the storage device and determine whether it supports flushes. If it does, VDO will run in async mode, otherwise it will run in sync mode. |
|
The VDO volume name. |
|
Object path to an object implementing the #org.freedesktop.UDisks2.Block interface, used as an underlying storage device. |
|
Logical VDO volume size in bytes or 0 for default (size of |
|
Amount of index memory in bytes or 0 for default. Note that only some sizes are valid here (0.25, 0.5 and 0.75 GB and integer multiples of 1 GB). Invalid sizes will be rounded DOWN to nearest GB (or one of the allowed decimal values). |
|
Enables or disables compression when creating a VDO volume. |
|
Enables or disables deduplication when creating a VDO volume. |
|
Specifies the write policy. |
|
Additional options (currently unused except for standard options). |
|
An object path to the object implementing the org.freedesktop.UDisks2.Block.VDO interface. |
Since 2.8.0
ActivateVolumeByName (IN s name, IN a{sv} options);
Activates existing VDO volume. Activated volume can be started using the StartVolumeByName() method call.
|
Name of an existing VDO volume to activate. |
|
Additional options (currently unused except for standard options). |
Since 2.8.0
StartVolumeByName (IN s name, IN b force_rebuild, IN a{sv} options, OUT o vdo);
Starts a stopped, activated VDO volume and associated services. Deactivated volumes need to be activated using the ActivateVolumeByName() method call prior to starting. Since a volume index rebuild may be required a job object will be exposed for this operation.
|
The VDO volume name. |
|
Forces an offline rebuild of a read-only VDO's metadata before starting so that it may be brought back online and made available. This option may result in data loss or corruption. |
|
Additional options (currently unused except for standard options). |
|
An object path to the object implementing the org.freedesktop.UDisks2.Block.VDO interface. |
Since 2.8.0