Storage and File System Administration
Storage and File System Administration
This domain covers capacity planning, RAID trade-offs, logical volume management, filesystem choice, and proving that data is where it should be.
Core rules
- RAID: 0 stripes (no redundancy), 1 mirrors, 5 stripes with one parity disk (survives one failure), 6 uses two parity (survives two), 10 mirrors then stripes. RAID is not backup.
- Partition tables: MBR is limited to 2 TiB and four primary partitions; GPT supports larger disks and many partitions. Use
partedorsgdisk. - LVM layers: physical volume (PV) → volume group (VG) → logical volume (LV). Extend an LV and grow the filesystem online with
lvextend -r. - Filesystems: ext4 is mature and supports online growth and offline shrinking; XFS excels at large files and parallel I/O but cannot shrink. NTFS/ReFS on Windows.
- Monitor with
df -h(capacity),df -i(inodes),du -sh,lsblk, andsmartctl -a. Set quotas withxfs_quotaoredquota.
Worked example
A /var volume is at 100% but du shows little data. Reasoning: check inodes first with df -i. A mail or session directory can create millions of tiny files and exhaust inodes while blocks remain free. If inodes are full, delete stale files (find /var/spool -type f -mtime +30 -delete) or rebuild with a higher inode count. If blocks are full, find large files with du -xh /var | sort -h | tail. Confirm a deleted file isn't held open by a process with lsof +L1.
Traps
- Extending a partition but forgetting
pvresizebeforelvextend. - Shrinking XFS - it is unsupported.
- Assuming RAID protects against deletion, ransomware, or controller failure.
- Ignoring inode exhaustion because
dulooks normal.