Course Content
🗓️ Day 1 – Getting Started with Linux
• Understand what Linux is and why it’s essential for DevOps and AI. • Learn basic terminal commands: pwd, ls, cd. • Explore the filesystem hierarchy and directory structure. • Practice moving around the shell confidently.
0/6
🗓️ Day 2 – Working with Files and Directories
• Create, view, and edit files using touch, cat, nano. • Organize directories with mkdir, rmdir, cp, mv. • Understand absolute vs. relative paths. • Hands‑on: build a mini project folder structure.
0/6
🗓️ Day 3 – Permissions and Ownership
• Learn how Linux manages read, write, and execute permissions. • Commands: chmod, chown, chgrp. • Understand user roles (root, user, group). • Practice fixing permission errors and securing files.
0/6
🗓️ Day 4 – Processes and Services
• Understand what processes are and how to monitor them. • Commands: ps, top, kill, systemctl. • Learn how services start, stop, and restart. • Hands‑on: manage a simple service like nginx or ssh.
0/6
🗓️ Day 5 – Networking and Remote Access
• Basics of IP addresses, ports, and protocols. • Commands: ping, ip, ssh, scp. • Learn secure remote connections and file transfers. • Practice connecting to a remote server.
0/6
🗓️ Day 6 – Shell Scripting Essentials
• Introduction to shell scripting and variables. • Write simple scripts using echo, loops, and conditionals. • Learn how to make scripts executable. • Hands‑on: automate a daily task (e.g., backup or log cleanup).
0/6
Introduction to the Linux Terminal

Welcome to Day 2! Yesterday was all about exploration and orientation. Today, you take off the tourist badge and put on the builder’s hat.

Before we start hammering out commands to create and delete things, we need to understand the fundamental philosophy of how Linux handles data. In Windows or macOS, files and folders feel like separate physical things. In Linux, the architecture is vastly more elegant—and it all starts with a famous Unix golden rule.

1. The Linux Philosophy: “Everything is a File”

If you remember only one concept from today’s lesson, make it this one: In Linux, everything is a file.

Linux does not look at a file, a folder, a printer, a hard drive, or a network connection as fundamentally different concepts. To the Linux operating system, they are all just streams of bytes exposed through the filesystem.

  • A text document? It’s a file.

  • A folder? It’s a specialized file containing a list of other file names.

  • Your laptop’s webcam or microphone? Linux treats them as virtual device files sitting in the system.

  • A running application process? Exposed as data inside a virtual directory file.

Because Linux simplifies the universe this way, if you learn how to create, copy, move, read, and delete a basic file, you have automatically learned the foundational mechanics for managing an entire cloud server.

2. Text Files vs. Configuration Files vs. Directories

While Linux treats them all as files under the hood, as a DevOps engineer or systems administrator, you will interact with three primary categories of data on a daily basis:

File Type Core Purpose Common Formats / Examples Description
Text Files Storing human-readable raw notes or documentation. .txt, .md (Markdown), README Straightforward files meant for human eyes to read instructions, logs, or project notes.
Configuration Files Acting as the active “blueprints” or settings for software applications. .conf, .yaml, .json, .ini, .xml These are highly structured text files that tell programs how to behave. For example, a configuration file tells a web server which port to listen on or where a database password is hidden.
Directories Organizing and mapping the filesystem structure. Folders (like /etc, /var, workspace/) A directory is simply a specialized index file whose sole job is to point the system to the physical locations of other files on the storage drive.

3. Why File Management is the Core of Cloud Administration

Beginners coming from a graphical environment often ask: “Where is the Control Panel? Where are the settings settings windows?”

In Linux, there is no Control Panel. System administration on a cloud server does not involve clicking through nested menus to change a setting. Instead, configuring a server boils down to a three-step file operation process:

  1. You use the terminal to navigate to a configuration file.

  2. You open that file and change a line of text (e.g., changing PORT=80 to PORT=8080).

  3. You save the file and restart the application.

If an application crashes, you don’t look for a pop-up window; you open a raw log file inside /var/log to read the error text. If you are deploying an AI model or a web application, you are physically copying code files from a developer’s machine into a system directory.

File management isn’t a boring prerequisite before you get to the “real” systems engineering work—file management is the systems engineering work. Master these files, and you master the cloud.