Note: 

   

If you guys are getting coupon expired or course is not free after opening the link, then it is due to the fact that course instructors provide only few hundreds or thousands of slots which get exhausted. So, try to enroll in the course as soon as it is posted in the channel. The Coupons may expire any time for instant notification follow telegram channel

New customer offer! Top courses from $13.99 when you first visit Udemy

As part of this course, you will learn most of the important Linux commands that can come in handy while working in Linux-based environments.

Here are the high-level details of the Linux Commands that are covered as part of this hands-on course.

  • You will get started by having an appropriate environment to practice. Windows users can set up Ubuntu 20.04 using wsl.

  • Once the environment is ready, you will understand how to get started with basic Linux Commands.

  • The most commonly used command in Linux is ls. It is used to list the files. We will see different variations of ls by going through all the relevant arguments.

  • One of the powerful Linux commands and also my favorite is “find“. It helps us to filter the files and directories based on name, type, modified time, etc. You will learn how to use the find command effectively from the perspective of finding the files based on the criteria.

  • As we understand how to get details related to files and folders in Linux, we will go through the details related to previewing the data in files using important Linux commands such as cat, tail, more, etc. Also, we will review Linux commands such as cut, sort, uniq to process the data. All these commands are typically used against text files.

  • After going through details related to ls, find commands as well as commands related to processing data in files, we will walk you through the details related to file and folder properties in Linux. You will get an overview of commands such as useradd, userdel, chmod, etc which are typically associated with file permissions.

  • One of the key aspects related to files and folders is to manage them effectively. We will go through the details about managing files and folders using Linux commands such as cp for copy, mv for move or rename, rm for delete or remove, tar to build uncompressed as well as compressed tar balls. Also, you will get a taste of the awk command to automate some of the common tasks such as reorganizing the files based on patterns.

  • The core components of a computer are nothing but CPU, Memory, and Storage. In this section or module, you will be learning Linux commands such as lscpu to get CPU details, free to get memory details, and then df and du to get storage details.

  • At times, we need to make sure the data is in files as well as codebase to troubleshoot the production issues or bugs in QA. In this section, you will learn how to use the Linux command called diff to compare files and folders and review the differences.

  • Environment Variables are the ones that can impact the sessions logged in by users in Linux. As part of this section, you will be learning details related to Variables, Environment Variables. Also, you will understand how to list all the Environment Variables using Linux commands such env, and how to get a value of a Variable or Environment Variable using the Linux command echo. On top of these things, you will also learn all important aspects related to one of the most important Environment Variables called PATH.

  • As we gain a decent amount of knowledge related to Linux commands using a single server, it is time for us to explore other important commands such as ssh, scp, pssh, pscp, etc which require more than one Linux System or Server. Also, we need to go through basic networking concepts. To learn commands to interact between the servers as well as to understand basic networking concepts, we will get started with AWS to provision Ubuntu-based virtual machines. These Virtual Machines will be used in the subsequent sections to learn the concepts mentioned earlier as part of this bullet point.

  • Once we go through the details about getting started with AWS, we will focus on learning all key concepts related to SSH such as sshd daemon, updating ssh config files, and restarting sshd using systemctl or service command. Also, we will go through the details related to passwordless login and also ability to run commands remotely via ssh. We will also understand how to set up parallel ssh and then run commands on multiple Linux systems in parallel.

  • To be comfortable with learning in a Linux environment, it is very important for one to understand key concepts such as different types of IP Addresses, Port Numbers, relationships between applications and databases with ports, etc. In this section, we will go through all important networking concepts using apache2, MongoDB, etc.

  • Once we are comfortable with SSH, it is time for us to use tools such as scp which uses ssh under the hood to copy files and folders between the Linux Systems. We will also explore parallel scp to copy files in parallel to multiple target systems from one source system. Also, we will go through the details related to speeding up the copy using different techniques which include submitting multiple scp commands using nohup.

  • One of the important aspects for any IT Engineer is to troubleshoot the application issues deployed in Linux by reviewing logs generated by applications. After going through scp, you will learn how to troubleshoot issues by using grep and find against log files of the applications deployed on the Linux Server.

  • To ensure that we can monitor and manage Linux Servers, we not only need to understand how to manage applications and databases in Linux but also need to understand the performance of the applications. For managing applications and databases on a Linux server, one should be familiar with commands such as apt to install applications and systemctl or service to manage the life cycle of applications and databases. To monitor, one should be familiar with commands such as ps, lsof, top, etc. You will learn how to monitor and manage applications as well as databases using examples such as ssh, apache2, mongodb, jupyterlab, etc.

  • As we learned quite a few commands and tools on Linux, now it is time for us to work on increasing productivity by using appropriate tools, especially for Windows users. You will see the relevance and also how to setup tools such as notepad++, winscp, visual studio code with remote development extension, git tools for Windows, etc.

  • Organizations will end up having hundreds of servers to support their applications. However, these hundreds of servers need to follow a handful of templates. Using Server Automation tools like Ansible, we should be able to automate the process of configuring a large number of servers using a handful of templates. You will get an overview of Ansible covering some of the core concepts of Ansible such as running commands, inventory, playbooks, variables, roles, etc.

  • Also, you will understand how to use programming languages like Python to take care of automation by using modules such as os, glob, subprocess, etc.

  • Introduction to Managing Files and Folders in Linux

  • Generate empty files in Linux using touch command

  • Creating Directories in Linux using mkdir command

  • Overview of awk command in Linux

  • Overview of cp command to copy files in Linux

  • Using cp command to copy files in Linux

  • Create multiple folders at once using awk in Linux

  • Copy files using Patterns in Linux

  • Automate file copy using awk and cp in linux

  • Copying folders recursively using cp command in Linux

  • Copying files using cp while preserving properties in Linux

  • Moving Files in linux using mv command

  • Automate file move using awk and mv in linux

  • Overview of tar command to take the backups

  • Create backup of files and folders using tar command in linux

  • Restoring Files and Folders using tar command in Linux

  • Moving Folders in Linux using mv command

  • Overview of rm command to remove files from Linux File System

  • Delete files from Linux File System using rm command

  • Use alias to delete files interactively from Linux File System

  • Delete folders from Linux File System using rm command

  • Restore Data Folder from the tar ball

  • Delete files using find and rm from Linux file system based on name

  • Delete files using find and awk from Linux file system based on name

  • Generate log files for multiple years using touch with patterns

  • Update timestamp of files based on names in Linux using touch

  • Delete files using find and rm based on modified time in Linux

  • Renaming the files and folders in Linux

  • Introduction to Monitoring and Managing Linux Servers using System Commands

  • Setup EC2 Instance on AWS using Ubuntu 2

  • Overview of Managing Softwares on Ubuntu using apt

  • Install Apache Web Server and Mongodb on Ubuntu

  • Manage Applications and Databases using systemctl or service command

  • Start Apache Web Server and Mongodb using systemctl

  • Overview of Service and its components

  • Recap of commands to get Linux Server Details

  • Get CPU or Load Average of Linux Server using uptime command

  • Overview of ps command to get details about processes on Linux Server

  • Get details of all the processes running on Linux Server using ps

  • Get list of processes owned by user on Linux Server using ps

  • Customize the output of ps command for specific details of processes

  • Number of processes on Linux Server owned by each user using ps

  • Get Process Details for a service on Linux Server using ps command

  • Overview of lsof command to get list of open files on Linux

  • Get open file details using lsof for a given process id

  • Get open file details using lsof for a given port number

  • Get Process Details using lsof command for a given file

  • Troubleshoot Port Usage on Linux using lsof command

  • Overview of top command in Linux to get system performance details

  • Getting help or man page of top command in Linux

  • Using Command Line Options of top command in LInux

  • Customize top interactive interface in Linux

  • Switching between groups in top interactive interface in Linux

  • Kill Processes using top interactive interface in Linux

  • Terminate AWS EC2 Instance setup to practice Linux system management commands

  • Introduction to Developer Tools for Linux on Windows

  • Install Notepad++ on Windows

  • Install WinScp on Windows to access files on remote Linux Servers or Sites

  • Add Site to WinScp for Password Login into Remote Linux Server

  • Add Site to WinScp for Passwordless Login into Remote Linux Server

  • Copying Files between Windows and Remote Linux Systems using WinScp

  • Opening Files on Remote Machines using WinScp and Notepad++ Locally on Windows

  • Overview of Advanced Editing Capabilities of Notepad++

  • Overview of Visual Studio Code on Windows for Remote Development

  • Install Visual Studio Code on Windows

  • Install Remote Development Extension Kit for Visual Studio Code

  • Setup Project on remote machine for remote development using Visual Studio Code

  • Open Remote Project via SSH using Visual Studio Code

  • Open Project via WSL using Visual Studio Code

  • Access Configuration Files on Remote Machines using Visual Studio Code

  • Install Git and Git Bash on Windows

  • Install Beyond Compare on Windows

  • Setup Repository using Git to explore Beyond Compare

  • Quick Demo of Beyond Compare to compare code base

  • Introduction to Overview of Ansible for Server Automation

  • Setup Ansible on Ubuntu 20

  • Provision EC2 Instances to learn Ansible

  • Run first command using Ansible on Multiple Instances using inline inventory

  • Run first command using Ansible on Multiple Instances using inventory file

  • Update Ansible Hosts Files on AWS EC2 Reboots

  • Overview of Ansible help, man page and official documentation

  • Add User and Group Manually in Linux

  • Add Group on remote instances using ansible

  • Adding User using Ansible user module on remote servers

  • Add Folder on remote systems using Ansible file module

  • Copy authorized keys using Ansible copy module

  • Setup Project Structure for Ansible Playbooks using Visual Studio Code

  • Create and Run first ansible playbook

  • Define Variables for Credentials to run Ansible Playbooks

  • Develop Ansible Playbook to Mange Users

  • Getting Started with Developing Ansible Roles

  • Develop and Validate Ansible Playbook with Role

  • Adding more tasks to the Ansible Role and Troubleshooting the issues

  • Create Ansible Playbook with Variables

  • Using Lists and Loops in Ansible Playbooks

  • Using Tags to run specific tasks from Playbooks

  • Update Ansible Role and Playbook with variables and tags

  • Add Variables under vars folder of Ansible Role

  • Terminate AWS EC2 Instances used for Ansible Tasks for Server Automation

  • Conclusion of Overview of Server Automation using Ansible

  • Here is the desired audience for this advanced course.