Course Outline


Course Objectives

Participants are from a Windows background and need help with basic Linux usage. The objective is to ensure that participants can debug commonly occuring problems during development, devops and system administration.

Software Setup

Ensure that all participants have Fedora or RHEL systems either natively installed or in a VM

Duration

2-5 days

Course Outline

Linux Basics
  • The Linux Kernel and Distributions
  • Window Managers
  • Getting help with man and info pages
  • Shell hacks to improve your productivity
  • Getting hardware information - CPU, Hard Disk, RAM, Network, Other devices
  • Installing applications - using package managers, compiling from source, using programming language installers (pip/cpan etc)
Process Management
  • Process Lifecycle
  • Listing running processes
  • Listing process tree
  • Killing a process
  • Nice values
  • Suspending a process
  • Moving them to background/foreground
  • Signals
  • Cronning scripts
  • Exit code
  • Load averages
  • Daemons and Services
Memory Management
  • Checking free memory
  • Checking memory consumption of processes
  • Finding out more about the RAM
Filesystem Management
  • Everything is a file philosophy
  • Working with directories and files - CRUD
  • Moving and Copying files and directories
  • Current Working Directory
  • Home Directory
  • The Linux filesystem - an overview
  • Types of Filesystems - EXT2, EXT3 etc
  • Mounting and unmounting filesystems
  • Linking files
  • Absolute and relative file paths
  • Partitioning
  • Creating a filesystem
  • Labeling a filesystem
  • Swap partition
  • Log files
  • Configuration files
  • Inodes
  • Working with file archives
  • rsync
User Management
  • Logging in
  • Changing password
  • Users, groups and permissions
  • suid/sgid/sticky bits
  • Creating and deleting users and groups
  • Owner of a process
  • Elevating permissions
  • sudo user
  • who
Network Management
  • Network interfaces
  • DNS lookups
  • ping
  • netstat
  • SSH
    • SSH port forwarding
    • Exporting GUI on ssh
  • screen
  • scp
Shell Scripting
  • I/O Redirection
  • Filter commands - grep, sed, awk, wc, sort, head, tail etc
  • Commonly used shell commands - date, find, locate, gzip, tar
  • Variables
  • Environment variables
  • Aliases
  • Regular Expressions
Mastering a command line editor - vi
  • Basic editing features
  • Modes
  • Moving around
  • Visual mode
  • Tips to efficiently use the editor
X Applications
  • Some useful applications
    • gedit
    • nautilus
    • terminator
    • process monitor

The classroom training will be provided in Bangalore (Bengaluru), Chennai, Hyderabad or Mumbai and will be conducted in the client's premises. All the necessary hardware/software infrastructure must be provided by the client.