Disk-space alerts should be traced to the filesystem that contains the problem path before files are deleted or storage is resized. A directory such as /var can sit on the root filesystem while /var/log or an application subdirectory is mounted from different storage, so the active mount point and source need to be checked together.
The df command reports capacity for the mounted filesystem that contains a path. findmnt reads the live mount table from /proc/self/mountinfo and resolves that path to the mount target, backing source, filesystem type, and active mount options.
The commands identify filesystem boundaries, not the largest directory inside them. Use the resulting mount point for later filesystem-scoped checks, and inspect nested mounts separately when the path crosses into another filesystem.
Steps to check mount point usage with df and findmnt in Linux:
- Check capacity for the path showing space pressure.
$ df -hT /var Filesystem Type Size Used Avail Use% Mounted on /dev/vda2 ext4 59G 56G 1.2G 98% /
The Mounted on column is the filesystem boundary that contains the path, not the size of the directory tree at that path.
- Resolve the same path in the live mount table.
$ findmnt --target /var --output TARGET,SOURCE,FSTYPE,OPTIONS TARGET SOURCE FSTYPE OPTIONS / /dev/vda2 ext4 rw,relatime
SOURCE can be a local block device, logical volume, bind source, or remote export such as server:/share.
- Check a deeper path when a nested mount may be consuming the space.
$ df -hT /var/log Filesystem Type Size Used Avail Use% Mounted on /dev/vdb1 xfs 100G 88G 12G 89% /var/log
If Mounted on changes, run follow-up checks against that nested mount point instead of the parent path.
- List submounts below the affected path.
$ findmnt --ascii --target /var --submounts --output TARGET,SOURCE,FSTYPE TARGET SOURCE FSTYPE / /dev/vda2 ext4 `-/var/log /dev/vdb1 xfs--submounts keeps nested filesystems visible so usage under one path is not mistaken for usage on another mount.
- Match local block-device sources in lsblk output.
$ lsblk --paths --output NAME,TYPE,SIZE,FSTYPE,MOUNTPOINTS /dev/vda2 /dev/vdb1 NAME TYPE SIZE FSTYPE MOUNTPOINTS /dev/vda2 part 59G ext4 / /dev/vdb1 part 100G xfs /var/log
Skip lsblk for remote filesystems such as NFS or SMB because their SOURCE values are network exports, not local block devices.
Related: How to show disk information in Linux
Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.