Linux System Structure

Understanding the Linux filesystem hierarchy and core components

Core Directories

/bin

Essential user command binaries

$ ls /bin

/etc

System-wide configuration files

$ cd /etc

/home

User home directories

$ cd ~

/usr

User programs and libraries

$ ls /usr/bin

/var

Variable data files

$ ls /var/log

Special Directories

/proc

Virtual filesystem for process info

$ cat /proc/cpuinfo

/sys

Kernel and device information

$ ls /sys/class

/dev

Device files

$ ls /dev/sd*

/tmp

Temporary files

$ mktemp -p /tmp

/mnt

Temporary mount points

$ mount /dev/sdb1 /mnt

System Admin

Log Files

System activity records

$ journalctl -xe

Cron Jobs

Scheduled tasks

$ crontab -e

Services

Systemd management

$ systemctl list-units

Kernel Modules

Hardware drivers

$ lsmod

Packages

Software management

$ dpkg -l | grep package

Config Files

/etc/fstab

Filesystem mounts

$ sudo nano /etc/fstab

/etc/passwd

User accounts

$ getent passwd

/etc/ssh/sshd_config

SSH server config

$ sudo systemctl restart sshd

/etc/hosts

Hostname resolution

$ cat /etc/hosts

/etc/resolv.conf

DNS configuration

$ resolvectl status

Hardware Info

CPU Details

Processor information

$ lscpu

Memory Info

RAM details

$ free -h

PCI Devices

Connected hardware

$ lspci

USB Devices

Connected peripherals

$ lsusb

Block Devices

Storage devices

$ lsblk

💡 Pro Tip: Use man hier to view the full filesystem hierarchy documentation!