Linux Storage
Linux storage is a stack that turns disks or remote logical units into files visible at mount points. Block devices, partitions, device mapper, LVM, file systems, and mounts are separate layers with separate state and tools.
itLinux | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic: Linux Storage
Linux storage is the collection of layers that turns a disk, a virtual disk, or a remote logical unit into files at a directory. This sounds like one job because applications only see paths. Linux keeps the useful thing visible at the top and the important thing visible underneath several other things.
Start at a path such as /var/lib. A mount point attaches a file system to that directory, and the file system supplies files, directories, allocation, and metadata. Beneath it might be an LVM logical volume, a block device allocated from a volume group. That group draws extents from physical volumes, which may be partitions or whole devices. The same data can therefore have several names. They are colleagues, not aliases.
The useful mental model is a stack, not a disk. findmnt starts with the path and identifies the mounted file system. lsblk follows the block-device family tree. blkid identifies file systems, while pvs, vgs, and lvs describe the LVM layer. Each command answers a different question. Asking df whether a volume group has free extents is like asking a street map whether the building has spare keys. It has a map. It is not that map.
This distinction matters during change and failure. Extending a logical volume changes a lower boundary but does not necessarily grow its file system. A file system can run out of inodes while data blocks remain. A thin pool can exhaust metadata while its data usage looks tolerable. Mounting over a nonempty directory hides the entries underneath, which is unsettling but not evidence that they vanished into a storage dimension.
The surprise is that the safest action is often to stop and trace. Before partitioning, formatting, resizing, or removing anything, confirm the device size, model, serial, transport, active holders, and mounted descendants. Use durable identifiers for persistent mounts because short discovery-order device names can change. Then verify not only that a command succeeded, but that the application can read and write through the intended mount.
Read the Introduction for the complete layer model and the decisions around partitions, LVM, file systems, and mounts. Use the Cheatsheet when an incident demands a specific diagnostic view. The Reference tab carries the official procedures for LVM, device management, and kernel behavior. The quiz checks whether the boundaries have become less mysterious, which is the closest storage gets to being polite.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html/managing_storage_devices/overview-of-available-storage-options
Supports
- Linux local and remote storage layers
- Partitions, block storage, file storage, LVM, iSCSI, Fibre Channel, NVMe, and multipath
- https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html-single/configuring_and_managing_logical_volumes/index
Supports
- PV, VG, and LV architecture
- Resizing, snapshots, thin provisioning, caching, and LVM RAID
- https://docs.kernel.org/admin-guide/index.html
Supports
- Kernel administration references for block devices, device mapper, file systems, and RAID
- https://www.kernel.org/doc/html/v6.7/filesystems/ext2.html
Supports
- ext2 was originally released in January 1993
- https://www.kernel.org/pub/linux/kernel/v2.6/
Supports
- Published Linux 2.6 release archive dates, including 2.6.0 and 2.6.29
- https://sourceware.org/dm/
Supports
- Device Mapper has been a Linux kernel component since version 2.6 and supports logical volume management
- https://www.kernel.org/doc/ols/2005/ols2005v1-pages-155-176.pdf
Supports
- Linux multipathing design using a device-mapper I/O stack
- https://man7.org/linux/man-pages/man5/ext4.5.html
Supports
- ext4 extent, 64-bit, and related features are available from Linux 2.6.28
- https://btrfs.readthedocs.io/en/stable/Kernel-by-version.html
Supports
- Btrfs entered Linux 2.6.29 release candidates in January 2009
- https://www.kernel.org/doc/html/latest/filesystems/fsverity.html
Supports
- ext4 supports fs-verity since Linux 5.4 and Btrfs since Linux 5.15
- https://sourceware.org/lvm2/
Supports
- LVM2 userspace tooling for physical volumes, volume groups, and logical volumes
- https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git
Supports
- mdadm manages Linux MD software RAID devices
- https://gitlab.com/cryptsetup/cryptsetup
Supports
- cryptsetup configures dm-crypt and LUKS storage encryption
- https://github.com/opensvc/multipath-tools
Supports
- multipath-tools manages Linux multipathed block devices
- https://openzfs.github.io/openzfs-docs/
Supports
- OpenZFS documentation for pools, datasets, volumes, snapshots, and Linux administration
- https://access.redhat.com/solutions/3251681
Supports
- A full LVM thin-pool metadata volume can prevent activation after reboot and require manual repair
