Skip to content

Mount Points in Linux — Understanding Filesystems and Storage Mounting

A mount point is a directory where a storage device, partition, or remote filesystem becomes accessible in the Linux filesystem hierarchy. Unlike Windows, which uses drive letters (C:, D:, E:), Linux integrates all storage devices into a single directory tree using mount points. Understanding mount points is essential for Linux administration, cloud computing, Kubernetes, Docker, storage management, and production infrastructure.


Learning Path

Linux Mastery → Module 4: File Management and Permissions → Lesson 9

Difficulty: Intermediate

Reading Time: 50 Minutes

Course Progress

Course: Linux Mastery

Module: File Management and Permissions

Lesson: 9 of 10


What You'll Learn

After completing this lesson, you'll be able to:

  • Understand mount points
  • Learn the Linux filesystem hierarchy
  • Mount and unmount filesystems
  • View mounted filesystems
  • Configure persistent mounts
  • Understand /etc/fstab
  • Troubleshoot mount failures
  • Manage storage in production

Prerequisites

Complete:

  • Module 1 – Linux Fundamentals
  • Module 2 – Command Line Essentials
  • Module 3 – Text Processing
  • Module 4 Lessons 1–8

Why Learn Mount Points?

Imagine your production server has:

  • 1 SSD for the operating system
  • 2 SSDs for databases
  • 1 NFS share for backups
  • 1 cloud storage volume

How does Linux make all these devices appear as one unified filesystem?

The answer is mount points.


Linux Storage Philosophy

Unlike Windows:

C:\

D:\

E:\

Linux has only one filesystem tree.

/

Every storage device becomes part of this tree after it is mounted.


What is a Mount Point?

A mount point is simply a directory where another filesystem is attached.

Example:

/

├── home

├── var

├── opt

└── data

Suppose:

/dev/sdb1

is mounted on:

/data

Now all files stored on /dev/sdb1 are accessed through:

/data

Visual Representation

Before mounting:

Filesystem

/

└── data (empty directory)

After mounting:

/

└── data



   SSD Disk

The contents of the mounted filesystem become visible through the mount point.


Viewing Mounted Filesystems

Display mounted filesystems.

mount

Example:

/dev/sda1 on / type ext4

/dev/sdb1 on /data type ext4

Better View

findmnt

Example:

TARGET    SOURCE

/         /dev/sda1

/data     /dev/sdb1

Display Disk Usage

df -h

Example:

Filesystem      Size Used Avail Mounted on

/dev/sda1        40G 20G 18G /

/dev/sdb1       500G 100G 400G /data

Display Block Devices

lsblk

Example:

NAME

sda

├─sda1

sdb

└─sdb1

Include mount points.

lsblk -f

Mounting a Filesystem

Create a mount point.

sudo mkdir /data

Mount.

sudo mount /dev/sdb1 /data

Verify.

df -h

mount

findmnt

Access Files

Once mounted:

cd /data

ls

You are now working directly with the mounted filesystem.


Unmounting

Syntax:

sudo umount /data

or

sudo umount /dev/sdb1

Verify.

findmnt

Why Unmount?

Always unmount removable storage before disconnecting it.

This ensures:

  • Pending writes are completed
  • Filesystem corruption is avoided
  • Metadata is synchronized to disk

Busy Filesystem

Error:

target is busy

Determine which process is using the mount.

lsof +D /data

or

fuser -vm /data

After stopping the processes, unmount again.


Temporary vs Persistent Mounts

Temporary:

mount

Valid until reboot.

Persistent:

/etc/fstab

Automatically mounted during system startup.


Understanding /etc/fstab

Display.

cat /etc/fstab

Example:

UUID=xxxx-xxxx

/data

ext4

defaults

0

2

Fields:

Field Description
Device UUID or device name
Mount Point Directory
Filesystem ext4, xfs, etc.
Options Mount options
Dump Backup flag
Pass Filesystem check order

Why Use UUID?

Instead of:

/dev/sdb1

Use:

UUID=4A8F...

Device names can change between reboots, but UUIDs remain consistent.

View UUIDs.

blkid

or

lsblk -f

Test fstab

After editing:

sudo mount -a

If there are no errors, the configuration is valid.


Mount Options

Common options.

Option Meaning
defaults Standard options
ro Read Only
rw Read/Write
noexec Prevent execution
nosuid Ignore SUID bits
nodev Ignore device files
noatime Don't update access time

Example:

UUID=xxxx

/data

ext4

defaults,noatime

0

2

