• Programming Training

    business_appsInterSource offers live instructor-led courses on all important programming technologies, including C#, C/C#, PHP and Visual Basic. We can also arrange training on many less-known but highly useful languages. We can teach courses on a variety of additional topics; please request an offer if you need a course which is not indicated on the site.

    These live classes are offered both on client sites, at our Geneva training center, and via a Web interface.

  • About Programming

    Within software engineering, programming (the implementation) is regarded as one phase in a software development process, normally following closely on the heels of the requirements gathering phase.

    Computer programming (often shortened to programming or coding) is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language. The code may be a modification of an existing source or something completely new. The purpose of programming is to create a program that exhibits a certain desired behavior (customization). The process of writing source code often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic.


    Read More
  • Course Details Programming

    Classes are offered at client sites, at our Geneva training center, and via a live web conference. For detailed course outlines and scheduled classes, please see below.

    To book training, navigate to the course you need, then:

    • For scheduled online classes, register from the choices indicated.
    • If you need an alternative date, time or location, or if you want a live classroom course, click on “request an offer for this course,” to complete the form.

Linux Fundamentals

Course duration

  • 5 days

Course Benefits

  • Learn fundamental tools and concepts of Linux and Unix.
  • Become proficient using the command line.
  • Develop a solid foundation in Unix.
  • Discover patterns and fill in gaps in any existing Linux knowledge.
  • Manipulate files.
  • Learn file system features.
  • Learn to automate tasks with shell scripts.
  • Learn to manage software and secure remote administration.
Available Delivery Methods
Public Class
Public expert-led online training from the convenience of your home, office or anywhere with an internet connection. Guaranteed to run .
Private Class
Private classes are delivered for groups at your offices or a location of your choice.

