Linux – 100+ Lab Exercises Roadmap (Basic, Intermediate, Advanced)
🔰 Basic Level (30+ Exercises)
Objective: Build foundational command-line skills, understand the Linux file system, and navigate through essential operations.
File System Navigation & Management
Navigate directories using
cd,ls,pwd.Create, delete, and move files/directories with
touch,rm,mv,cp,mkdir.Explore file permissions using
chmod,chown,umask.Use
findandlocateto search files.Use
df,du, andlsblkfor disk space analysis.
Basic Command-Line Utilities
Redirect input/output using
>,>>,2>,|,tee.Use
cat,more,less,head,tail.Archive files using
tar,gzip,bzip2,zip.Learn and use
grep,awk,cut,sed.Manage processes using
ps,top,htop,kill.
User & Group Management
Create and delete users (
useradd,userdel).Create and manage groups (
groupadd,gpasswd).Set user passwords and switch users (
passwd,su,sudo).Assign users to groups and configure
/etc/sudoers.Understand
/etc/passwd,/etc/group, and/etc/shadow.
File Permissions & Ownership
Change file ownership (
chown,chgrp).Use symbolic and octal modes to set permissions.
Configure default file permissions via
umask.Set SUID, SGID, and Sticky Bit.
Test permission changes in shared directories.
🚀 Intermediate Level (40+ Exercises)
Goal: Gain practical experience with shell scripting, package management, system services, and network configuration.
Shell Scripting & Automation
Write basic shell scripts using
bash.Accept user input and arguments in scripts.
Use conditionals (
if,elif,case) in scripts.Implement loops (
for,while,until).Automate tasks using
cron(crontab) andat.
Package & Software Management
Install and remove packages with
apt,yum,dnf.Manage repositories and GPG keys.
Compile software from source using
makeandgcc.Create and install
.debor.rpmpackages.Maintain system updates and upgrades.
Networking & Connectivity
Check network interfaces using
ip,ifconfig,nmcli.Configure static IPs and DNS.
Use
ping,traceroute,netstat,ss.Scan ports with
nmap, test services withtelnet,nc.Transfer files using
scp,rsync,sftp.
System Services & Logs
Use
systemctlto manage services.Analyze logs via
journalctland/var/log/.Enable/disable startup services.
Monitor resource usage with
iostat,vmstat,sar.Check system boot and uptime information.
🧠 Advanced Level (40+ Exercises)
Goal: Master Linux administration, performance tuning, security, and advanced scripting techniques.
Security & Access Control
Set up and configure
iptables,firewalld, orufw.Implement
SELinuxorAppArmor.Configure and monitor
fail2ban.Manage SSH keys and restrict SSH access.
Conduct file integrity checks with
aideortripwire.
Advanced Shell & Tools
Debug scripts with
set -xandtrap.Use functions and error handling in Bash scripts.
Schedule job dependencies with
anacron.Automate system reports (disk, memory, logs).
Use
expectfor automating interactive sessions.
Server & Service Management
Set up and secure an Apache/Nginx server.
Install and configure an FTP/SFTP server.
Deploy and manage MySQL/PostgreSQL servers.
Configure DNS using
bind9.Implement load balancing using
HAProxy.
Virtualization & Containers
Install and manage VMs with KVM/QEMU.
Use
virt-managerandvirshCLI.Run containers using Docker on Linux.
Manage
cgroupsandnamespaces.Set up LXD/LXC containers.
Performance Tuning & Monitoring
Monitor system with
top,iotop,glances,dstat.Optimize memory usage and swappiness.
Tweak kernel parameters with
sysctl.Profile performance with
perf,strace.Analyze boot time with
systemd-analyze.
Capstone Projects
Set up a complete LAMP/LEMP stack from scratch.
Automate server hardening via Bash scripts.
Create a log monitoring and alerting solution.
Configure a secure file transfer system with auditing.
Deploy and benchmark containerized apps on Linux.
✅ Tools & Utilities
vim,nano,tmux,screen,ssh,scp,rsyncbash,cron,systemd,tcpdump,nmapfirewalld,iptables,ufw,SELinux,AppArmor
