This is the next important step in your Linux System Administration learning path.
The goal is to create a Linux practice environment where you can safely learn commands, users, permissions, networking, services, storage, SSH, and troubleshooting.
1. What is a Virtual Machine?
A Virtual Machine (VM) is a computer created inside your existing computer using software.
For example:
Your Windows 11 Computer │ ▼ VirtualBox / VMware │ ▼ Virtual Machine │ ▼ Ubuntu Linux
Your physical computer is called the Host.
The Linux VM is called the Guest.
|
Term |
Meaning |
|
Host OS |
Your main operating system, e.g. Windows |
|
Guest OS |
Operating system installed inside VM |
|
Hypervisor |
Software that creates/manages VMs |
|
Virtual CPU |
CPU resources assigned to VM |
|
Virtual RAM |
RAM assigned to VM |
|
Virtual Disk |
Disk file used by VM |
|
ISO |
Linux installation image |
2. VirtualBox vs VMware
Two common options for learning Linux are:
|
Feature |
VirtualBox |
VMware Workstation |
|
VM software |
Oracle VirtualBox |
VMware Workstation |
|
Beginner friendly |
⭐⭐⭐⭐⭐ |
⭐⭐⭐⭐⭐ |
|
Linux support |
✅ |
✅ |
|
Windows host |
✅ |
✅ |
|
Networking practice |
✅ |
✅ |
|
Snapshot support |
✅ |
✅ |
|
Linux administration practice |
✅ |
✅ |
For your learning, VirtualBox is perfectly sufficient.
You don't need an expensive physical Linux server.
3. What You Need
For a beginner Ubuntu VM, prepare:
|
Requirement |
Recommended |
|
Host OS |
Windows 10/11 |
|
RAM |
8 GB+ host recommended |
|
VM RAM |
2–4 GB |
|
Storage |
25–40 GB |
|
CPU |
2 virtual CPUs |
|
Internet |
Recommended |
|
Linux ISO |
Ubuntu Desktop or Ubuntu Server |
|
VM Software |
VirtualBox or VMware |
Important
Your computer needs hardware virtualization enabled.
Common names in BIOS/UEFI:
Intel VT-x Intel Virtualization Technology AMD-V SVM Mode
4. Download Ubuntu
For learning Linux administration, I recommend Ubuntu because it is beginner-friendly and widely used in cloud environments.
Download an Ubuntu ISO from the official Ubuntu website:
You will generally choose between:
Ubuntu Desktop
Has a graphical interface:
Ubuntu ↓ Desktop ↓ Terminal
Good for beginners.
Ubuntu Server
Mostly command-line based:
Ubuntu Server ↓ CLI ↓ Commands
For System Administration/DevOps practice, Ubuntu Server is especially useful.
5. Install VirtualBox
Download VirtualBox from the official website:
Install it on Windows using the normal installation process.
After installation, you should see something similar to:
┌─────────────────────────────┐ │ VirtualBox │ ├─────────────────────────────┤ │ │ │ [+] New │ │ ⚙ Settings │ │ ▶ Start │ │ │ │ No virtual machines │ │ │ └─────────────────────────────┘
6. Create Your First Ubuntu VM
Open VirtualBox.
Click:
New
Enter:
Name: Ubuntu-Linux-Lab
Choose the Ubuntu ISO you downloaded.
For a current VirtualBox release, the setup screens can vary slightly, but the important configuration is the same.
7. Allocate RAM
Example:
Host Computer │ ├── Windows → 4 GB+ │ └── Ubuntu VM → 4 GB
If your computer has:
8 GB RAM
Use approximately:
Ubuntu VM → 2–4 GB
16 GB RAM
You can comfortably use:
Ubuntu VM → 4 GB
32 GB RAM
You can allocate more when needed for multiple VMs.
Don't allocate all your RAM to the VM.
8. Allocate CPU
For basic Linux administration:
Processor → 2 CPUs
That's enough for:
- Linux commands
- Bash
- Git
- SSH
- Apache
- Nginx
- Docker basics
- Networking practice
9. Create Virtual Hard Disk
Choose a virtual disk.
Recommended:
Disk Size → 25–40 GB
For example:
Ubuntu-Linux-Lab.vdi
The .vdi file is the virtual hard disk used by VirtualBox.
Think of it as:
Physical SSD ↓ Ubuntu-Linux-Lab.vdi ↓ Virtual Linux Disk
10. Start the VM
Select:
Ubuntu-Linux-Lab
Click:
Start
Ubuntu will boot from the ISO.
You should see the Ubuntu installation screen.
11. Install Ubuntu
Follow the installer.
Typical choices include:
Language ↓ Keyboard ↓ Network ↓ Installation type ↓ User creation ↓ Timezone ↓ Install
Create a normal user, for example:
Username: linuxuser
You will use this account for normal Linux work.
12. Root vs Normal User
This is extremely important for Linux administration.
Linux commonly has:
root ↓ Superuser / Administrator
and:
linuxuser ↓ Normal user
When you need administrative privileges, use:
sudo command
Example:
sudo apt update
You may be asked for your user's password.
Don't work as root all the time.
A good administrator normally uses a normal account and uses sudo when administrative privileges are required.
13. First Login
After installation, log into Ubuntu.
Open Terminal.
You can use:
Ctrl + Alt + T
Then run:
whoami
Example:
linuxuser
Check the hostname:
hostname
Check your current directory:
pwd
Check the Linux version:
cat /etc/os-release
Check kernel information:
uname -a
14. First Linux Environment Check
Run these commands one by one:
whoami hostname pwd ls date uname -a cat /etc/os-release
You are learning to answer:
|
Question |
Command |
|
Who am I? |
whoami |
|
What is my computer name? |
hostname |
|
Where am I? |
pwd |
|
What's here? |
ls |
|
What date/time is it? |
date |
|
What kernel am I using? |
uname -a |
|
Which Linux distribution? |
cat /etc/os-release |
15. Update Ubuntu
After installation, update the package information:
sudo apt update
Then upgrade installed packages:
sudo apt upgrade
You can also use:
sudo apt update && sudo apt upgrade
Difference
apt update ↓ Refresh package information apt upgrade ↓ Install available updates
16. Install Some Basic Tools
For your Linux administration lab:
sudo apt install curl wget git vim nano tree net-tools
Then test:
git --version curl --version wget --version vim --version
17. Create Your Linux Practice Directory
Let's create a dedicated practice area.
mkdir ~/linux-lab
Enter it:
cd ~/linux-lab
Check:
pwd
Create directories:
mkdir files users networking services
Check:
ls
You should see:
files networking services users
This can become your Linux administration practice laboratory.
18. Take a VM Snapshot ⭐
Snapshots are extremely useful while learning.
Suppose you reach a clean Ubuntu installation:
Ubuntu Installed ↓ Updates Complete ↓ Basic Tools Installed ↓ Take Snapshot
Name it:
Clean-Ubuntu-Lab
If you later break something while practicing, you can restore the snapshot.
Example
Before Experiment ↓ Snapshot ↓ Change configuration ↓ Something breaks ❌ ↓ Restore Snapshot ↓ Clean system ✅
This is one of the best advantages of using a VM for learning.
19. VirtualBox Networking Modes
Networking is extremely important for Linux administrators.
VirtualBox provides several network modes.
|
Mode |
Simple Meaning |
Common Use |
|
NAT |
VM uses host's internet |
Basic internet access |
|
Bridged Adapter |
VM appears on your LAN |
Network/server practice |
|
Host-only |
Host ↔ VM private network |
Lab environments |
|
Internal Network |
VM ↔ VM network |
Multi-server labs |
Beginner setup
Start with:
NAT
Later, create more advanced labs using:
Host-only + NAT
For example:
Internet │ Router │ Windows Host │ ┌───────────┴───────────┐ │ │ Ubuntu Server 1 Ubuntu Server 2 │ │ └──── Host-only LAN ────┘
This allows you to practice:
- SSH
- Ping
- IP addressing
- DNS
- Apache
- Nginx
- Client/server communication
20. VMware Installation — Same Concept
If you prefer VMware, the overall process is almost identical:
Install VMware ↓ Download Ubuntu ISO ↓ Create New VM ↓ Select Ubuntu ISO ↓ CPU → 2 ↓ RAM → 2–4 GB ↓ Disk → 25–40 GB ↓ Start VM ↓ Install Ubuntu ↓ Update system ↓ Take snapshot
The names of buttons/options may differ slightly.
21. Virtual Machine vs AWS EC2
Since you're also learning AWS, this distinction is very useful.
|
Local VM |
AWS EC2 |
|
Runs on your computer |
Runs in AWS |
|
VirtualBox/VMware |
AWS virtualization |
|
Uses your RAM/CPU |
Uses AWS resources |
|
Local practice |
Cloud practice |
|
Usually no cloud cost |
Can incur AWS charges |
|
Great for experiments |
Great for cloud/server practice |
Conceptually:
LOCAL LAB Windows PC ↓ VirtualBox ↓ Ubuntu VM ↓ Linux Administration
versus:
CLOUD LAB AWS ↓ EC2 ↓ Ubuntu ↓ SSH ↓ Linux Administration
The Linux commands you learn are largely transferable between the two.
---------
22. Linux Installation — WSL
If you are using Windows 11, WSL (Windows Subsystem for Linux) is one of the easiest ways to earn Linux without installing VirtualBox or VMware.
a. What is WSL?
WSL = Windows Subsystem for Linux
It allows you to run a Linux environment directly inside Windows.
┌──────────────────────────────┐ │ Windows 11 │ │ │ │ VS Code / Chrome / Apps │ │ │ │ ┌──────────────────────┐ │ │ │ WSL │ │ │ │ │ │ │ │ Ubuntu Linux │ │ │ │ │ │ │ │ Bash | Linux Tools │ │ │ └──────────────────────┘ │ └──────────────────────────────┘
b. WSL vs VirtualBox
|
Feature |
WSL |
VirtualBox |
|
Installation |
Easy |
More setup |
|
Performance |
Lightweight |
Uses more resources |
|
Linux GUI |
Available with WSLg |
Full VM desktop |
|
Linux CLI |
✅ Excellent |
✅ Excellent |
|
Linux administration practice |
✅ |
✅ |
|
Full virtual machine |
❌ |
✅ |
|
Snapshots |
Different approach |
✅ |
|
Beginner |
⭐⭐⭐⭐⭐ |
⭐⭐⭐⭐ |
|
DevOps practice |
⭐⭐⭐⭐⭐ |
⭐⭐⭐⭐⭐ |
My recommendation
For your current Linux + AWS + Docker + DevOps learning, start with:
WSL + Ubuntu
Later, use an Ubuntu VM or AWS EC2 when you need to practice full server/network environments.
c. Check Your Windows Version
Open PowerShell as Administrator.
Run:
winver
You can also check WSL:
wsl --status
If WSL isn't installed, Windows will tell you.
d. Install WSL
The easiest method on modern Windows is:
PowerShell → Run as Administrator
Then:
wsl --install
This normally installs WSL and a default Linux distribution.
After installation, restart Windows if prompted.
e. Install Ubuntu Specifically
You can install Ubuntu with:
wsl --install -d Ubuntu
Then restart if requested.
After Windows restarts, Ubuntu may open automatically.
You'll see something similar to:
Installing, this may take a few minutes...
Then:
Enter new UNIX username:
Create your Linux username.
Example:
linuxuser
Then create a Linux password.
⚠️ Important: When entering a Linux password in the terminal, you normally won't see * characters. That's normal.
f. Start Ubuntu
After installation, you can open:
Start Menu → Ubuntu
Or from PowerShell:
wsl
You should get a Linux shell:
linuxuser@DESKTOP:~$
Congratulations — you are now inside Linux. 🎉
🎯 Best setup for your learning
Because you're progressing toward Linux System Administration + AWS + Docker + Jenkins/DevOps, a very practical setup is:
WINDOWS 11 │ ┌────────────┼────────────┐ ↓ ↓ ↓ VS Code Docker Desktop Browser │ │ └────────────┼────────────┘ ↓ WSL 2 ↓ Ubuntu ↓ ┌────────────┼────────────┐ ↓ ↓ ↓ Linux Git Docker │ ↓ System Administration │ ├── Files ├── Users ├── Permissions ├── Processes ├── Services ├── Networking ├── Storage ├── SSH └── Troubleshooting ↓ AWS EC2 ↓ DevOps
For your next step, I recommend moving to Linux Terminal & Basic Commands and practicing each command hands-on in this WSL Ubuntu environment.
23. Recommended Linux Lab for You
For your Linux System Administrator + AWS + DevOps learning, I recommend this progression:
LINUX LAB │ ┌─────────┴─────────┐ ↓ ↓ Local Virtual VM AWS EC2 │ │ Ubuntu Ubuntu │ │ └─────────┬─────────┘ ↓ Linux Commands ↓ Users & Permissions ↓ Processes ↓ Services ↓ Networking ↓ Storage ↓ SSH ↓ Security ↓ Troubleshooting ↓ DevOps
✅ Installation & Environment Checklist
|
# |
Task |
Status |
|
1 |
Understand Virtual Machine |
☐ |
|
2 |
Install VirtualBox/VMware |
☐ |
|
3 |
Download Ubuntu ISO |
☐ |
|
4 |
Create Ubuntu VM |
☐ |
|
5 |
Configure RAM |
☐ |
|
6 |
Configure CPU |
☐ |
|
7 |
Configure virtual disk |
☐ |
|
8 |
Install Ubuntu |
☐ |
|
9 |
Create normal user |
☐ |
|
10 |
Understand sudo |
☐ |
|
11 |
Configure networking |
☐ |
|
12 |
Update Ubuntu |
☐ |
|
13 |
Install basic tools |
☐ |
|
14 |
Create Linux lab directories |
☐ |
|
15 |
Take VM snapshot |
☐ |
|
16 |
Practice basic commands |
☐ |
|
17 |
Connect to VM using SSH |
☐ |
|
18 |
Understand VM vs AWS EC2 |
☐ |
|
19 |
Linux Installation with WSL |
☐ |
|
20 |
Linux Lab |
☐ |
🎯 Your practical target
By the end of this section, you should have:
Windows 11 │ └── VirtualBox │ └── Ubuntu-Linux-Lab │ ├── Terminal ├── sudo ├── apt ├── Git ├── Networking └── Linux Practice
Once this environment is ready, the next Level 1 topic should be Linux Terminal & Command Line, starting with pwd, ls, cd, mkdir, touch, cp, mv, rm, cat, less, head, tail, and command help.
No comments:
Post a Comment