Skip to content

Linux Directory Structure

Mahesh Shukla edited this page Sep 2, 2025 · 2 revisions

πŸ“ Linux Directory Structure

Prerequisite: Linux File Hierarchy Structure


πŸ“ Introduction

In Linux and Unix OS, everything is considered a file, including directories, regular files, and devices like mouse, keyboard, and printers.
This guide provides an in-depth overview of the Linux directory structure, including file types and directory hierarchy.


πŸ“‚ Types of Files in Linux

πŸ–‹ General Files * Ordinary files: images, videos, programs, text files * Can be **ASCII** or **Binary** format * Most commonly used files
πŸ“ Directory Files * Act as a warehouse for other files * Can contain subdirectories, creating a hierarchical structure
πŸ’» Device Files * Devices are represented as files, e.g., `/dev/sda1`, `/dev/sda2` * Unlike Windows drive letters

πŸ“‘ File Types Table

File Types Description
General Files Images, videos, programs, or text files
Directory Files Organize files, may include subdirectories
Device Files Represent hardware devices, e.g., /dev/sda1

πŸ—‚ Linux File System Hierarchy

The root directory / is the top of the Linux file system tree.

Directory Description
/bin Binary/executable programs
/etc System configuration files
/home Default user home directories
/opt Optional/third-party software
/tmp Temporary space, cleared on reboot
/usr User-related programs
/var Log files, variable data
πŸ”Ή Additional Directories
Directory Description
/boot Boot-related files
/dev Device files
/lib Kernel modules and shared libraries
/lost+found Recovered file fragments
/media Mount points for removable media
/mnt Temporary mount directories
/proc Virtual file system for process information
/run Volatile runtime data
/sbin System administration binaries
/srv Server-specific files
/sys Virtual filesystem for device information

πŸ” Notable Files in Linux

File/Directory Description
/boot/vmlinux Linux kernel file
/dev/hda Device file for first IDE HDD
/dev/hdc Pseudo-device for garbage output
/etc/bashrc Bash system defaults and aliases
/etc/crontab Scheduled tasks
/etc/fstab Disk mount points
/etc/group Security groups
/etc/grub.conf Grub bootloader configuration
/etc/init.d Service startup scripts
/etc/inittab Initialization processes and run levels
/etc/passwd Usernames and account info
/etc/resolv.conf DNS configuration
/usr/bin Executable files
/usr/include Standard header files for C programs
/usr/lib Object files and libraries
/proc/cpuinfo CPU information
/proc/filesystems Active filesystem info
/proc/ioports Input/Output addresses
/proc/meminfo Memory usage info
/version Linux version info
/var/log/lastlog Last login info
/var/log/messages Global system messages
/var/log/wtmp Login/logout history

βœ… Conclusion

Understanding the Linux directory structure is essential for:

  • Efficient system navigation
  • File management
  • Access to system resources

Note: Variations may exist across Linux distributions, but the core structure is consistent.

For detailed explanations and examples, refer to the Linux Directory Structure wiki page.

Clone this wiki locally