π What is a Filesystem?
A filesystem is the set of rules and organization tools an operating system uses to manage files.
Without a filesystem, a computer wouldn't know:
- Where one file begins
- Where another file ends
- How files are stored and retrieved
π§ The Word "Filesystem" Has 3 Meanings
The word filesystem is often used in three different ways:
| π’ Meaning | π Description |
|---|---|
| 1οΈβ£ The Method | The specific way files are organized |
| 2οΈβ£ The Space | A specific partition or disk used to store files |
| 3οΈβ£ The Type | The specific format being used, such as EXT2 |
Example:
"I have two filesystems"
could mean:
- Two partitions
- Two mounted storage areas
- Two filesystem structures
π½ The Partition vs. The Filesystem
A disk or partition is just a raw, empty storage space.
A filesystem is the structure written onto that space to make it usable.
πΉ Disk / Partition
Think of it as:
An empty piece of land
It has storage capacity but no organization.
πΉ Filesystem
Think of it as:
Roads, buildings, addresses, and maps built on the land
The filesystem organizes the storage space so files can be stored properly.
βοΈ Initialization
Before you can save files on a new partition, you must initialize it.
This process is called:
Making a filesystem
During initialization, Linux writes important bookkeeping structures onto the disk, such as:
| π Structure | π Purpose |
|---|---|
| Superblocks | Store filesystem metadata |
| Inodes | Store information about files |
| Allocation Tables | Track used and free space |
π Mounting
In Linux, the system does not automatically access files on a partition.
You must:
Mount the filesystem
Mounting attaches the filesystem to a folder called a:
Mount point
Example:
sudo mount /dev/sdb1 /mnt/data
This makes the files accessible through:
/mnt/data
β οΈ Why the Difference Matters
Understanding the difference between:
- The storage device
- The filesystem
is extremely important.
π₯οΈ Most Programs Need a Filesystem
Almost every application you use:
- Web browsers
- Word processors
- Media players
- Editors
requires a filesystem to work properly.
These programs cannot communicate directly with a raw disk.
π½ 1. Examples of a "Raw, Unformatted Disk"
A "raw" disk or partition is simply the physical or logical storage space before any organization (a filesystem) has been added to it.
In Linux, these are represented by device files found in the:
/dev
directory.
πΉ Entire Hard Drive
Example:
/dev/hda
This represents an entire raw hard drive.
πΉ Partitions on a Hard Drive
Examples:
/dev/hda1
/dev/hda2
These represent specific partitions (slices of space) on that hard drive.
πΉ Floppy Disk Drive
Example:
/dev/fd0
This represents a raw floppy disk drive.
π§ Important Concept
When you access these device files, you are interacting with:
The raw sectors of the hardware itself
rather than the files stored inside them.
π οΈ Specialized Low-Level Tools
Some special tools work directly with the raw physical sectors of a disk.
Examples include tools that:
- Create filesystems
- Partition disks
- Recover data
These tools bypass the filesystem layer completely.
π οΈ 2. Examples of "Specialized Tools"
Specialized tools are programs designed to interact directly with the hardware's raw sectors to prepare them for use or manage the storage structure.
πΉ mkfs - Make Filesystem
Example command:
mkfs.ext4 /dev/hda1
This tool is used for:
- Creating filesystems
- Initializing partitions
- Writing filesystem structures
It creates important bookkeeping structures such as:
| π Structure | π Purpose |
|---|---|
| Superblocks | Store filesystem metadata |
| Inodes | Store file information |
| Allocation Tables | Track used/free blocks |
πΉ fdisk - Partition Management
Example command:
fdisk /dev/hda
This tool is used to:
- Create partitions
- Delete partitions
- Modify partition tables
It works directly on the raw disk structure.
πΉ mkswap - Prepare Swap Space
Example command:
mkswap /dev/hda2
This prepares a partition to be used as:
Swap space (virtual memory)
instead of a regular filesystem.
β οΈ The Danger
If you use a specialized raw disk tool on a partition that already contains files:
- The filesystem may become corrupted
- Existing data may be destroyed
- The partition may become unreadable
This is because the tool writes directly to the disk sectors without caring about existing files.
π¨ Important Warning
Operations such as:
mkfs
fdisk
parted
can permanently destroy data if used incorrectly.
Always verify the target disk or partition before running low-level storage commands.
β οΈ 3. Why the Difference Matters (The Danger)
The distinction between:
- A raw disk
- A filesystem
is extremely important because of how programs interact with storage devices.
π¨βπ» Most Programs (The Users)
Applications such as:
- Web browsers
- Word processors
- Video players
- Editors
cannot understand raw disk sectors.
They require a:
Filesystem
to act as a map for locating and managing files.
Programs access storage through:
Mount points
such as:
/home
/var
/mnt/data
ποΈ Specialized Tools (The Builders)
Tools such as:
mkfs
fdisk
mkswap
do not use the filesystem map.
Instead, they write directly to:
Raw disk sectors
β οΈ The Danger
Suppose you run:
mkfs.ext4 /dev/hda2
on a partition that already contains files.
The tool will NOT:
- Check for your documents
- Protect your photos
- Ask whether important data exists
Instead, it will overwrite the filesystem metadata structures with a brand-new empty filesystem.
𧨠What Gets Destroyed?
The following critical structures may be overwritten:
| π Structure | β Result |
|---|---|
| Superblock | Filesystem metadata destroyed |
| Inodes | File references lost |
| Allocation Tables | Disk usage map erased |
π§© Important Detail
Even if the actual file data bits still physically exist on the disk:
The "map" used to locate those files is gone
As a result:
- Files become inaccessible
- The filesystem becomes corrupted
- Data recovery becomes difficult or impossible
β Quick Summary
| π Concept | π Explanation |
|---|---|
| Raw Disk | Physical storage sectors |
| Partition | A slice of disk storage (Raw storage space) |
| Filesystem | Organizational structure for files |
| Initialization | Creating filesystem structures |
| Mounting | Attaching filesystem to a directory |
| Raw Disk Tools | Access physical disk sectors directly |
/dev/hda1 |
Raw partition device |
mkfs |
Creates filesystems |
fdisk |
Manages partitions |
mkswap |
Creates swap space |
| Mount Point | Directory used to access a filesystem |
| Danger | Low-level tools can destroy filesystem metadata |
Top comments (0)