Understanding Linux directory structure is crucial for DevOps engineers, backend developers, and AI/ML practitioners working with servers, containers, and cloud instances. Every Linux system follows the Filesystem Hierarchy Standard (FHS) that organizes files predictably across AWS EC2, GCP VMs, Docker containers, and Kubernetes pods. Mastering these paths accelerates troubleshooting, deployment, log analysis, and system administration tasks.
Root Directory (/)
The top-level directory containing all other directories and files in the filesystem.
/: Root directory – starting point of entire filesystem hierarchy.- Use
ls -la /to see all top-level directories and their permissions.
User Data (Home)
User-specific files, configurations, and project directories for development work.
/home: Contains user home directories (e.g.,/home/ubuntu,/home/ec2-user)./root: Home directory for root user (system administrator).~or$HOME: Shortcut to current user’s home directory.- Dev use: Golang projects in
~/go/src, Python ML models in~/projects/ml.
System Binaries
Executable programs and commands accessible system-wide.
/bin: Essential user binaries (ls, cp, mv, cat, grep)./sbin: System binaries for administrators (ifconfig, iptables, fdisk)./usr/bin: User applications and utilities (docker, git, curl, aws)./usr/sbin: System administration commands (apache2ctl, mysql)./usr/local/bin: Locally compiled software (custom Go binaries).
Configuration Files
System and application configuration files for services and deployments.
/etc: Master configuration directory for all system services./etc/passwd,/etc/shadow: User account information./etc/nginx,/etc/postgresql: Web server and database configs./etc/systemd/system: Custom systemd service files for Docker, apps.
Logs and Temporary Files
System logs, runtime data, and temporary files for monitoring and debugging.
/var/log: Application and system logs (/var/log/syslog,/var/log/nginx/error.log)./var/tmp: Temporary files preserved between reboots./tmp: Temporary files deleted on reboot (avoid for important data).- DevOps use:
tail -f /var/log/cloud-init.logfor AWS EC2 boot logs.
Process and Runtime Data
Runtime information about running processes and system state.
/proc: Virtual filesystem with process and kernel information./proc/1: Information about PID 1 (init/systemd process)./proc/cpuinfo,/proc/meminfo: CPU and memory details./run: Runtime data for running processes and services.
Boot and Libraries
Bootloader files, shared libraries, and kernel modules.
/boot: Bootloader files, kernel images (vmlinuz, initrd)./lib,/lib64: Essential shared libraries./usr/lib: Application-specific libraries (Docker, Node.js, Python).
Mount Points and Storage
Separate filesystems, swap space, and mounted storage devices.
/mnt: Temporarily mounted filesystems./media: Removable media (USB drives, external disks)./opt: Optional add-on application software packages./srv: Site-specific data served by this system (web content, FTP).
Quick Navigation Commands
Essential commands for exploring the directory structure efficiently.
tree -L 2: Visual directory tree (install with apt/yum).du -sh /* | sort -hr: Largest directories by size.find /etc -name "*.conf" 2>/dev/null: Locate all config files.locate nginx: Fast file searching (update db withupdatedb).
Add comment