Kahibaro
Discord
Login
Register
☰
Home
Courses
Our website is made possible by displaying online advertisements to our visitors.
Please consider supporting us by disabling your ad blocker.
PART I Linux Fundamentals (Beginner) ▼
PART II Command Line Essentials ▼
PART III Intermediate System Administration ▼
PART IV Advanced Linux Skills ▼
PART V Server Administration (Expert) ▼
PART VI DevOps and Cloud ▼
PART VII Master Topics ▼
☰
Linux
Linux
PART I Linux Fundamentals (Beginner)
▼
What Is Linux?
What is an operating system
History of Unix and Linux
The Linux kernel
GNU and the Free Software Foundation
Open source philosophy
Where Linux is used today
Desktop vs server vs embedded Linux
Choosing a Linux Distribution
What is a distribution?
Package formats (deb, rpm, pacman)
Popular distributions
Ubuntu
Debian
Fedora
Arch Linux
openSUSE
Rolling vs fixed release
Choosing the right distribution
Installing Linux
Creating a bootable USB
Installing on real hardware
Dual booting with Windows
Installing in a virtual machine
Partitioning
`/` (root)
`/home`
Swap
First-time setup
First Steps After Installation
Desktop environment basics
Updating the system
Installing essential tools
Setting up drivers
Using the software center
Linux Filesystem Hierarchy
Overview of the root filesystem
Important directories
`/etc`
`/var`
`/usr`
`/tmp`
`/dev`
`/proc`
`/sys`
File types
Absolute vs relative paths
The Linux Graphical Environment
GNOME
KDE Plasma
XFCE
File managers
System settings
Workspaces and window management
PART II Command Line Essentials
▼
Terminal and Shell Basics
What is a shell?
Bash vs Zsh vs Fish
Command structure
Environment variables
Getting help
Command history and autocomplete
Files and Directories
Listing files
Navigating directories
File operations
Wildcards and globbing
Searching files
Viewing and Editing Text Files
Viewing tools
Editing with nano
Introduction to vim
Input/output redirection
Users, Permissions, and Ownership
Users and groups
Permission types (r, w, x)
Changing permissions
Changing ownership
Using sudo
Package Management
Software repositories
APT (Debian/Ubuntu)
DNF (Fedora/RHEL)
Pacman (Arch Linux)
Snap, Flatpak, AppImage
System upgrades
Working with Processes
What is a process?
Viewing processes
Killing processes
Foreground and background jobs
System services and daemons
Introduction to Shell Scripting
Writing your first script
Variables
Conditionals
Loops
Functions
Making scripts executable
PART III Intermediate System Administration
▼
Systemd and Service Management
What is systemd?
Managing services (systemctl)
Boot targets
System logs (journalctl)
Creating custom services
Storage and Filesystems
Devices and partitions
Filesystems (EXT4, XFS, Btrfs)
Mounting and unmounting
Disk usage tools
Archiving and compression (tar, gzip, xz)
Networking Fundamentals
IP addressing
Subnets and routing
DNS and hostnames
Networking tools (ip, ss, ping)
Editing network configuration files
User and Group Administration
User information files
Creating and removing users
Password policies
Managing groups
Shell configuration
System Monitoring
CPU and memory monitoring
Disk and I/O monitoring
Log files in /var/log
Boot performance
Monitoring running services
Backup and Restore
Backup strategies
Using rsync
Creating tar archives
Using snapshot systems
Automating backups
Basic System Security
Firewalls (UFW, firewalld)
Authentication policies
SSH security basics
SELinux and AppArmor overview
Intrusion detection basics
PART IV Advanced Linux Skills
▼
Advanced Shell Scripting
Script structure
Error handling
Debugging scripts
Scheduled tasks (cron)
The Linux Boot Process
BIOS vs UEFI
Understanding GRUB2
Kernel loading
initramfs
Troubleshooting boot issues
Kernel Management
What is the kernel?
Kernel modules
Kernel parameters
Compiling a custom kernel
Kernel versioning and updates
Advanced Filesystems and Storage
LVM concepts
Logical volumes
RAID levels
Full disk encryption (LUKS)
Snapshots and rollbacks
Network Services
SSH server configuration
NFS
Samba
FTP/SFTP
Firewalls in depth
Logging and Auditing
Systemd logging
Traditional logs in /var/log
Auditd
Log rotation
Creating custom logs
Virtualization and Containers
Virtual machines (KVM/QEMU)
Linux containers (LXC/LXD)
Docker fundamentals
Podman vs Docker
Container networking
PART V Server Administration (Expert)
▼
Web Servers
Apache basics
Nginx basics
Virtual hosts
SSL/HTTPS
Reverse proxy concepts
Database Servers
MySQL/MariaDB
PostgreSQL
Database backup strategies
Database hardening
Email Services
SMTP fundamentals
Configuring Postfix
IMAP/POP3 with Dovecot
Spam filtering systems
Email routing concepts
DNS and DHCP
Understanding DNS
Setting up BIND
DNS zones and records
DHCP server configuration
DNS troubleshooting
Load Balancing
HAProxy fundamentals
Nginx as a load balancer
Session persistence
High availability concepts
Clustering and High Availability
Failover principles
Pacemaker
Corosync
Cluster resource management
Distributed filesystems
PART VI DevOps and Cloud
▼
Linux for Developers
Compiler toolchains (gcc, make)
Git fundamentals
Debugging tools (gdb, strace)
Build automation (Makefile, CMake)
DevOps on Linux
CI/CD principles
YAML basics
GitHub Actions
GitLab CI/CD
Automated testing
Configuration Management
Ansible basics
Playbooks and inventories
Puppet overview
Chef overview
Infrastructure as Code
Terraform fundamentals
Providers and resources
Modules
Cloud provisioning with Terraform
Cloud Computing with Linux
Linux on AWS
Linux on Azure
Linux on GCP
Cloud networking basics
Scaling and monitoring
PART VII Master Topics
▼
Hardening a Linux System
Hardening principles
Kernel hardening
File integrity monitoring
Vulnerability scanning
Forensics and Incident Response
Collecting evidence
Log and file recovery
Analyzing suspicious processes
Incident response workflow
Performance Tuning
CPU tuning
Memory tuning
Disk and I/O optimization
Profiling tools
Writing Linux Tools
Bash-based tools
Python command-line tools
Writing tools in C
Using Linux system APIs
Linux Internals
Process lifecycle
Memory management
Signals and IPC
Namespaces
cgroups
Becoming a Linux Expert
Career paths
Certifications (RHCE, LFCS, LPIC)
Building a homelab
Contributing to open source
Where to Move
Move chapter:
☰
PART I Linux Fundamentals (Beginner)
☰
What Is Linux?
☰
What is an operating system
☰
History of Unix and Linux
☰
The Linux kernel
☰
GNU and the Free Software Foundation
☰
Open source philosophy
☰
Where Linux is used today
☰
Desktop vs server vs embedded Linux
☰
Choosing a Linux Distribution
☰
What is a distribution?
☰
Package formats (deb, rpm, pacman)
☰
Popular distributions
☰
Ubuntu
☰
Debian
☰
Fedora
☰
Arch Linux
☰
openSUSE
☰
Rolling vs fixed release
☰
Choosing the right distribution
☰
Installing Linux
☰
Creating a bootable USB
☰
Installing on real hardware
☰
Dual booting with Windows
☰
Installing in a virtual machine
☰
Partitioning
☰
`/` (root)
☰
`/home`
☰
Swap
☰
First-time setup
☰
First Steps After Installation
☰
Desktop environment basics
☰
Updating the system
☰
Installing essential tools
☰
Setting up drivers
☰
Using the software center
☰
Linux Filesystem Hierarchy
☰
Overview of the root filesystem
☰
Important directories
☰
`/etc`
☰
`/var`
☰
`/usr`
☰
`/tmp`
☰
`/dev`
☰
`/proc`
☰
`/sys`
☰
File types
☰
Absolute vs relative paths
☰
The Linux Graphical Environment
☰
GNOME
☰
KDE Plasma
☰
XFCE
☰
File managers
☰
System settings
☰
Workspaces and window management
☰
PART II Command Line Essentials
☰
Terminal and Shell Basics
☰
What is a shell?
☰
Bash vs Zsh vs Fish
☰
Command structure
☰
Environment variables
☰
Getting help
☰
Command history and autocomplete
☰
Files and Directories
☰
Listing files
☰
Navigating directories
☰
File operations
☰
Wildcards and globbing
☰
Searching files
☰
Viewing and Editing Text Files
☰
Viewing tools
☰
Editing with nano
☰
Introduction to vim
☰
Input/output redirection
☰
Users, Permissions, and Ownership
☰
Users and groups
☰
Permission types (r, w, x)
☰
Changing permissions
☰
Changing ownership
☰
Using sudo
☰
Package Management
☰
Software repositories
☰
APT (Debian/Ubuntu)
☰
DNF (Fedora/RHEL)
☰
Pacman (Arch Linux)
☰
Snap, Flatpak, AppImage
☰
System upgrades
☰
Working with Processes
☰
What is a process?
☰
Viewing processes
☰
Killing processes
☰
Foreground and background jobs
☰
System services and daemons
☰
Introduction to Shell Scripting
☰
Writing your first script
☰
Variables
☰
Conditionals
☰
Loops
☰
Functions
☰
Making scripts executable
☰
PART III Intermediate System Administration
☰
Systemd and Service Management
☰
What is systemd?
☰
Managing services (systemctl)
☰
Boot targets
☰
System logs (journalctl)
☰
Creating custom services
☰
Storage and Filesystems
☰
Devices and partitions
☰
Filesystems (EXT4, XFS, Btrfs)
☰
Mounting and unmounting
☰
Disk usage tools
☰
Archiving and compression (tar, gzip, xz)
☰
Networking Fundamentals
☰
IP addressing
☰
Subnets and routing
☰
DNS and hostnames
☰
Networking tools (ip, ss, ping)
☰
Editing network configuration files
☰
User and Group Administration
☰
User information files
☰
Creating and removing users
☰
Password policies
☰
Managing groups
☰
Shell configuration
☰
System Monitoring
☰
CPU and memory monitoring
☰
Disk and I/O monitoring
☰
Log files in /var/log
☰
Boot performance
☰
Monitoring running services
☰
Backup and Restore
☰
Backup strategies
☰
Using rsync
☰
Creating tar archives
☰
Using snapshot systems
☰
Automating backups
☰
Basic System Security
☰
Firewalls (UFW, firewalld)
☰
Authentication policies
☰
SSH security basics
☰
SELinux and AppArmor overview
☰
Intrusion detection basics
☰
PART IV Advanced Linux Skills
☰
Advanced Shell Scripting
☰
Script structure
☰
Error handling
☰
Debugging scripts
☰
Scheduled tasks (cron)
☰
The Linux Boot Process
☰
BIOS vs UEFI
☰
Understanding GRUB2
☰
Kernel loading
☰
initramfs
☰
Troubleshooting boot issues
☰
Kernel Management
☰
What is the kernel?
☰
Kernel modules
☰
Kernel parameters
☰
Compiling a custom kernel
☰
Kernel versioning and updates
☰
Advanced Filesystems and Storage
☰
LVM concepts
☰
Logical volumes
☰
RAID levels
☰
Full disk encryption (LUKS)
☰
Snapshots and rollbacks
☰
Network Services
☰
SSH server configuration
☰
NFS
☰
Samba
☰
FTP/SFTP
☰
Firewalls in depth
☰
Logging and Auditing
☰
Systemd logging
☰
Traditional logs in /var/log
☰
Auditd
☰
Log rotation
☰
Creating custom logs
☰
Virtualization and Containers
☰
Virtual machines (KVM/QEMU)
☰
Linux containers (LXC/LXD)
☰
Docker fundamentals
☰
Podman vs Docker
☰
Container networking
☰
PART V Server Administration (Expert)
☰
Web Servers
☰
Apache basics
☰
Nginx basics
☰
Virtual hosts
☰
SSL/HTTPS
☰
Reverse proxy concepts
☰
Database Servers
☰
MySQL/MariaDB
☰
PostgreSQL
☰
Database backup strategies
☰
Database hardening
☰
Email Services
☰
SMTP fundamentals
☰
Configuring Postfix
☰
IMAP/POP3 with Dovecot
☰
Spam filtering systems
☰
Email routing concepts
☰
DNS and DHCP
☰
Understanding DNS
☰
Setting up BIND
☰
DNS zones and records
☰
DHCP server configuration
☰
DNS troubleshooting
☰
Load Balancing
☰
HAProxy fundamentals
☰
Nginx as a load balancer
☰
Session persistence
☰
High availability concepts
☰
Clustering and High Availability
☰
Failover principles
☰
Pacemaker
☰
Corosync
☰
Cluster resource management
☰
Distributed filesystems
☰
PART VI DevOps and Cloud
☰
Linux for Developers
☰
Compiler toolchains (gcc, make)
☰
Git fundamentals
☰
Debugging tools (gdb, strace)
☰
Build automation (Makefile, CMake)
☰
DevOps on Linux
☰
CI/CD principles
☰
YAML basics
☰
GitHub Actions
☰
GitLab CI/CD
☰
Automated testing
☰
Configuration Management
☰
Ansible basics
☰
Playbooks and inventories
☰
Puppet overview
☰
Chef overview
☰
Infrastructure as Code
☰
Terraform fundamentals
☰
Providers and resources
☰
Modules
☰
Cloud provisioning with Terraform
☰
Cloud Computing with Linux
☰
Linux on AWS
☰
Linux on Azure
☰
Linux on GCP
☰
Cloud networking basics
☰
Scaling and monitoring
☰
PART VII Master Topics
☰
Hardening a Linux System
☰
Hardening principles
☰
Kernel hardening
☰
File integrity monitoring
☰
Vulnerability scanning
☰
Forensics and Incident Response
☰
Collecting evidence
☰
Log and file recovery
☰
Analyzing suspicious processes
☰
Incident response workflow
☰
Performance Tuning
☰
CPU tuning
☰
Memory tuning
☰
Disk and I/O optimization
☰
Profiling tools
☰
Writing Linux Tools
☰
Bash-based tools
☰
Python command-line tools
☰
Writing tools in C
☰
Using Linux system APIs
☰
Linux Internals
☰
Process lifecycle
☰
Memory management
☰
Signals and IPC
☰
Namespaces
☰
cgroups
☰
Becoming a Linux Expert
☰
Career paths
☰
Certifications (RHCE, LFCS, LPIC)
☰
Building a homelab
☰
Contributing to open source
Close