openskills.info
Course Preview

Linux File Systems

Linux file systems organize stored data as files and directories, record metadata such as ownership and timestamps, and connect storage to one shared directory tree. Linux uses a common virtual interface so local, network, memory-backed, and user-space file systems can serve the same file operations.

itLinux

Linux File Systems

A Linux file system turns storage or another data source into a hierarchy of named objects. Regular files hold byte sequences. Directories map names to objects. Metadata records an object's type, owner, permissions, size, timestamps, and other attributes. A mount attaches a file-system hierarchy at a directory in the process's visible directory tree.

Linux does not make every application understand ext4, XFS, Btrfs, NFS, or a user-space file system. The virtual file system, usually shortened to VFS, provides common operations such as open, read, write, rename, and stat. Each file-system implementation supplies methods behind that interface. This separation gives applications a mostly consistent path-based view while implementations choose different on-disk formats, allocation methods, durability rules, and network behavior.

The path from a name to data

Consider an application opening /var/lib/app/state.db. Path resolution starts from the process's root directory because the path begins with a slash. The kernel walks var, lib, app, and state.db one component at a time. Search permission on each directory controls whether traversal may continue. Symbolic links can redirect the walk, subject to resolution limits and safety controls.

The VFS uses several objects during this work:

  • A superblock represents one mounted file-system instance and its global state.
  • An inode represents one file-system object and its metadata. The inode does not contain the object's name.
  • A dentry, or directory-entry cache object, connects a name in a parent directory to an inode.
  • A file object represents one open instance, including the current file position and access mode.

Names and objects are separate. A directory entry associates a name with an inode number. More than one hard link can associate different names with the same inode. Removing one name does not remove the object while another hard link remains. An open file can also remain usable after its last name is unlinked; the file system reclaims it after the final reference closes.

After the lookup succeeds, the file-system driver translates logical file offsets into stored extents or blocks, remote requests, generated kernel data, or user-space operations. The block layer and device driver handle physical input and output for a typical local disk file system. Network file systems send requests to a server instead. Pseudo file systems such as proc expose kernel state without storing ordinary files on a disk.

Continue the course

This section is part of the paid course.

See pricing to subscribe, or log in if you already have access.

Where this skill leads

Relevant careers

See how this topic contributes to broader role-level skill maps.

Sources