Skip to main content

Command Palette

Search for a command to run...

🚀 DevOps Learning Journey: Day 4 – Linux, Virtual Machines & DevOps

Published
5 min readView as Markdown
🚀 DevOps Learning Journey: Day 4 – Linux, Virtual Machines & DevOps

Hey people 👋

Welcome to Day 4 of my DevOps learning series! Today, I explored the basics of Linux and Virtual Machines (VMs) — the foundation of most DevOps tools and practices.

If you’re new to Linux or wondering what makes VMs so important in the IT world, this post is for you. Let’s break it down in the simplest way possible.


🐧 What is Linux?

Linux is an open-source operating system (OS) — just like Windows or macOS, but free and customizable. It is used widely in servers, cloud platforms, and almost every DevOps setup.

🤔 If we already have Windows and macOS, why Linux?

Here’s why Linux is preferred in IT:

  1. Security 🛡️
    Linux is more secure and less vulnerable to viruses. That’s why most servers and cloud systems run on it.

  2. User Management 👤
    Linux allows you to create multiple users, each with their own environment and permissions. It’s great for managing teams.

  3. Portability 💼
    You can create a Linux-based virtual machine (VM) and run it on any operating system — Windows, macOS, or even in the cloud.

  4. Backend Access 🔧
    Linux gives full control through the terminal (command line). Developers and DevOps engineers love it because they can automate everything using simple scripts.


🧾 Types of Linux (Distributions)

There are many versions of Linux. These are called distributions (or distros). Each is built for a specific use-case.

Linux DistributionBest ForWhy?
UbuntuBeginnersEasy to use, widely supported
RHEL (Red Hat)EnterprisesUsed by large companies, comes with support
Kali LinuxSecurity expertsHas built-in tools for ethical hacking
Arch LinuxAdvanced usersMinimal setup, very customizable
DebianServers & CompaniesStable and reliable, similar to Ubuntu

🧱 Linux Architecture (Explained in Simple Words)

Linux is built like a layered cake — each layer does a specific job, and all the layers work together to run your system. Here’s a simple breakdown:

🧩 Layers of Linux:

  1. Hardware – This is your actual computer: the CPU, memory, hard disk, etc.

  2. Kernel – Think of this as the brain of Linux. It talks directly to the hardware. When an app needs to save a file or use memory, the kernel handles it.

  3. System Libraries – These are helper files that apps use to talk to the kernel. One popular example is glibc, which provides basic functions like copying data or handling files.

  4. System Utilities – These are the everyday commands like ls, cp, mkdir. They let you interact with the system easily.

  5. User Interface (Shell) – This is what you see when you open the terminal. It can be Bash or any other shell that allows you to type and run commands.

  6. Applications – These are the tools and software you install like Docker, browsers, or text editors.

🧠 Real-Life Example: Copying a File

Imagine you’re copying a file from one folder to another using the command line:

You type: cp file.txt /home/pooja/folder

The terminal (UI) sends the command to the system utility (cp)

That utility uses system libraries (like glibc) to request access to memory and file storage

The kernel takes that request and tells the hardware to read from one location and write to another

The file gets copied, and you see it done instantly.

So while it looks like a single action to you, multiple layers are working behind the scenes to make it happen smoothly. That’s the beauty of Linux!


What is an VM?

A Virtual Machine is like a computer inside your computer.

You can install an operating system inside it.

It runs independently with its own memory, CPU, and storage.

But it shares the physical machine’s resources.

You can have many VMs on one laptop — each with a different OS, apps, and environment!


🆚 Virtual Machines vs Physical Servers

FeatureVirtual MachinePhysical Server
CostCheaper (run many VMs on one machine)Expensive to buy & maintain
Setup TimeQuick (can launch in minutes)Takes time to install/setup
FlexibilityEasy to modify, backup, or deleteNot as flexible
Use CaseTesting, development, automationProduction or large deployments

🚀 Why DevOps Engineers Use VMs

Virtual Machines have made the lives of DevOps engineers so much easier. Here’s how:

💡 Scenario 1: Testing Environments

Imagine you’re a developer. You want to test your app on Ubuntu and Red Hat.

· You create 2 VMs: one with Ubuntu, one with RHEL.

· Test your app on both without affecting your main system.

💡 Scenario 2: Practice Labs

You want to learn Kubernetes.

Set up 3 VMs on your laptop (1 master + 2 workers).

Connect them like a real cluster and practice.

💡 Scenario 3: Working in Teams

· Your company provides VMs to each DevOps engineer

· Everyone works in the same standard environment

· No one has to worry about “it works on my machine” problems

💰 Saves Money & Time

No need to buy 5 separate laptops — just 1 powerful machine + 5 VMs

Easy to snapshot, restore, or delete test environments


Let’s learn together. If you’re just starting too, drop a comment or share your experience!

✨ Happy Learning,

👩‍💻 Jyothi Urade | #FromCloudToOps

More from this blog

F

FromCloudToOps

39 posts

Welcome to FromCloudToOps! I document my DevOps and cloud computing journey, sharing real-world use cases, tools, and best practices from my experiences with cloud platforms and automation.