Course Outline

  1. What Is Linux?
    1. Unix and its Design Principles
    2. FSF and GNU
    3. GPL – General Public License
    4. The Linux Kernel
    5. Linux Kernel and Versioning
    6. Components of a Distribution
    7. Slackware
    8. SUSE Linux Products
    9. Debian
    10. Ubuntu
    11. Red Hat Linux Products
    12. Oracle Linux
  2. Login and Exploration
    1. Logging In
    2. Running Programs
    3. Interacting with Command Line
    4. Desktop Environments
    5. GNOME
    6. Starting X
    7. Gathering Login Session Info
    8. Gathering System Info
    9. uptime and w
    10. got root?
    11. Switching User Contexts
    12. sudo
    13. Help from Commands and Documentation
    14. whereis
    15. Getting Help Within the Graphical Desktop
    16. Getting Help with man and info
    17. Lab Tasks
      1. Login and Discovery
      2. Help with Commands
      3. Switching Users With su
  3. The Linux Filesystem
    1. Filesystem Support
    2. Unix/Linux Filesystem Features
    3. Filesystem Hierarchy Standard
    4. Navigating the Filesystem
    5. Displaying Directory Contents
    6. Filesystem Structures
    7. Determining Disk Usage With df and du
    8. Determining Disk Usage (GUI)
    9. Disk Usage with Quotas
    10. File Ownership
    11. Default Group Ownership
    12. File and Directory Permissions
    13. File Creation Permissions with umask
    14. SUID and SGID on files
    15. SGID and Sticky Bit on Directories
    16. Changing File Permissions
    17. User Private Group Scheme
    18. Lab Tasks
      1. Navigating Directories and Listing Files
      2. Disk and Filesystem Usage
      3. File and Directory Ownership and Permissions
      4. Introduction to Troubleshooting Labs [R7 S12]
      5. Troubleshooting Practice: Filesystem [R7 S12]
  4. Manipulating Files
    1. Directory Manipulation
    2. File Manipulation
    3. Deleting and Creating Files
    4. Managing Files Graphically
    5. Drag and drop with Nautilus
    6. Physical Unix File Structure
    7. Filesystem Links
    8. File Extensions and Content
    9. Displaying Files
    10. Previewing Files
    11. Producing File Statistics
    12. Displaying Binary Files
    13. Searching the Filesystem
    14. Alternate Search Method
    15. Lab Tasks
      1. Manipulating Files and Directories
      2. File Examination and Search Commands
  5. Shell Basics
    1. Role of Command Shell
    2. Communication Channels
    3. File Redirection
    4. Piping Commands Together
    5. Filename Matching
    6. File Globbing and Wildcard Patterns
    7. Brace Expansion
    8. Shell and Environment Variables
    9. Key Environment Variables
    10. Which and Type
    11. General Quoting Rules
    12. Nesting Commands
    13. Lab Tasks
      1. Redirection and Pipes
      2. Wildcard File Matching
      3. Shell Variables
      4. Shell Meta-Characters
      5. Command Substitution
  6. Archiving and Compression
    1. Archives with tar
    2. Archives with cpio
    3. The gzip Compression Utility
    4. The bzip2 Compression Utility
    5. The XZ Compression Utility
    6. The PKZIP Archiving/Compression format
    7. GNOME File Roller
    8. Lab Tasks
      1. Archiving and Compression
  7. Text Processing
    1. Searching Inside Files
    2. The Streaming Editor
    3. Text Processing with Awk
    4. Replacing Text Characters
    5. Text Sorting
    6. Duplicate Removal Utility
    7. Extracting Columns of Text
    8. Combining Files and Merging Text
    9. Comparing File Changes
    10. Lab Tasks
      1. Processing Text Streams
      2. Text Processing
  8. Regular Expressions
    1. Regular Expression Overview
    2. Regular Expressions
    3. RE Character Classes
    4. Regex Quantifiers
    5. RE Parenthesis
    6. Lab Tasks
      1. Pattern Matching with Regular Expressions
      2. Extended Regular Expressions
      3. Using Regular Expressions With sed
  9. Text Editing
    1. Text Editing
    2. Pico/GNU Nano
    3. Pico/Nano Interface
    4. Nano configuration
    5. Pico/Nano Shortcuts
    6. vi and Vim
    7. Learning Vim
    8. Basic vi
    9. Intermediate vi
    10. Lab Tasks
      1. Text Editing with Nano
      2. Text Editing with Vim
  10. Messaging
    1. System Messaging Commands
    2. Controlling System Messaging
    3. Internet Relay Chat
    4. Instant Messenger Clients
    5. Electronic Mail
    6. Sending Email with sendmail
    7. Sending and Receiving Email with mailx
    8. Sending and Receiving Email with mutt
    9. Sending Email with Pine
    10. Evolution
    11. Lab Tasks
      1. Command Line Messaging
      2. Messaging with talkd
      3. Command Line Email
      4. Alpine
  11. Command Shells
    1. Shells
    2. Identifying the Shell
    3. Changing the Shell
    4. Configuration Files
    5. Script Execution
    6. Shell Prompts
    7. Bash: Bourne-Again Shell
    8. Bash: Configuration Files
    9. Bash: Command Line History
    10. Bash: Command Editing
    11. Bash: Command Completion
    12. Bash: "shortcuts"
    13. Bash: prompt
    14. Setting Resource Limits via ulimit
    15. Lab Tasks
      1. Linux Shells
      2. Bash History
      3. Aliases
      4. Bash Login Scripts
      5. The Z Shell
  12. Introduction to Shell Scripting
    1. Shell Script Strengths and Weaknesses
    2. Example Shell Script
    3. Positional Parameters
    4. Input and Output
    5. Doing Math
    6. Exit Status
    7. Comparisons with test
    8. Conditional Statements
    9. Flow Control: case
    10. The borne for-Loop
    11. The while and until Loops
    12. Lab Tasks
      1. Writing a Shell Script
  13. Process Management and Job Control
    1. What is a Process?
    2. Process Lifecycle
    3. Process States
    4. Viewing Processes
    5. Signals
    6. Tools to Send Signals
    7. nohup and disown
    8. Managing Processes
    9. Tuning Process Scheduling
    10. Job Control Overview
    11. Job Control Commands
    12. Persistent Shell Sessions with Screen
    13. Using screen
    14. Advanced Screen
    15. Lab Tasks
      1. Job Control Basics
      2. Process Management Basics
      3. Screen Basics
      4. Using Screen Regions
      5. Troubleshooting Practice: Process Management [R7 S12]
  14. AT and CRON
    1. Automating Tasks
    2. at/batch
    3. cron
    4. The crontab Command
    5. crontab Format
    6. /etc/cron.*/ Directories
    7. Anacron
    8. Lab Tasks
      1. Creating and Managing User Cron Jobs
      2. Adding System cron Jobs
      3. Troubleshooting Practice: Automating Tasks [R7 S12]
  15. Managing Software
    1. Downloading with FTP
    2. FTP
    3. lftp
    4. Command Line Internet – Non-interactive
    5. Command Line Internet – Interactive
    6. Managing Software Dependencies
    7. Using the Yum command
    8. Using Yum history
    9. YUM package groups
    10. Configuring Yum
    11. yumdownloader
    12. Popular Yum Repositories
    13. Using the Zypper command
    14. Zypper Services and Catalogs
    15. The dselect and APT Frontends to dpkg
    16. Aptitude
    17. Configuring APT
    18. Lab Tasks
      1. Command Line File Transfers
      2. Using Yum [R7]
      3. Using Zypper [S12]
      4. Managing Yum Repositories [R7]
      5. Managing Zypper Repositories [S12]
      6. Using APT [U1604]
      7. Adding an APT repository [U1604]
  16. The Secure Shell (SSH)
    1. Secure Shell
    2. OpenSSH Client and Server Configuration
    3. Accessing Remote Shells
    4. Transferring Files
    5. Alternative sftp Clients
    6. SSH Key Management
    7. ssh-agent
    8. Lab Tasks
      1. Introduction to ssh and scp
      2. SSH Key-based User Authentication
      3. Using ssh-agent
  17. Mounting Filesystems and Managing Removable Media
    1. Filesystems Concept Review
    2. Mounting Filesystems
    3. NFS
    4. SMB
    5. Filesystem Table (/etc/fstab)
    6. AutoFS
    7. Removable Media
    8. Lab Tasks
      1. Accessing NFS Shares
      2. On-demand filesystem mounting with AutoFS
  18. Printing
    1. Legacy Print Systems
    2. Common UNIX Printing System
    3. Defining a Printer
    4. Standard Print Commands
    5. Format Conversion Utilities
    6. enscript and mpage
    7. Lab Tasks
      1. Printing
      2. Configuring Print Queues
Class Materials

Each student will receive a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Linux class:

  • Basic knowledge of computer hardware, software, and operating systems.
  • No familiarity with Linux or other Unix operating systems is required.
Since its founding in 1995, InterSource has been providing high quality and highly customized training solutions to clients worldwide. With over 500 course titles constantly updated and numerous course customization and creation possibilities, we have the capability to meet your I.T. training needs.
Instructor-led courses are offered via a live Web connection, at client sites throughout Europe, and at our Geneva Training Center.