Linux Basics for Power Users

Objectives

  • Understand and use the Linux/Unix terminal in effective way
  • Be comfortable with most of the command line tools available in Linux/Unix
  • Learn using Bash to make the daily work efficient

Audience

  • The course is intended for technical personnel who need to use the Linux/Unix terminal on a daily basis, in an effective manner.

Course Format

  • Duration of the course is 16 academic hours. (Usually 2 days or 4 half-days).
  • The course includes approximately 40% hands on lab work.

Prerequisites

  • Basic familiarity with MS Windows or Mac OSX.
  • Experience with a text editor like notepad, emacs, vi, or pico.
  • Basic understanding of files and directories.

Syllabus

Introduction

  • What is Unix and Linux?
  • Unix and Linux, a brief history
  • Philosophy - Open Source, Free Software, Freware, Propriatery Software
  • Open Source Licenses - GNU GPL, BSD and in between
  • Linux distributions (Fedora, RedHat, CentOS, Debiam, Ubuntu etc.)

Linux as Desktop

  • Login/Logout/Reboot
  • Gnome/KDE desktop environment
  • Installing programs, package management system
  • Basic maintenance - installing security upgrades
  • Overview of a few selected desktop applications
  • e-mail, web browsing, word processor, spreadsheet, file system browser
  • Opening the Terminal

Setting up your Linux Shell

  • Accessing Linux from another computer (telnet, ssh, putty)
  • Environmental variables
  • PATH, path
  • Customizing the prompt

The Bourne Again Shell (Bash)

  • Starting a Bash shell
  • The history facility
  • Command line editing
  • Aliases
  • Job control

Writing Scripts with Bash

  • Executing Commands in a Bash Script
  • Variables
  • Running the Script
  • Arithmetic operators
  • Logical operators & Conditionals
  • Control Statements
  • Loops

Findig Files

  • find, locate, whereis
  • Wildcard (glob) patterns

Searching Through Files

  • grep et. al.
  • awk
  • sed
  • Finding text in binaries
  • Piping and redirection

Regular Expressions

  • Pattern Syntax
  • Remembering Patterns
  • Metacharacters
  • Examples

Working with Files

  • Basic vi
  • Utilities such as cut, paste, sort, uniq, head, tail, wc
  • Comparing files with cmp, diff, patch

File Permissions and Ownership

  • Permissions
  • Owners (users and groups)
  • chown, chmod, newgrp, id

File System Basics

  • File System Hierarchy
  • Hard and Symbolic Links
  • i-nodes, ls, stat
  • du, df, mount
  • tar, gzip, sha1sum

Processes

  • What's a process?
  • Process states
  • Foreground, Background, suspended
  • Sending Signals using kill, pkill
  • Monitoring Processes with top, htop, ps, pgrep

Let's talk

If you would like to bring this course to your organization, let's talk about it! You can reach me via email at gabor@szabgab.com or you can go ahead and schedule a chat:

Schedule a call