Edocti
Advanced Technical Training for the Software Engineer of Tomorrow
Edocti Training

Practical Linux Introduction

Beginner
14 h
4.6 (492 reviews)
Practical Linux Introduction

Linux foundations: get started with the essential commands, concepts and workflows.

Hands-on practice with shell, file system, processes and permissions.

Work confidently with text tools, package management and networking basics.

Gain practical experience by applying skills in guided labs (~70%).

How this helps: build confidence to use Linux daily in development and ops.

Who it’s for: designed for individuals new to Linux who want a structured introduction.

By the end, you’ll navigate Linux systems and perform common tasks with ease.

Curriculum

Introduction and setup
  • Install a Linux VM in VirtualBox (CentOS/Ubuntu)
  • Terminal basics; shells and common shortcuts
  • Package managers overview (dnf/yum, apt, zypper)
System startup and shutdown
  • Boot sequence essentials
  • GRUB and configuration files
  • Key configuration in /etc
  • The init process and systemd basics
  • Shutting down and rebooting safely
Working with files and directories
  • Filesystem Hierarchy Standard (FHS)
  • Navigate the filesystem
  • View and edit text files (nano, vim)
  • Create, copy, move, rename, delete
  • Find files (find, locate, grep)
  • Pipelines: sort, filter, basic regex, tr
  • Work with binary files; diff text and binaries
Users and groups
  • User and group management
  • Passwords and sudo
  • SSH basics; copy files over SSH (scp/rsync)
Permissions
  • Mode bits, ownership, umask
  • setuid, setgid, sticky bit
  • Practical permission patterns
Processes and jobs
  • Programs vs processes; daemons
  • ps/top/htop; signals and kill
  • Foreground/background jobs; nohup & disown
  • Nice/renice (scheduling basics)
Filesystems and storage
  • Create/format filesystems (ext4, xfs)
  • Check and repair (fsck)
  • Mount/unmount (incl. NFS)
  • Swap basics
System status and troubleshooting
  • CPU, memory, disk, and swap usage
  • Logs: journalctl and /var/log/*
  • Simple problem‑solving workflows
Package management
  • Install, remove, search, update packages
  • Package concepts: repos, signatures, dependencies
Networking
  • Configure interfaces and hostnames
  • Routing basics
  • Name resolution (resolv.conf, systemd‑resolved)
  • Diagnostics: ping, traceroute, ss, tcpdump
Practical shell scripting
  • Bash syntax essentials; quoting
  • Variables, conditionals, loops, functions
  • Command substitution and exit codes
  • Write and run many small scripts

Optional modules

Advanced topics (optional)
  • systemd services and timers; journald deep‑dive
  • cron vs. systemd timers; logrotate
  • Firewall basics: firewalld/ufw; brief nftables/iptables
  • Storage extras: LVM snapshots; intro to Btrfs/ZFS
  • Security: SSH hardening, key management, sudo best practices
  • Monitoring: iostat, vmstat, sar, atop; quick intro to collectd/node_exporter
  • Containers primer: Podman/Docker basics for developers
  • Automation: aliases, dotfiles, and portable scripts

Course Day Structure

  • Part 1: 09:00–10:30
  • Break: 10:30–10:45
  • Part 2: 10:45–12:15
  • Lunch break: 12:15–13:15
  • Part 3: 13:15–15:15
  • Break: 15:15–15:30
  • Part 4: 15:30–17:30