Linux Tutorial
Course Contents
Linux Fundamentals
- Linux Introduction
- Linux Distributions Explained
- The Linux Shell and Terminal
- The Filesystem Hierarchy Standard
- Getting Help: man, –help, and info
- Shell Prompt and Command Syntax
Navigating the Filesystem
- pwd, ls, and cd
- Absolute vs Relative Paths
- Hidden Files and ls Options
- Wildcards and Globbing
- Home Directory and ~ Shortcuts
Working with Files and Directories
- Creating Files and Directories (touch, mkdir)
- Copying Files and Directories (cp)
- Moving and Renaming (mv)
- Removing Files and Directories (rm, rmdir)
- Viewing File Contents (cat, less, head, tail)
- Creating Links (ln, symbolic vs hard)
File Permissions and Ownership
- Understanding File Permissions
- chmod: Changing Permissions
- Symbolic vs Numeric (Octal) Permissions
- chown and chgrp: Changing Ownership
- Special Permissions: setuid, setgid, Sticky Bit
- umask and Default Permissions
Searching and Text Processing
- Finding Files with find
- Searching File Contents with grep
- Regular Expressions in grep
- sed: Stream Editing Basics
- awk: Pattern Scanning Basics
- Sorting and Counting (sort, uniq, wc)
- Cutting and Joining Text (cut, paste, tr)
Pipes, Redirection, and I/O
- Standard Input, Output, and Error
- Output Redirection (>, >>)
- Input Redirection (<)
- Pipes and Chaining Commands
- Combining Redirection and Pipes
- /dev/null and Discarding Output
Processes and Job Control
- Understanding Processes
- Viewing Processes (ps, top, htop)
- Foreground and Background Jobs
- Killing Processes (kill, killall, signals)
- nohup and Keeping Processes Alive
- Process Priority (nice, renice)
Users, Groups, and Permissions Management
- Users and Groups Concepts
- Creating and Managing Users (useradd, usermod)
- Managing Groups (groupadd, gpasswd)
- sudo and the Superuser
- /etc/passwd and /etc/shadow Explained
Package Management
- Package Management Concepts
- APT (Debian/Ubuntu)
- YUM and DNF (RHEL/Fedora)
- Installing from Source
- Managing Repositories
Environment and Shell Configuration
- Environment Variables
- The PATH Variable
- Shell Configuration Files (.bashrc, .bash_profile)
- Aliases
- Shell History
Bash Scripting Basics
- Writing Your First Bash Script
- Shebang and Script Permissions
- Variables in Bash
- Command-Line Arguments ($1, $@, $#)
- Reading User Input (read)
- Quoting Rules in Bash
Bash Scripting Logic
- Conditionals: if, elif, else
- Test Expressions ([ ] and [[ ]])
- Comparing Numbers and Strings
- case Statements
- for Loops
- while and until Loops
Bash Functions and Scripts
- Bash Functions
- Exit Codes and $?
- Arrays in Bash
- String Manipulation in Bash
- Error Handling in Bash Scripts (set -e, trap)
- Debugging Bash Scripts (set -x)
System Administration
- Disk Usage (df, du)
- Archiving and Compression (tar, gzip)
- Scheduling Tasks with cron
- systemd and Services (systemctl)
- Viewing Logs (journalctl, /var/log)
- Mounting Filesystems
