libblockdev is a C library supporting GObject introspection for manipulation of block devices. It has a plugin-based architecture where each technology (like LVM, Btrfs, MD RAID, Swap,...) is implemented in a separate plugin, possibly with multiple implementations (e.g. using LVM CLI or the new LVM DBus API). Every plugin is also usable as a standalone shared library.
supported technologies: | |
---|---|
MBR, GPT, partition manipulation on partitionable devices |
|
functions: |
|
supported technologies: | |
---|---|
|
|
functions: |
|
supported technologies: | |
---|---|
"plain LVM", LVM Thin Provisioning |
|
TODO: |
|
functions: |
|
supported technologies: | |
---|---|
btrfs as both filesystem and multi-device volume, subvolumes, snapshots |
|
functions: |
|
supported technologies: | |
---|---|
swap partitions/LVs, swap files |
|
functions: |
|
supported technologies: | |
---|---|
all RAID levels supported by the MD RAID |
|
functions: |
|
supported technologies: | |
---|---|
LUKS1 and LUKS2 encrypted devices, TrueCrypt/VeraCrypt devices (open/close only) |
|
functions: |
|
supported technologies: | |
---|---|
just very basic functionality |
|
functions: |
|
supported technologies: | |
---|---|
basic operations with loop devices |
|
functions: |
|
supported technologies: | |
---|---|
basic operations with raw device mapper and DM RAID sets |
|
functions: |
|
supported technologies: | |
---|---|
DASD, zFCP |
|
functions: |
|
supported technologies: | |
---|---|
bcache, zram |
|
functions: |
|
supported technologies: | |
---|---|
namespaces |
|
functions: |
|
Standalone VDO plugin is deprecated since 2.24 and will be removed in upcoming 3.0. Deduplication and compression support is now provided by LVM VDO volumes and pools with support for these added in 2.23.
functions: |
|
---|
Library (not a plugin) providing utility functions usable for multiple plugins and any third-party code.
functions: |
|
---|