Skip to main content

Command Palette

Search for a command to run...

Exploring the Linux File System: What I Learned Beyond Basic Commands

Updated
5 min read
Exploring the Linux File System: What I Learned Beyond Basic Commands
A

I’m learning web development and sharing what I understand to help other beginners.

When most people start learning Linux, they focus on basic commands like ls and cd. That is helpful, but it only shows the surface.

The real power of Linux is hidden inside its file system.

Every folder in Linux has a purpose. It is not random. Each directory controls some part of how the system works.

In this exploration, I tried to go deeper. Instead of just using commands, I looked inside important folders like /etc, /proc, /dev, /var, and /boot.

I wanted to understand one simple thing:
How does Linux actually work behind the scenes?

Below are the most important things I discovered.

/etc – The Place That Controls Everything

The /etc folder stores system configuration files.

This folder is very important because it controls how the system behaves. Many important settings of Linux are stored here.

For example:

  • /etc/hosts

  • /etc/resolv.conf

These files directly control network behavior.

The main reason this folder exists is flexibility. Instead of hardcoding settings inside programs, Linux keeps them in files. So we can change behavior without changing code.

One important thing I learned is this:
A small change inside /etc can change how the whole system works.

DNS Configuration – /etc/resolv.conf

The file /etc/resolv.conf is used for DNS settings.

DNS is what converts domain names like google.com into IP addresses.

Without DNS, we would need to remember numbers instead of names.

This file tells the system which DNS server to use.

What I found interesting is that this is just a simple file. But changing it can affect how the internet works on your system.

So even though it looks small, it has a big impact.

User Management – /etc/passwd and /etc/shadow

Linux stores user information in two files:

  • /etc/passwd → user details

  • /etc/shadow → encrypted passwords

These files exist to manage users in a secure way.

Instead of storing everything in one place, Linux separates user data and passwords. This improves security.

One important thing I learned:

  • Passwords are not stored in plain text

  • Normal users cannot access /etc/shadow

This shows that Linux is designed with security in mind.

/proc – Live System Information

The /proc folder is very different from normal folders.

It shows system and process information in real time.

For example:

  • /proc/cpuinfo → CPU details

  • /proc/meminfo → memory details

These are not real files stored on disk. They are created by the system when you open them.

This folder exists to help users and programs understand what is happening inside the system.

The biggest insight for me was:
In Linux, even system data is treated like a file.

/dev – Hardware Becomes Files

The /dev folder contains device files.

In Linux, hardware like:

  • hard disks

  • USB devices

  • keyboard

are all treated as files.

This means programs can interact with hardware using simple file operations.

This design makes Linux very powerful and flexible.

What I learned is that Linux hides complexity by using a simple idea:
Everything is a file.

System Logs – /var/log

The /var/log folder stores system logs.

Logs are records of what is happening in the system.

They include:

  • login attempts

  • errors

  • service activity

This folder exists to help track problems and understand system behavior.

I learned that logs are very important for debugging.
If something goes wrong, logs are the first place to check.

Boot Files – /boot

The /boot folder contains files needed to start the system.

It includes:

  • kernel files

  • bootloader files

This folder is required for the system to start.

If this folder is missing or damaged, the system cannot boot.

This helped me understand that the startup process of Linux depends on these files.

System Services – /etc/systemd

The /etc/systemd folder manages system services.

Services are programs that run in the background.

This folder uses .service files to define how services should start and run.

This system exists to automate tasks and manage processes.

I learned that this is how Linux controls things like:

  • web servers

  • background jobs

  • system tasks

File Permissions and Security

Linux uses a permission system to control access.

Each file has:

  • read

  • write

  • execute

permissions.

This system exists to protect files and prevent misuse.

If permissions are set incorrectly, it can create security problems.

I learned that security in Linux depends heavily on correct permissions.

Networking and Routing

Linux also manages how data moves in a network.

Routing decides where data should go.

This is important for:

  • servers

  • internet communication

What I understood is that networking is not just commands. It is controlled by system files and configurations.

Conclusion

This exploration changed how I see Linux.

Before, I thought Linux was mainly about commands.

Now I understand that Linux is a structured system where everything is connected through files.

Folders like /etc, /proc, and /dev show how the system works internally.

This knowledge is very useful for developers, especially for backend and system-level understanding.

It helps not just in using Linux, but in understanding how systems actually work.