Curriculum
What you will learn — lecture by lecture
28 practical modules covering the full classroom syllabus.
Lecture 01Basic Commands / Structure
- Navigating the Filesystem using Linux commands
- Managing files using commands (cat, find, chmod)
- System Monitoring and Management
- Managing and configuring Network through Commands
- Package management on Red Hat-based system (yum, rpm, dnf)
- File compression and archiving (tar, gzip, zip, unzip)
- Ubuntu Installation Commands
- Installation — 3 methods
- RHEL 6, 7, 8, 9 — distinguish versions
Lecture 02Editor — Vi/Vim, Nano
- Nano editor, Vi/Vim Editors
- Editing files in insert mode
- Understanding visual mode
- Difference between vi and vim
- Understanding how to navigate around files
- Command abbreviation
- Performing backup and recovery
- Opening multiple file tabs
Lecture 03Ownership & Permission
- Creating and managing user accounts and their groups
- Securing sensitive files and directories
- Differences between traditional permissions and ACLs
- Symbolic notation (reading and interpreting permission symbols)
- Implementing least privilege for users and groups
- Troubleshooting permissions issues
Lecture 04Find / Locate / Grep
- FIND — Basic file searching with find
- Searching by file type (directories, regular files) and filtering
- Advanced file searching with find
- LOCATE — Locating files with locate
- Limiting search to specific directories, filtering search results
- Executing commands on search results
- GREP — Searching inside files for text patterns
- Searching in multiple files and different file types
- Recursive searching in directories
- Searching system logs (finding error messages, filtering log entries)
Lecture 05Backup Folders and Files using cp, mv and rsync
- Copying multiple files and directories using cp
- Backing up data to external storage using rsync
- Synchronizing directories (local and remote synchronization)
- Handling large directory structures efficiently using mv
- Migrating data between disks or partitions
Lecture 06FSH — File System Hierarchy
- Understanding the root directory (/): role, significance and structure
- /bin and /sbin directories and differences between them
- System directories and their purpose (/root, /tmp and temporary file storage)
- Virtual filesystems for process and system information
- Understanding differences between distributions
- Package management and its impact on FSH
- Understanding links and mount points
- Differences between symbolic and hard links
- Creating and managing links
- Mounting and unmounting filesystems
Lecture 07Symlinks & Hardlinks
- Differences between hard links and symbolic (soft) links
- Advantages and use cases of hard and symbolic links
- Characteristics of hard links (shared inode numbers, same physical files)
- Modifying and deleting hard-linked files
- Finding and fixing broken symbolic links
Lecture 08fdisk — Disk Manage
- Understanding disk devices in Linux
- Command-line options and arguments
- Partitioning disks with fdisk (primary and extended partitions)
- Partition management with fdisk
- Resizing existing partitions
- Converting partition table types
- Persisting mounts in /etc/fstab
Lecture 09Advance Permission
- Access Control Lists (ACLs): setfacl, modifying and removing ACL entries
- Managing default ACLs
- Extended attributes
- Changing attributes with chattr
- Setting special permissions using chmod
- Purpose and significance of setuid, setgid and sticky bit
- Using default permissions and umask
- Interaction between encryption and file permissions
- Automating permission management tasks
Lecture 10Sudoers
- Location and structure of the sudoers file
- Granting sudo (root) access to a user
- Managing group-based permissions with sudo
- Understanding Cmnd_Alias, User_Alias, Host_Alias, and Runas_Alias
- Restricting specific commands for users
Lecture 11Umask & PATH
- Understanding umask notation (octal vs symbolic)
- Calculating effective permissions using umask
- Setting and modifying umask (permanent and temporary)
- How PATH is used to locate executable files (absolute and relative path)
- Managing the PATH variable
- Removing directories from the PATH
- Setting PATH for all users and individual users
- Identifying and debugging common umask and PATH issues
Lecture 12Process & Daemons
- Managing processes using PID
- Listing processes using ps
- Identifying resource usage (CPU, memory, etc.)
- Sending signals to processes (kill)
- Process management and job control
- Monitoring processes (top, htop)
- Server health check — monitor CPU, memory and load
- Daemon management and configuration
- Using systemctl to manage systemd services
- Troubleshooting daemon startup issues
- Init systems and daemon management (systemd, cron)
Lecture 13Cron
- Managing cron jobs using crontab
- Using cron to run scripts
- Syntax for specifying time intervals
- Backing up cron configurations
- Troubleshooting cron issues
Lecture 14Archive & Compression
- File archiving with tar and zip
- Compression with gzip and bzip2
- Advanced compression techniques
- Archive and compression tools comparison
- Compression formats and compatibility
- Security implications of compression
- Creating and extracting compressed archives for different use cases
Lecture 15Networking
- Configuring network interfaces (ifconfig, ip command)
- Configuring network settings in Linux files
- Automating and managing network connections
- Configuring DNS servers
- Configuring hostname resolution
- Understanding network routing concepts
- Understanding NAT concepts
- Network monitoring and troubleshooting
- Troubleshooting hostname — /etc/hosts, /etc/resolv.conf
- Gateway, routes, subnets, aliasing
Lecture 16Ports & Protocol
- Understanding ports and protocols
- Common network protocols (TCP, UDP, ICMP, etc.)
- Network troubleshooting and diagnostics
- Port scanning and services identification
- Security considerations when opening ports
- Common network services and their default ports (SSH, HTTP, FTP)
Lecture 17RPM
- Components of an RPM package
- RPM package management
- Querying RPM packages
- Setting up an RPM build environment
- RPM package scripting
- Creating RPM package repositories
- Features and advantages of yum over traditional packaging
Lecture 18Yum
- Features and advantages of yum over traditional package management
- Installing and removing packages with yum
- Configuring yum repositories
- Resolving dependency issues with yum
- Advanced yum commands
- Understanding yum configuration files
- Troubleshooting with yum
- Automating package installations and updates with yum
Lecture 19LVM & User Management
- LVM components — Physical Volumes (PV), Volume Groups (VG), Logical Volumes (LV)
- Configuring Physical Volumes (PV)
- Creating and modifying Volume Groups (resizing, adding/removing PVs)
- Moving logical volumes between volume groups; splitting and merging VGs
- Resizing Logical Volumes — lvextend and lvreduce
- Adding disks to a Volume Group
- Removing PV, VG and LV
- Types of users — system users, regular users, root and superuser privileges
- UID and GID — user and group identifiers
- Adding, deleting and modifying user accounts
- Managing user passwords
- Primary and secondary groups
- Advance permissions — SUID, SGID, sticky bit
Lecture 20Troubleshooting
- Kernel boot problems — kernel panics, rescue mode
- Bootloader issues — GRUB configuration
- Filesystem errors and repair — identifying disk issues
- Checking and repairing filesystems with fsck
- Ctrl+D / maintenance mode
Lecture 21SELinux
- Understanding SELinux policies
- SELinux configuration
- SELinux troubleshooting
- SELinux modes — Enforcing, Permissive, and Disabled
- SELinux policies — Targeted, Minimum, MLS (Multi-Level Security)
- Key components and configuration files
- Configuration in file permissions
Lecture 22SSH
- Installing and configuring SSH
- Connecting to remote systems
- SSH key management — ssh-keygen
- Copying public keys to remote systems
- Enhancing SSH security — disabling root login
- Configuring AllowUsers and DenyUsers
Lecture 23Boot Process
- BIOS/UEFI initialization
- Configuration files for boot loaders
- Kernel initialization process
- Kernel parameters and their significance
- Service management and dependency resolution
- Troubleshooting GRUB configuration errors
- Recovery options and rescue environments
- Analyzing boot logs and diagnosing boot issues
Lecture 24NFS — Network File Sharing
- What is NFS and when to use it for shared storage across Linux servers
- NFS server and client roles — exporting directories and mounting remote shares
- Key files: /etc/exports on server and /etc/fstab or mount options on client
- Common NFS versions (NFSv3 / NFSv4) and practical differences
- Permissions, UID/GID mapping and firewall ports used by NFS
- Hands-on: export a share, mount it on a client, verify read/write access
- Troubleshooting: showmount, rpcinfo, stale file handles and permission denied
Lecture 25FTP — File Transfer Protocol
- What is FTP and how it differs from SCP/SFTP for file transfer
- Active vs passive mode and why passive mode matters behind firewalls
- Installing and configuring a basic FTP service (e.g. vsftpd)
- Anonymous vs authenticated FTP and securing user home directories
- FTP vs FTPS vs SFTP — which to choose for production
- Hands-on: upload/download files, restrict users, check logs
- Security best practices: disable clear-text where possible, chroot users, limit write access
Lecture 26Samba — File Server
- What is Samba — sharing Linux files/printers with Windows clients (SMB/CIFS)
- Samba service components (smbd, nmbd) and main config file smb.conf
- Creating a shared folder, setting Linux permissions and Samba user accounts
- Workgroup vs domain join concepts at a practical admin level
- Access from Windows and Linux clients; mapping network drives
- Hands-on: create share, connect from Windows, verify read/write
- Troubleshooting: testparm, smbstatus, SELinux/firewall issues with Samba
Lecture 27Firewall / iptables — Firewall Service
- Why a host firewall matters — allow only required services
- firewalld vs iptables/nftables — concepts admins use on RHEL/Ubuntu
- Zones, services and ports in firewalld; permanent vs runtime rules
- iptables basics: chains (INPUT/OUTPUT/FORWARD), ACCEPT/DROP, order of rules
- Allowing common services (SSH, HTTP/HTTPS, NFS, Samba) safely
- Hands-on: open/close ports, reload rules, verify with ss/nmap from another host
- Troubleshooting: locked-out SSH, rule order mistakes, NAT/masquerade overview
Lecture 28Apache — Static Web Server
- What is Apache HTTPD — serving static websites and files on Linux
- Install/start/enable httpd (or apache2) and check service status
- DocumentRoot, index files and basic Directory permissions
- Virtual hosts — hosting multiple sites on one server
- Access and error logs — where to look when pages fail
- Hands-on: deploy a simple static HTML site, open firewall port 80/443
- Basics of HTTPS readiness (certificates overview) and common 403/404 fixes