Welcome to the exclusive edition of “BEGINNER’S GUIDE FOR LINUX” by TecMint, this course module is specially designed and compiled for those beginners, who want to make their way into the Linux learning process and do the best in today’s IT organizations.
This courseware is created as per the requirements of the industrial environment with complete entrance to Linux, which will help you to build great success in Linux.
We have given special priority to Linux commands and switches, scripting, services, and applications, access control, process control, user management, database management, web services, etc.
Even though the Linux command line provides thousands of commands, but only a few basic commands you need to learn to perform day-to-day tasks in the Linux operating system.
Prerequisites:
All students must have a little understanding of computers and a passion to learn new technology.
Distributions:
This courseware is presently supported on the latest releases of Linux distributions like Red Hat Enterprise Linux, CentOS, Rocky/Alma Linux, Debian, Ubuntu, etc.
Linux Course Objectives
Section 1: Introduction To Linux and OS Installations
- What Is Linux? and How Does Linux Work?
- A Basic Guide to Linux Boot Process
- Linux Directory Structure and Important Files
- How to Install RHEL 9 for Free
- How to Install VirtualBox to Try Different Linux Distros
- Best Linux Distributions for Beginners To Try
- Install Rocky Linux on VirtualBox on Windows
Section 2: Essential Basic Linux Commands
ls Command
– List Files and Directories in Linuxcd Command
– Switch Between Directories in Linuxpwd Command
– Check Current Working Directory in Linuxdir Command
– List Contents of a Directory in Linuxmkdir Command
– Create New Directories in Linuxrmdir Command
– Delete Directories in Linuxmv Command
– Rename or Move Files and Directories in Linuxcp Command
– Copy Files and Directories in Linuxtouch Command
– Create New Files in Linuxfind Command
– Find Files and Directories in Linuxcat Command
– List Contents of Files in Linuxdf Command
– Check Linux File System Disk Space Usagedu Command
– Check Disk Usage of Files and Directoriestar Command
– Create, Extract, and List Archive Files in Linuxgrep Command
– Find Patterns or Strings in Text Filesln Command
– Create Hard and Symbolic Links in Linuxalias Command
– Create Alias (Shortcuts) in Linuxecho Command
– How to Print Line of Text in Linuxtail Command
– Print Last 10 Lines of File in Linuxtop Command
– List Running Processes in Linuxps Command
– List Running Processes with PIDs in Linuxkill Command
– Kill Running Processes with PIDs in Linuxuniq Command
– Remove Duplicate Lines in Linux
Section 3: Essentials of Advance Linux Commands
- Quirky ‘ls’ Commands Every Linux User Must Know
- Manage Files Effectively using head, tail and cat Commands in Linux
- Count Number of Lines, Words, Characters in File using ‘wc’ Command
- Basic ‘sort’ Commands to Sort Files in Linux
- Advance ‘sort’ Commands to Sort Files in Linux
- Pydf an Alternative “df” Command to Check Disk Usage
- Check Linux Ram Usage with ‘free’ Command
- Advance ‘rename’ Command to Rename Files and Directories
- Print Text/String in Terminal using ‘echo’ Command
Section 4: Some More Advanced Linux Commands
- Switching From Windows to Nix – 20 Useful Commands for Newbies – Part 1
- 20 Advanced Commands for Middle Level Linux Users – Part 2
- 20 Advanced Commands for Linux Experts – Part 3
- 20 Funny Commands of Linux or Linux is Fun in Terminal – Part 1
- 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part 2
- 51 Useful Lesser Known Commands for Linux Users
- 10 Most Dangerous Commands – You Should Never Execute on Linux
Section 5: User, Group, and File Permissions Management
- How to Add or Create New Users using ‘useradd’ Command
- How to Modify or Change Users Attributes using ‘usermod’ Command
- Managing Users & Groups, File Permissions & Attributes – Advance Level
- Difference Between su and sudo – How to Configure sudo – Advance Level
- How to Monitor User Activity with psacct or acct Tools
Section 6: Linux Package Management
- Yum Package Management – CentOS, RHEL and Fedora
- RPM Package Management – CentOS, RHEL and Fedora
- APT-GET and APT-CACHE Package Management – Debian, Ubuntu
- DPKG Package Management – Debian, Ubuntu
- Zypper Package Management – Suse and OpenSuse
- Linux Package Management with Yum, RPM, Apt, Dpkg, Aptitude and Zypper – Advance Level
- 27 ‘DNF’ (Fork of Yum) Commands for RPM Package Management – New Update
Section 7: System Monitoring & Cron Scheduling
- Linux Process Monitoring with top Command
- Linux Process Management with Kill, Pkill and Killall Commands
- Linux File Process Management with lsof Commands
- Linux Job Scheduling with Cron
- 20 Command Line Tools to Monitor Linux Performance – Part 1
- 13 Linux Performance Monitoring Tools – Part 2
- Nagios Monitoring Tool for Linux – Advance Level
- Zabbix Monitoring Tool for Linux – Advance Level
- Shell Script to Monitor Network, Disk Usage, Uptime, Load Average and RAM – New Update
Section 8: Linux Archiving/Compression, Backup/Sync and Recovery
Archiving/Compression Files
- How to Archive/Compress Linux Files and Directories using ‘tar’ Command
- How to Open, Extract and Create RAR Files in Linux
- 5 Tools to Archive/Compress Files in Linux
- How to Archive/Compress Files and Setting File Attributes – Advance Level
Backup/Sync Files and Directories in Linux
- How to Copy/Synchronize Files and Directories Locally/Remotely with rsync
- How to Transfer Files/Folders in Linux using scp
- Rsnapshot (Rsync Based) – A Local/Remote File System Backup Tool
- Sync Two Apache Web Servers/Websites Using Rsync – Advance Level
Backup/Recovery Linux Filesystems
- Backup and Restore Linux Systems using Redo Backup Tool
- How to Clone/Backup Linux Systems Using – Mondo Rescue Disaster Recovery Tool
- How to Recover Deleted Files/Folders using ‘Scalpel’ Tool
- 8 “Disk Cloning/Backup” Softwares for Linux Servers
Section 9: Linux File System / Network Storage Management
- What is Ext2, Ext3 & Ext4 and How to Create and Convert Linux File Systems
- Understanding Linux File System Types
- Linux File System Creation and Configurations – Advance Level
- Setting Up Standard Linux File Systems and Configuring NFSv4 Server – Advance Level
- How to Mount/Unmount Local and Network (Samba & NFS) Filesystems – Advance Level
- How to Create and Manage Btrfs File System in Linux – Advance Level
- Introduction to GlusterFS (File System) and Installation – Advance Level
Section 10: Linux LVM Management
- Setup Flexible Disk Storage with Logical Volume Management
- How to Extend/Reduce LVM’s (Logical Volume Management)
- How to Take Snapshot/Restore LVM’s
- Setup Thin Provisioning Volumes in LVM
- Manage Multiple LVM Disks using Striping I/O
- Migrating LVM Partitions to New Logical Volume
Section 11: Linux RAID Management
- Introduction to RAID, Concepts of RAID and RAID Levels
- Creating Software RAID0 (Stripe) on ‘Two Devices’ Using ‘mdadm
- Setting up RAID 1 (Mirroring) using ‘Two Disks’ in Linux
- Creating RAID 5 (Striping with Distributed Parity) in Linux
- Setup RAID Level 6 (Striping with Double Distributed Parity) in Linux
- Setting Up RAID 10 or 1+0 (Nested) in Linux
- Growing an Existing RAID Array and Removing Failed Disks in Linux
- Assembling Partitions as RAID Devices – Creating & Managing System Backups
Section 12: Manage Services in Linux
- Configure Linux Services to Start and Stop Automatically
- How to Stop and Disable Unwanted Services in Linux
- How to Manage ‘Systemd’ Services Using Systemctl in Linux
- Managing System Startup Process and Services in Linux
Section 13: Linux System Security and Firewall
Linux Security and Tools
- 25 Hardening Security Tips for Linux Servers
- 5 Best Practices to Secure and Protect SSH Server
- How to Password Protect Grub in Linux
- Protect SSH Logins with SSH & MOTD Banner Messages
- How to Audit Linux Systems using Lynis Tool
- Secure Files/Directories using ACLs (Access Control Lists) in Linux
- How to Audit Network Performance, Security, and Troubleshooting in Linux
- Mandatory Access Control Essentials with SELinux – New Update
Linux Firewall and Tools
- Basic Guide on IPTables (Linux Firewall) Tips / Commands
- How To Setup an Iptables Firewall in Linux
- How to Configure ‘FirewallD’ in Linux
- Useful ‘FirewallD’ Rules to Configure and Manage Firewall in Linux
- How to Install and Configure UFW – An Un-complicated FireWall
- Shorewall – A High-Level Firewall for Configuring Linux Servers
- Install ConfigServer Security & Firewall (CSF) in Linux
- How to Install ‘IPFire’ Free Firewall Linux Distribution
- How to Install and Configure pfSense 2.1.5 (Firewall/Router) in Linux
- 10 Useful Open Source Security Firewalls for Linux Systems
Section 14: LAMP (Linux, Apache, MySQL/MariaDB and PHP) Setup’s
- Installing LAMP in RHEL/CentOS 6.0
- Installing LAMP in RHEL/CentOS 7.0
- Ubuntu 14.04 Server Installation Guide and Setup LAMP
- Installing LAMP in Arch Linux
- Setting Up LAMP in Ubuntu Server 14.10
- Installing LAMP in Gentoo Linux
- Creating Your Own Webserver and Hosting A Website from Your Linux Box
- Apache Virtual Hosting: IP Based and Name Based Virtual Hosts in Linux
- How to Setup Standalone Apache Server with Name-Based Virtual Hosting with SSL Certificate
- Creating Apache Virtual Hosts with Enable/Disable Vhosts Options in RHEL/CentOS 7.0
- Creating Virtual Hosts, Generate SSL Certificates & Keys and Enable CGI Gateway in Gentoo Linux
- Protect Apache Against Brute Force or DDoS Attacks Using Mod_Security and Mod_evasive Modules
- 13 Apache Web Server Security and Hardening Tips
- How to Sync Two Apache Web Servers/Websites Using Rsync
- How to Install ‘Varnish’ (HTTP Accelerator) and Perform Load Testing Using Apache Benchmark
- Installing and Configuring LAMP/LEMP Stack on Debian 8 Jessie – New Update
Section 15: LEMP (Linux, Nginx, MySQL/MariaDB and PHP) Setup’s
- Install LEMP in Linux
- Installing FcgiWrap and Enabling Perl, Ruby and Bash Dynamic Languages on Gentoo LEMP
- Installing LEMP in Gentoo Linux
- Installing LEMP in Arch Linux
Section 16: MySQL/MariaDB Administration
- MySQL Basic Database Administration Commands
- 20 MySQL (Mysqladmin) Commands for Database Administration in Linux
- MySQL Backup and Restore Commands for Database Administration
- How to Setup MySQL (Master-Slave) Replication
- Mytop (MySQL Database Monitoring) in Linux
- Install Mtop (MySQL Database Server Monitoring) in Linux
- https://www.tecmint.com/mysql-performance-monitoring/
Section 17: Basic Shell Scripting
- Understand Linux Shell and Basic Shell Scripting Language Tips – Part I
- 5 Shell Scripts for Linux Newbies to Learn Shell Programming – Part II
- Sailing Through The World of Linux BASH Scripting – Part III
- Mathematical Aspect of Linux Shell Programming – Part IV
- Calculating Mathematical Expressions in Shell Scripting Language – Part V
- Understanding and Writing functions in Shell Scripts – Part VI
- Deeper into Function Complexities with Shell Scripting – Part VII
- Working with Arrays in Linux Shell Scripting – Part 8
- An Insight of Linux “Variables” in Shell Scripting Language – Part 9
- Understanding and Writing ‘Linux Variables’ in Shell Scripting – Part 10
- Nested Variable Substitution and Predefined BASH Variables in Linux – Part 11
Section 18: Linux Interview Questions
- 15 Interview Questions on Linux “ls” Command – Part 1
- 10 Useful ‘ls’ Command Interview Questions – Part 2
- Basic Linux Interview Questions and Answers – Part 1
- Basic Linux Interview Questions and Answers – Part 2
- Linux Interview Questions and Answers for Linux Beginners – Part 3
- Core Linux Interview Questions and Answers
- Useful Random Linux Interview Questions and Answers
- Interview Questions and Answers on Various Commands in Linux
- Useful Interview Questions on Linux Services and Daemons
- Basic MySQL Interview Questions for Database Administrators
- MySQL Database Interview Questions for Beginners and Intermediates
- Advance MySQL Database “Interview Questions and Answers” for Linux Users
- Apache Interview Questions for Beginners and Intermediates
- VsFTP Interview Questions and Answers – Part 1
- Advance VsFTP Interview Questions and Answers – Part 2
- Useful SSH (Secure Shell) Interview Questions and Answers
- Useful “Squid Proxy Server” Interview Questions and Answers in Linux
- Linux Firewall Iptables Interview Questions – New Update
- Basic Interview Questions on Linux Networking – Part 1 – New Update
Section 19: Shell Scripting Interview Questions
- Useful ‘Interview Questions and Answers’ on Linux Shell Scripting
- Practical Interview Questions and Answers on Linux Shell Scripting
Section 20: Free Linux Books for Learning
- Complete Linux Command Line Cheat Sheet
- The GNU/Linux Advanced Administration Guide
- Securing & Optimizing Linux Servers
- Linux Patch Management: Keeping Linux Up To Date
- Introduction to Linux – A Hands on Guide
- Understanding the Linux® Virtual Memory Manager
- Linux Bible – Packed with Updates and Exercises
- A Newbie’s Getting Started Guide to Linux
- Linux from Scratch – Create Your Own Linux OS
- Linux Shell Scripting Cookbook, Second Edition
- Securing & Optimizing Linux: The Hacking Solution
- User Mode Linux – Understanding and Administration
- Bash Guide for Linux Beginners – New Update
Section 21: Linux Certifications – Preparation Guides
- RHCSA (Red Hat Certified System Administrator) Certification Guide
- LFCS (Linux Foundation Certified Sysadmin) Certification Guide
- LFCE (Linux Foundation Certified Engineer) Certification Guide
Do let us know if you want to include any specific Linux howto, guides, or tips in this Linux learning guide. Don’t forget to join our social communities and subscribe to our Email newsletter for more such how-to’s.
- Facebook: https://www.facebook.com/TecMint
- Twitter: http://twitter.com/tecmint
- Linkedin: https://www.linkedin.com/company/tecmint
Hi Ravi
The index looks very extensive.
Is the book available as pdf? BEGINNER’S GUIDE FOR LINUX – Start Learning Linux in Minutes
Regards
Ghokul
@Ghokul,
The book is currently under progress, and we are working actively to ensure it provides valuable insights for beginners. Once it’s ready, we’ll make sure to offer it in PDF format.
Stay tuned for updates!”
Thank You,
I think this guide is excellent, (I am a beginner in Linux) I am very interested in the Linux world, and I will try to dedicate the necessary time to complete it,
Thank you very much for your contribution.
Is this book (BEGINNER’S GUIDE FOR LINUX) available as a pdf?
@Hussam,
Currently not, but it will be available as PDF in the coming months…
Hi Ravi,
I am really interested in this book and willing to know how I can get a free soft copy of this book?
Hi Ravi
The index looks very extensive.
Is the book available as pdf? BEGINNER’S GUIDE FOR LINUX – Start Learning Linux in Minutes
Regards
Metta
@Mettavihari,
We are in the progress to make this “Linux Beginner Guide” in PDF format…
Thank you for all the effort you put into helping beginners (I’m a beginner too).
I’d love to see one addition and it’s perfect. How to pull edit and flash images maybe using the dd command.
Some glitches need to be addressed. There are some things like getting into a multi-line command prompt that is not beginner-friendly. Need to express how and why that works and most importantly how to get out of it.
Would really appreciate a more detailed approach for newbies.