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).
![[Note]](../images/note.png)
Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://github.com/storaged-project/libblockdev/releases/download/3.0.4-1/libblockdev-3.0.4.tar.gz
Download MD5 sum: 74eed189c000cb3b0194c73c425c418c
Download size: 1.0 MB
Estimated disk space required: 13 MB
Estimated build time: 0.1 SBU
cryptsetup-2.4.3, gobject-introspection-1.78.1 (required for GNOME), keyutils-1.6.1, libbytesize-2.10, libnvme-1.6, and LVM2-2.03.23
btrfs-progs-6.6.1, GTK-Doc-1.33.2, mdadm-4.2, parted-3.6, volume_key, ndctl, and targetcli (for tests)
Install libblockdev by running the following commands:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-python3 \
--without-escrow \
--without-gtk-doc \
--without-lvm \
--without-lvm_dbus \
--without-nvdimm \
--without-tools &&
makeThe test suite requires targetcli, which is not a part of BLFS.
Now, as the root user:
make install
--without-escrow: This switch allows building
libblockdev without volume_key installed.
--without-lvm --without-lvm_dbus
--without-tools: The combination of these switches allows
building libblockdev without
parted-3.6 installed. Remove it if you've installed
parted-3.6 and wish to build the
lvm-cache-stats or vfat-resize
utilities, or wish libblockdev to support
logical volumes.
--without-btrfs --without-mdraid --without-tools:
The combination of these switches allows building
libblockdev without
libbytesize-2.10 installed. The
--without-mdraid option will break
UDisks-2.10.1, so don't use it unless you really know what
you are doing.
--without-crypto: This switch allows building
libblockdev without
cryptsetup-2.4.3 or keyutils-1.6.1 installed.
This switch will break UDisks-2.10.1, so don't use it
unless you really know what you are doing.
--without-dm --without-lvm --without-lvm_dbus
--without-mpath: The combination of these switches allows
building libblockdev without
LVM2-2.03.23 installed. The --without-dm
and --without-mpath options are not in the instructions
provided by the book because LVM2-2.03.23 is required for
cryptsetup-2.4.3 and cryptsetup-2.4.3 is a
recommended dependency of libblockdev anyway.
--without-nvme: This switch allows building
libblockdev without
libnvme-1.6 installed. This switch will break
UDisks-2.10.1, so don't use it unless you really know what
you are doing.