Mounting ISO Images

sudo mount -o loop ubuntu.iso /mnt

Network Filesystems

NFS.

sudo mount server:/backup /mnt/backup

SMB/CIFS.

sudo mount -t cifs

Common Commands

View mounts.

mount

findmnt

Disk usage.

df -h

Block devices.

lsblk

Mount.

mount

Unmount.

umount

Filesystem IDs.

blkid

Real Production Examples

Mount database storage.

/data

Mount application storage.

/opt/app

Mount backup storage.

/backup

Mount Kubernetes persistent volume.

/var/lib/kubelet

Mount Docker storage.

/var/lib/docker

Production Perspective

Mount points are used extensively in:

  • Linux servers
  • Cloud VMs
  • Kubernetes Persistent Volumes
  • Docker volumes
  • NAS devices
  • SAN storage
  • NFS servers
  • Backup systems

Understanding mount points is critical for storage administration and troubleshooting.


Hands-on Lab

Task 1

Display mounted filesystems.

mount

Task 2

Display block devices.

lsblk

Task 3

Display UUIDs.

blkid

Task 4

Display mounted tree.

findmnt

Task 5

Display disk usage.

df -h

Task 6

Create a mount point.

sudo mkdir /mnt/demo

(Do not mount a production device unless you understand the impact.)


Task 7

Inspect /etc/fstab.

cat /etc/fstab

Task 8

Validate fstab configuration.

sudo mount -a

Command Deep Dive

Command Purpose Production Example
mount Display or mount filesystems Storage management
umount Unmount filesystems Safe removal
findmnt Show mount tree Troubleshooting
df -h Filesystem usage Capacity planning
lsblk Display block devices Storage inventory
blkid Display UUIDs Persistent mounts

Production Troubleshooting Scenario

Scenario

A production application fails after a reboot because its data volume is missing.

Investigation:

findmnt

lsblk -f

cat /etc/fstab

journalctl -b | grep mount

The storage volume was configured using:

/dev/sdb1

After reboot, the kernel assigned it:

/dev/sdc1

Solution:

Replace the device name with its UUID in /etc/fstab.

Validate:

sudo mount -a

The application now finds the correct storage regardless of device naming.


Best Practices

  • Prefer UUIDs over device names in /etc/fstab.
  • Always test /etc/fstab with mount -a.
  • Unmount removable media before disconnecting.
  • Create meaningful mount point names.
  • Monitor disk usage with df -h.

Common Mistakes

❌ Using /dev/sdb1 in /etc/fstab when a UUID is more reliable.

✅ Avoid using /dev/sdb1 in /etc/fstab when a UUID is more reliable when a safer approach exists.


❌ Editing /etc/fstab without testing.

✅ A mistake can prevent the system from mounting filesystems correctly at boot.


❌ Removing a mounted USB drive without unmounting it first.

✅ This may lead to data loss or filesystem corruption.


Interview Questions

Beginner

  1. What is a mount point?
  2. Which command displays mounted filesystems?
  3. What does df -h show?
  4. What is /etc/fstab used for?

Intermediate

  1. Why should UUIDs be used instead of device names?
  2. What is the difference between mount and findmnt?
  3. How do you troubleshoot a "target is busy" error?
  4. What does mount -a do?

Architect Level

  1. How would you design persistent storage for a production application server?
  2. Why is correct mount configuration important for Kubernetes worker nodes?
  3. How would you troubleshoot storage failures after a server reboot?

Summary

In this lesson, you learned:

  • Linux mount points
  • Viewing mounted filesystems
  • Mounting and unmounting storage
  • Persistent mounts with /etc/fstab
  • UUIDs
  • Mount options
  • Production storage management
  • Troubleshooting mount failures

Mount points are a fundamental part of Linux storage management. They allow multiple local and remote filesystems to appear as a single unified directory tree, simplifying administration and enabling scalable storage architectures.


Key Takeaways

  • Linux uses a single filesystem hierarchy rooted at /.
  • A mount point is a directory where a filesystem is attached.
  • Use mount, findmnt, df, and lsblk to inspect storage.
  • Configure persistent mounts in /etc/fstab.
  • Prefer UUIDs over device names.
  • Always unmount removable storage before disconnecting it.

What's Next?

Disk Usage in Linux — Monitoring Storage and Filesystem Space

In the next lesson, you'll learn:

  • Monitoring filesystem usage with df
  • Measuring directory sizes with du
  • Tracking inode usage
  • Finding large files
  • Troubleshooting full disks in production