Skip to content
Computer Basics
Operating System Basics
Processes explained
Difference Between Process and Thread
The Basics of Hypervisors
A simple explanation of virtualization by VMinformer
What is a Hypervisor?
What’s a Kernel?
Processes and VM Videos
Create, Execute & Exit from a Process | frok() System Call
Process, Process Stack, PCB & Attributes
Linux
Linux Basics
What is Linux?
What is a Linux Package?
Stages of Linux booting process – explanation, step by step
Whats an Inode
Explanation-System calls and System call types in operating system
Linux Package Management
How the ls -l command works
Linux Isolation Basics
Understanding Linux File Permissions
Understanding UMASK value in Linux
What is Umask and How To Setup Default umask Under Linux?
File descriptor
Understanding Special Permission SGID in Linux
Searching with grep
Introduction to Linux and Basic commands
fstab explained
Introduction to mounting filesystems in Linux
SSH
What is Secure Shell (SSH)
SSH Layers
SSH using Putty
4 Reasons Why SSH Connection Fails
Enabling MFA on Ubuntu and Amazon Linux
Enabling MFA on your Instance
Howto remove Google authenticator from SSH logins
How to use multiplexing to speed up the SSH
How to access RDP over SSH tunnel
Ram & Disks
What is the difference between memory and disk storage?
How to check disk space utilization
Monitoring RAM
RAID
Video tutorial on extending swap partition and creating a swapfile
Commands
15-basic-curl-command-in-linux-with-practical-examples
Linux users and permissions assist guide
SystemD
Systemd Boot Process, a closer look
Step by Step Linux boot process with GRUB2 and systemd in RHEL 7 / CentOS 7
Useful SystemD commands and info
The Story Behind ‘init’ and ‘systemd’
Basic journal use
Unit files: what are they?
Unit dependencies
What is a Unix Socket?
How to check disk space on Unix servers
3 commands to reboot Linux (plus 4 more ways to do it safely)
See Detailed History Of yum history Commands
How to Transfer Files with Rsync over SSH
How to Use the mkfs Command on Linux
Linux +
GRUB bootloader – Full tutorial
How to Change Kernel Runtime Parameters in a Persistent and Non-Persistent Way
Linux Basics – LVM (Logical Volume Manager)
A video overview of OOM(Out Of Memory)
Linux Storage Stack Diagram
Basics-of-bash-for-beginners
CPU & LOAD AVERAGE
Linux Load Averages: Solving the Mystery
How to Run Sudo Command Without Password
Virtualization
Difference between PV and HVM virtualization
Virtualization Performance: Zones, KVM, Xen
Commands
strace explained
Ram & Disk Space
Why is space not being freed from disk after deleting a file in Red Hat Enterprise Linux?
Understanding I/O: Random vs Sequential
Memory Management
Introduction to Memory Management in Linux
Processes
Process, Process Stack, PCB & Attributes
Create, Execute & Exit from a Process | frok() System Call
CPU Context Switching & Its Overheads
What is an Interrupt? Types of Interrupts
CPU Scheduling: FCFS, SJF, SRTF, Round Robin
Background and Foreground Processes
Virtual filesystems in Linux: Why we need them and how they work
Overview of Forks, Threads, and Asynchronous I/O
RHEL(RedHat)
File-management-red-hat-enterprise-linux-8
Enable ENA driver on EC2 for RHEL 6 & 7
Amazon Linux 2
How to install XRDP in Amazon Linux 2
Centos 8
Centos8 dig command not found. How to install dig on centos8
How to install whois on RHEL 8 / CentOS 8
Ubuntu
Ubuntu 18.04 remove all unused old kernels
SUSE
Tools
Filezilla
SSH using Putty
WinSCP
WinSCP Portable 5.15.2 (ftp, sftp, scp client) Released
My Study Guide
CPU
A Guide to the Linux “Top” Command
Understanding CPU Steal Time – when should you be worried?
CPU Steal Time. Now on Amazon EC2
USER SPACE VS KERNEL SPACE
What is the Difference Between Hardware and Software Interrupt
What exactly is “iowait”?
Difference Between Process And Thread in Linux
Operating Systems | States of a process
Linux OS related
Boot process
An in depth look at the Linux Boot process
Systemd Boot Process, a closer look
Stages of Linux booting process – explanation, step by step
6 Stages of Linux Boot Process (Startup Sequence) sysVinit:
Step by Step Linux boot process with GRUB2 and systemd in RHEL 7 / CentOS 7
Init and Initramfs
Initrd vs Initramfs
Do you need initramfs to boot?
The difference between booting MBR and GPT with GRUB
The Master Boot Record (MBR) and Why it is Necessary?
GRUB bootloader – Full tutorial
Memory
free command
Buffer vs Cache
How to Clear RAM Memory Cache, Buffer and Swap Space on Linux
OOM explained
How to Configure the Linux Out-of-Memory Killer
Surviving the Linux OOM Killer
Disk
Amazon EBS
Linux iostat command
How to Read Linux Iostat’s Output and Interpret System Performance
Video tutorial on extending swap partition and creating a swapfile
Linux Basics – LVM (Logical Volume Manager)
RAID
Video tutorial on extending swap partition and creating a swapfile
Networking
Networking basics
Introduction to Networking
What is a Computer Network?
Types of Networks
MAN
WAN
Parts of a Network
How the internet works
Servers
Clients and Hosts
Network Interface Card NIC
What is a Protocol
Bus Topology
Ring Topology
Star Topology
Mesh Topology
OSI Model
More on the OSI Model
TCP/IP explained
TCP connection states
TCP three way handshake
TCP/IP Ports and Sockets Explained
DNS Name Resolution Process
What happens when we hit a URL in our browser
What is SSL
SSL or TLS handshake
What is an SSL Certificate and How Does it Work?
DHCP Explained
The Certificate Authority vs. The Handshake
Networking +
A tcpdump Tutorial and Primer with Examples
How To Use Traceroute and MTR to Diagnose Network Issues
tcpdump command to capture full-sized packets
Commands
Commands to monitor network bandwidth on Linux server
Linux Route Command Examples (How to Add Route in Linux)
Application Services and Packages
Apache
What is Apache?
Apache Basics Video
Apache Cheat Sheet
Apache Performance Tuning: MPM Modules
How To Use Apache as a Reverse Proxy with mod_proxy on CentOS 7
Tune memory allocation for an Apache web server
Failed to restart httpsd.service: The name org.freedesktop.PolicyKit1 was not provided by any .service files
Redirecting from one URL to another using .htaccess
USING .HTACCESS REWRITE RULES
URL Rewriting for Beginners
How to Enable Apache Userdir Module on RHEL/CentOS
How to set up password authentication in apache (httpd) with htpasswd and .htaccess on RHEL / CentOS 7
How to redirect HTTP to HTTPS Using .htaccess
How to Enable TLS 1.3 in Apache and Nginx
Apache Benchmark
Nginx
How To Install Linux, Nginx, MySQL, PHP (LEMP stack) on Ubuntu 18.04
Nginx Bible
Basic Nginx commands
Basic configuration parameters
SSL certificate Installation
Full configuration Example
Nginx Rewrite examples
Nginx redirect from www to none www domain name
How to Set Up an Nginx Certbot
Urgent security issue in NGINX/php-fpm
Moving from Apache2 to Nginx Webserver
PHP
What is PHP?
The PHP Process Explained
What does PHP-FPM do?
PHP troubleshooting tip
max_execution_time in php explained
Why You Should Upgrade WordPress to PHP 7 Now Rather Than Later
MYSQL
What Is MySQL?
MySQL Command cheat sheet
Creating and editing MySQL DB Dumps
MySQL – MySQL Introduction
MySQL – Structure Introduction
MySQL – Data Types Introduction
Fail2ban
Magento2
Magento explained plus commands for an easy install on Ubuntu 16.04
VNC Installation on Ubuntu
How to install XRDP in Amazon Linux 2
My issues
WordPress
WordPress FTP error
Unable to upload file to WordPress
WordPress Posts Returning 404 Error
How to Fix the 500 Internal Server Error on Your WordPress Website
How to Fix Corrupted Files and Databases in WordPress
Max_upload exceeded..!!! WordPress
6 Ways To Increase the Maximum Upload File Size in WordPress
Being prompted for password after not setting one (RHEL/Amazon Linux)
Unable to transfer files from one instance to another using SCP
Website running and reachable via a browser however giving a 403 when running a CURL
Issue installing Cerbot on Amazon Linux 2
How to restore “Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)”
Renewing your SSL certificate using Certbot/Letsencrypt manually:
AWS(Amazon Web Services)
Instance Health Checks failing
How to fix a Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Reasons why an instance with root on LVM might fail to boot
Instance failing health checks with a Kernel Offset: disabled error
EC2 SSH ISSUES
Injecting userdata to allow ssh
Amazon EBS
AWS Workarounds
Steps to install python3.7 on Amazon Linux 1
Using userdata to resolve ssh issues to your EC2 instance
How to use the same SSH key pair in all AWS regions
Accidentally enabled UFW on your Ubuntu instance and cant SSH as a result?
Lightsail Loadbalancer failing health checks
AWS Docs
How can I avoid DNS resolution failures with EC2 Linux?
Extending a Linux File System after Resizing the Volume
Service Introduction Videos
What is AWS?
Introduction to Amazon EC2
Amazon Elastic Block Store (EBS) Overview
Troubleshooting videos
How do I recover access to my EC2 instances if I lost my SSH key pair?
How do I move my EC2 instance to another subnet, Availability Zone, VPC, or region?
Troubleshooting
Server A Can’t Talk to Server B
Troubleshoot Slow Networks
How To Troubleshoot Common Site Issues on a Linux Server
How to fix a Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
How to fix high memory usage in Linux ?
Troubleshooting a Linux kernel panic after patching
Reproducing a “Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)”
Articles
How to get notified whenever someone logs in via SSH?
procSpy : Python tool that monitors and logs user-run commands on a Linux system
How to identify duplicate files on Linux
Power of SSH Tunneling
Linux commands you should never run on your system
Redis
ElastiCache
Redis restore from S3 snapshot fails
An introduction to Redis data types and abstractions
Redis – Commands
Redis – Keys
Redis – Strings
Redis – Hashes
Redis – Lists
Redis – Sets
Redis – Sorted Sets
My Curriculum Vitae (CV)
Search for:
LinuxByImraan
Primary Menu
Computer Basics
Operating System Basics
Processes explained
Difference Between Process and Thread
The Basics of Hypervisors
A simple explanation of virtualization by VMinformer
What is a Hypervisor?
What’s a Kernel?
Processes and VM Videos
Create, Execute & Exit from a Process | frok() System Call
Process, Process Stack, PCB & Attributes
Linux
Linux Basics
What is Linux?
What is a Linux Package?
Stages of Linux booting process – explanation, step by step
Whats an Inode
Explanation-System calls and System call types in operating system
Linux Package Management
How the ls -l command works
Linux Isolation Basics
Understanding Linux File Permissions
Understanding UMASK value in Linux
What is Umask and How To Setup Default umask Under Linux?
File descriptor
Understanding Special Permission SGID in Linux
Searching with grep
Introduction to Linux and Basic commands
fstab explained
Introduction to mounting filesystems in Linux
SSH
What is Secure Shell (SSH)
SSH Layers
SSH using Putty
4 Reasons Why SSH Connection Fails
Enabling MFA on Ubuntu and Amazon Linux
Enabling MFA on your Instance
Howto remove Google authenticator from SSH logins
How to use multiplexing to speed up the SSH
How to access RDP over SSH tunnel
Ram & Disks
What is the difference between memory and disk storage?
How to check disk space utilization
Monitoring RAM
RAID
Video tutorial on extending swap partition and creating a swapfile
Commands
15-basic-curl-command-in-linux-with-practical-examples
Linux users and permissions assist guide
SystemD
Systemd Boot Process, a closer look
Step by Step Linux boot process with GRUB2 and systemd in RHEL 7 / CentOS 7
Useful SystemD commands and info
The Story Behind ‘init’ and ‘systemd’
Basic journal use
Unit files: what are they?
Unit dependencies
What is a Unix Socket?
How to check disk space on Unix servers
3 commands to reboot Linux (plus 4 more ways to do it safely)
See Detailed History Of yum history Commands
How to Transfer Files with Rsync over SSH
How to Use the mkfs Command on Linux
Linux +
GRUB bootloader – Full tutorial
How to Change Kernel Runtime Parameters in a Persistent and Non-Persistent Way
Linux Basics – LVM (Logical Volume Manager)
A video overview of OOM(Out Of Memory)
Linux Storage Stack Diagram
Basics-of-bash-for-beginners
CPU & LOAD AVERAGE
Linux Load Averages: Solving the Mystery
How to Run Sudo Command Without Password
Virtualization
Difference between PV and HVM virtualization
Virtualization Performance: Zones, KVM, Xen
Commands
strace explained
Ram & Disk Space
Why is space not being freed from disk after deleting a file in Red Hat Enterprise Linux?
Understanding I/O: Random vs Sequential
Memory Management
Introduction to Memory Management in Linux
Processes
Process, Process Stack, PCB & Attributes
Create, Execute & Exit from a Process | frok() System Call
CPU Context Switching & Its Overheads
What is an Interrupt? Types of Interrupts
CPU Scheduling: FCFS, SJF, SRTF, Round Robin
Background and Foreground Processes
Virtual filesystems in Linux: Why we need them and how they work
Overview of Forks, Threads, and Asynchronous I/O
RHEL(RedHat)
File-management-red-hat-enterprise-linux-8
Enable ENA driver on EC2 for RHEL 6 & 7
Amazon Linux 2
How to install XRDP in Amazon Linux 2
Centos 8
Centos8 dig command not found. How to install dig on centos8
How to install whois on RHEL 8 / CentOS 8
Ubuntu
Ubuntu 18.04 remove all unused old kernels
SUSE
Tools
Filezilla
SSH using Putty
WinSCP
WinSCP Portable 5.15.2 (ftp, sftp, scp client) Released
My Study Guide
CPU
A Guide to the Linux “Top” Command
Understanding CPU Steal Time – when should you be worried?
CPU Steal Time. Now on Amazon EC2
USER SPACE VS KERNEL SPACE
What is the Difference Between Hardware and Software Interrupt
What exactly is “iowait”?
Difference Between Process And Thread in Linux
Operating Systems | States of a process
Linux OS related
Boot process
An in depth look at the Linux Boot process
Systemd Boot Process, a closer look
Stages of Linux booting process – explanation, step by step
6 Stages of Linux Boot Process (Startup Sequence) sysVinit:
Step by Step Linux boot process with GRUB2 and systemd in RHEL 7 / CentOS 7
Init and Initramfs
Initrd vs Initramfs
Do you need initramfs to boot?
The difference between booting MBR and GPT with GRUB
The Master Boot Record (MBR) and Why it is Necessary?
GRUB bootloader – Full tutorial
Memory
free command
Buffer vs Cache
How to Clear RAM Memory Cache, Buffer and Swap Space on Linux
OOM explained
How to Configure the Linux Out-of-Memory Killer
Surviving the Linux OOM Killer
Disk
Amazon EBS
Linux iostat command
How to Read Linux Iostat’s Output and Interpret System Performance
Video tutorial on extending swap partition and creating a swapfile
Linux Basics – LVM (Logical Volume Manager)
RAID
Video tutorial on extending swap partition and creating a swapfile
Networking
Networking basics
Introduction to Networking
What is a Computer Network?
Types of Networks
MAN
WAN
Parts of a Network
How the internet works
Servers
Clients and Hosts
Network Interface Card NIC
What is a Protocol
Bus Topology
Ring Topology
Star Topology
Mesh Topology
OSI Model
More on the OSI Model
TCP/IP explained
TCP connection states
TCP three way handshake
TCP/IP Ports and Sockets Explained
DNS Name Resolution Process
What happens when we hit a URL in our browser
What is SSL
SSL or TLS handshake
What is an SSL Certificate and How Does it Work?
DHCP Explained
The Certificate Authority vs. The Handshake
Networking +
A tcpdump Tutorial and Primer with Examples
How To Use Traceroute and MTR to Diagnose Network Issues
tcpdump command to capture full-sized packets
Commands
Commands to monitor network bandwidth on Linux server
Linux Route Command Examples (How to Add Route in Linux)
Application Services and Packages
Apache
What is Apache?
Apache Basics Video
Apache Cheat Sheet
Apache Performance Tuning: MPM Modules
How To Use Apache as a Reverse Proxy with mod_proxy on CentOS 7
Tune memory allocation for an Apache web server
Failed to restart httpsd.service: The name org.freedesktop.PolicyKit1 was not provided by any .service files
Redirecting from one URL to another using .htaccess
USING .HTACCESS REWRITE RULES
URL Rewriting for Beginners
How to Enable Apache Userdir Module on RHEL/CentOS
How to set up password authentication in apache (httpd) with htpasswd and .htaccess on RHEL / CentOS 7
How to redirect HTTP to HTTPS Using .htaccess
How to Enable TLS 1.3 in Apache and Nginx
Apache Benchmark
Nginx
How To Install Linux, Nginx, MySQL, PHP (LEMP stack) on Ubuntu 18.04
Nginx Bible
Basic Nginx commands
Basic configuration parameters
SSL certificate Installation
Full configuration Example
Nginx Rewrite examples
Nginx redirect from www to none www domain name
How to Set Up an Nginx Certbot
Urgent security issue in NGINX/php-fpm
Moving from Apache2 to Nginx Webserver
PHP
What is PHP?
The PHP Process Explained
What does PHP-FPM do?
PHP troubleshooting tip
max_execution_time in php explained
Why You Should Upgrade WordPress to PHP 7 Now Rather Than Later
MYSQL
What Is MySQL?
MySQL Command cheat sheet
Creating and editing MySQL DB Dumps
MySQL – MySQL Introduction
MySQL – Structure Introduction
MySQL – Data Types Introduction
Fail2ban
Magento2
Magento explained plus commands for an easy install on Ubuntu 16.04
VNC Installation on Ubuntu
How to install XRDP in Amazon Linux 2
My issues
WordPress
WordPress FTP error
Unable to upload file to WordPress
WordPress Posts Returning 404 Error
How to Fix the 500 Internal Server Error on Your WordPress Website
How to Fix Corrupted Files and Databases in WordPress
Max_upload exceeded..!!! WordPress
6 Ways To Increase the Maximum Upload File Size in WordPress
Being prompted for password after not setting one (RHEL/Amazon Linux)
Unable to transfer files from one instance to another using SCP
Website running and reachable via a browser however giving a 403 when running a CURL
Issue installing Cerbot on Amazon Linux 2
How to restore “Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)”
Renewing your SSL certificate using Certbot/Letsencrypt manually:
AWS(Amazon Web Services)
Instance Health Checks failing
How to fix a Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Reasons why an instance with root on LVM might fail to boot
Instance failing health checks with a Kernel Offset: disabled error
EC2 SSH ISSUES
Injecting userdata to allow ssh
Amazon EBS
AWS Workarounds
Steps to install python3.7 on Amazon Linux 1
Using userdata to resolve ssh issues to your EC2 instance
How to use the same SSH key pair in all AWS regions
Accidentally enabled UFW on your Ubuntu instance and cant SSH as a result?
Lightsail Loadbalancer failing health checks
AWS Docs
How can I avoid DNS resolution failures with EC2 Linux?
Extending a Linux File System after Resizing the Volume
Service Introduction Videos
What is AWS?
Introduction to Amazon EC2
Amazon Elastic Block Store (EBS) Overview
Troubleshooting videos
How do I recover access to my EC2 instances if I lost my SSH key pair?
How do I move my EC2 instance to another subnet, Availability Zone, VPC, or region?
Troubleshooting
Server A Can’t Talk to Server B
Troubleshoot Slow Networks
How To Troubleshoot Common Site Issues on a Linux Server
How to fix a Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
How to fix high memory usage in Linux ?
Troubleshooting a Linux kernel panic after patching
Reproducing a “Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)”
Articles
How to get notified whenever someone logs in via SSH?
procSpy : Python tool that monitors and logs user-run commands on a Linux system
How to identify duplicate files on Linux
Power of SSH Tunneling
Linux commands you should never run on your system
Redis
ElastiCache
Redis restore from S3 snapshot fails
An introduction to Redis data types and abstractions
Redis – Commands
Redis – Keys
Redis – Strings
Redis – Hashes
Redis – Lists
Redis – Sets
Redis – Sorted Sets
My Curriculum Vitae (CV)
Amazon Linux 2