Skip to content
Codeloom

Topics / Linux

Linux

The terminal, the file system, and the commands every developer should know.

Why learn Linux?

  • Runs over 90% of servers on the internet.

  • Powers Android, ChromeOS, most cloud, and even Mac dev workflows.

  • The terminal is faster than any GUI for thousands of tasks.

  • Foundational for DevOps, backend, and security careers.

What you can build with Linux

Server administration Daily development on macOS/WSL/Linux Writing scripts that automate work Operating Docker, Kubernetes, and CI systems

Linux tutorials

37 articles · page 1 of 2

Hand-written tutorials, ordered as a recommended learning path.

  1. 01 What is Linux? An honest, jargon-free introduction to Linux — what it actually is, how it differs from Windows and macOS, the role of distributions, and why developers gravitate toward it.
  2. 02 Terminal Basics Open a terminal, read the prompt, and learn the handful of conventions that make every command-line tool consistent. The foundation for everything else you will do on Linux.
  3. 03 Essential Commands Twenty commands that cover the overwhelming majority of day-to-day Linux work — navigation, file management, inspection, search, and processes — with runnable examples for each.
  4. 04 The File System A practical tour of the Linux file system hierarchy — what /etc, /var, /home, /usr, and friends are actually for, and how paths, mounts, and hidden files work.
  5. 05 File Permissions Read every rwx string at a glance, change permissions with chmod (symbolic and numeric), change ownership with chown, and understand when to use sudo. With runnable examples.
  6. 06 Shell Scripting Write your first bash scripts — shebangs, variables, arguments, conditionals, loops, command substitution, exit codes, and the safety line every script should start with.
  7. 07 awk and sed Master awk and sed for text processing on Linux. Learn pattern matching, field extraction, in-place editing, and real-world one-liners for log analysis.
  8. 08 systemd Services Learn how to create, configure, and manage custom systemd service units on Linux. Covers unit files, dependencies, timers, and troubleshooting.
  9. 09 awk Practical Guide Master awk for text processing on Linux with practical examples covering field extraction, pattern matching, and data transformation.
  10. 10 cgroups Resource Limits Learn how to use Linux cgroups to limit CPU, memory, and I/O for processes, and understand their role in containers.
  11. 11 iptables/nftables Firewall Learn how to configure Linux firewalls with iptables and nftables, including rules, chains, NAT, and migration strategies.
  12. 12 Namespaces & Containers Understand Linux namespaces and how they provide process isolation for containers, with hands-on examples using unshare.
  13. 13 sysctl Performance Tuning Learn how to tune Linux kernel parameters with sysctl for better network, memory, and filesystem performance.
  14. 14 sed Stream Editing Learn how to use sed for find-and-replace, line editing, and text transformation in Linux with practical examples.
  15. 15 SSH Tunneling Learn how to use SSH local, remote, and dynamic port forwarding to securely access services across networks.
  16. 16 strace Debugging Learn how to use strace to trace system calls, debug application issues, and understand what your programs are doing under the hood.
  17. 17 systemd Service Files Learn how to create, configure, and manage custom systemd service files for running your applications as Linux services.
  18. 18 tmux Productivity Master tmux for managing multiple terminal sessions, persistent remote work, and an efficient command-line workflow.
  19. 19 Process Management A comprehensive guide to Linux process management: ps, top, kill, signals, systemd services, cgroups, resource limits, and the tools you need to keep systems running.
  20. 20 cgroups Explained A practical introduction to Linux control groups. Learn what cgroups do, how v1 and v2 differ, and how Docker and Kubernetes use them to cap CPU and memory.