Linux Basics: A Gentle Introduction

This course is an introduction to the operating system and its strong concepts. By using only the shell (no programming skills needed), we’ll learn how the system works.

Target Audience

  • Programmers

  • Testers

  • Support personnel

  • Hardware engineers

  • … or anybody who is interested in understanding the OS

Course Outline

  • Commandline Basics

    • Editing a command

    • Completion: the TAB key

    • Variables and environment variables

    • The history buffer

  • Filesystem

    • Directories, and path names

    • File types (symbolic links, device special files, …)

    • Current working directory

    • Commands: ls, cp, mv, find

    • Filesystem permissions

  • Text file handling

    • cat, less, diff, grep

  • Pipes etc.

    • Standard filedescriptors: stdin, stdout, stderr

    • IO redirection

    • Pipes and named pipes

  • Tools, and their combination using the pipe

    • gzip, tar, in combination with e.g. find

    • ssh

    • Shell scripts

  • Processes

    • Basics (including virtual memory)

    • Shell job control

    • System calls

    • ps

    • top

    • Signals

    • Scheduling

  • Networking

    • Network status reporting (ss, and netstat)

    • netcat

Prerequisites

Programming skills are sure helpful but not required. Interest in and fun with operating systems are required.