Code Maven

Linux Basics for Power Users

This, along with the other courses can be given either on-site in the offices of the client or on-line via Zoom or other means. Contact Gabor Szabo for more details.

Goals

  • 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.

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.

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.

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

Resources


If you are interested in this course, contact Gabor Szabo for more details.