🚀 Launch Special: $29/mo for life --d --h --m --s Claim Your Price →

Linux® Fundamentals

The Linux Fundamentals course teaches command‑line basics, covering file system navigation, users and permissions, process and package management, and introductory shell scripting, preparing learners for real‑world tasks and certification readiness.

Who Should Take This

It is ideal for IT support staff, aspiring system administrators, and developers who have little or no prior exposure to Linux. These learners seek a distro‑agnostic foundation to confidently navigate the command line, manage system resources, and build basic scripts, often aiming for CompTIA Linux+ or LPIC‑1 certification.

What's Included in AccelaStudy® AI

Adaptive Knowledge Graph
Practice Questions
Lesson Modules
Console Simulator Labs
Exam Tips & Strategy
20 Activity Formats

Course Outline

68 learning goals
1 File System and Navigation
4 topics

File System Hierarchy

  • Identify the purpose of key directories in the Linux Filesystem Hierarchy Standard including /, /bin, /etc, /home, /var, /tmp, /usr, and /opt.
  • Explain the difference between absolute and relative paths and demonstrate navigation using cd, pwd, and path shortcuts (., .., ~).
  • Describe the concept of mount points and explain how separate partitions or devices are attached to the directory tree via /etc/fstab.

File and Directory Operations

  • Create, copy, move, rename, and remove files and directories using cp, mv, rm, mkdir, and rmdir, including recursive and forced operations.
  • List directory contents using ls with common flags (-l, -a, -h, -R) and interpret the output including permissions, ownership, size, and timestamps.
  • Use find and locate to search for files by name, type, size, and modification time, and explain the difference between indexed and real-time file searches.

Links and Inodes

  • Explain the concept of inodes and describe how the file system maps filenames to inode numbers to locate file data on disk.
  • Compare hard links and symbolic links in terms of inode sharing, cross-filesystem support, and behavior when the target is deleted.

I/O Redirection and Pipes

  • Explain standard input, standard output, and standard error streams and demonstrate redirection using >, >>, <, and 2> operators.
  • Use pipes to chain commands together, passing the output of one command as input to the next, and construct multi-stage pipelines for text processing.
2 Users and Permissions
4 topics

User and Group Management

  • Describe the structure of /etc/passwd, /etc/shadow, and /etc/group, and explain how Linux stores user account information and group memberships.
  • Create, modify, and delete user accounts using useradd, usermod, and userdel, and manage group membership with groupadd and gpasswd.
  • Explain the role of the root account and describe how sudo provides controlled privilege escalation through /etc/sudoers configuration.

File Permissions and Ownership

  • Interpret the rwx permission model for owner, group, and other, and convert between symbolic and octal (numeric) permission notation.
  • Apply chmod to set file and directory permissions using both symbolic and octal modes, and use chown and chgrp to change ownership.
  • Explain the effect of special permission bits (setuid, setgid, sticky bit) and describe scenarios in which each is used for security or shared directory management.
  • Analyze a file permission scenario and determine whether a given user can read, write, or execute a file based on ownership, group membership, and permission bits.

Default Permissions and ACLs

  • Explain how umask determines default permissions for newly created files and directories and calculate the resulting permissions for a given umask value.
  • Describe POSIX Access Control Lists (ACLs) and explain how getfacl and setfacl extend the basic permission model to grant per-user or per-group access beyond owner and group.
  • Analyze a multi-user file sharing scenario and determine the correct combination of ownership, group membership, permissions, and ACLs to enforce the required access policy.

Authentication Mechanisms

  • Describe the Pluggable Authentication Modules (PAM) framework and explain how it provides a modular interface for authentication, account management, and session control.
  • Explain password aging policies configured through /etc/login.defs and chage, and describe how to enforce minimum length and complexity requirements.
3 Process Management
5 topics

Process Lifecycle

  • Describe how Linux creates processes using fork and exec, and explain the parent-child relationship and the role of PID 1 (init/systemd).
  • Identify process states (running, sleeping, stopped, zombie) and explain the conditions that cause a process to transition between states.
  • Use ps, top, and htop to view running processes and interpret key fields including PID, PPID, CPU%, MEM%, and process state.

Signals and Job Control

  • List common Linux signals including SIGTERM, SIGKILL, SIGHUP, and SIGINT, and describe the default behavior of each.
  • Send signals to processes using kill and killall commands and explain the difference between graceful termination (SIGTERM) and forced termination (SIGKILL).
  • Manage foreground and background jobs using &, bg, fg, jobs, and Ctrl+Z, and explain how job control allows multitasking in a single terminal session.

Task Scheduling

  • Create, edit, and list cron jobs using crontab and interpret the five-field cron schedule expression (minute, hour, day-of-month, month, day-of-week).
  • Compare cron for recurring tasks with at for one-time scheduled execution and describe when each is appropriate.

Process Priority

  • Explain the Linux nice value system and describe how nice and renice adjust process scheduling priority from -20 (highest) to 19 (lowest).
  • Analyze a system with high CPU contention and determine which processes to reprioritize to maintain responsiveness for critical services.

Resource Monitoring

  • Use free, df, and du to monitor memory usage, disk space, and directory sizes, and interpret their output to identify resource constraints.
  • Describe the /proc virtual filesystem and explain how files like /proc/cpuinfo, /proc/meminfo, and /proc/[pid]/status expose kernel and process information.
  • Analyze system resource usage using vmstat, iostat, and sar to identify CPU, memory, or I/O bottlenecks on a loaded system.
4 Package Management
3 topics

Debian Package Management

  • Describe the role of apt and dpkg in Debian-based distributions and explain how repositories, package lists, and dependency resolution work together.
  • Install, update, remove, and search for packages using apt commands (install, update, upgrade, remove, search) and manage .deb files directly with dpkg.
  • Configure third-party APT repositories by adding GPG keys and sources list entries, and explain the security implications of adding untrusted repositories.

RPM Package Management

  • Describe the role of yum/dnf and rpm in Red Hat-based distributions and explain how they differ from Debian's apt/dpkg tooling.
  • Install, update, and remove packages using dnf/yum commands and query installed packages and files using rpm.

Package Management Concepts

  • Compare apt and dnf/yum package managers across dependency resolution, repository management, and transaction handling to evaluate their relative strengths.
  • Explain the purpose of package signing and GPG verification and describe how package managers validate package integrity before installation.
5 Shell Scripting Basics
4 topics

Shell Environment

  • Identify common Linux shells (bash, zsh, sh) and describe how the login shell is configured via /etc/passwd and how shell initialization files (.bashrc, .profile) are sourced.
  • Define and use environment variables and shell variables, and explain the difference between local and exported variables using the export command.
  • Describe how the PATH variable determines command resolution and explain how to add directories to PATH for the current session and persistently.

Script Structure and Control Flow

  • Write a basic bash script with a shebang line, make it executable, and pass command-line arguments using positional parameters ($1, $2, $@, $#).
  • Implement conditional logic using if/elif/else statements and test expressions ([ ], [[ ]]) to make decisions based on file existence, string comparison, and numeric values.
  • Create loops using for, while, and until constructs to iterate over lists, file contents, and numeric ranges in shell scripts.
  • Define and call shell functions, pass arguments to them, and use return values and exit codes to control script flow.

Text Processing Tools

  • Use grep with basic and extended regular expressions to search for patterns in files and command output, including common flags (-i, -r, -v, -c, -l).
  • Apply sed for stream editing including line substitution, deletion, and in-place file modification using basic addressing and substitution commands.
  • Use awk to extract and transform columnar data from text files, applying field separators, pattern matching, and basic arithmetic operations.
  • Analyze a log file processing requirement and construct a pipeline combining grep, sed, awk, sort, uniq, and wc to extract and summarize the needed information.

Script Debugging and Error Handling

  • Explain exit codes in bash scripts and use $? to check command success, and implement error handling with set -e, set -u, and trap statements.
  • Use set -x and bash -x for script tracing, and analyze trace output to identify logic errors and unexpected variable expansions.
6 Networking and Services
4 topics

Network Configuration

  • Display and configure IP addresses, routes, and network interfaces using ip and legacy ifconfig/route commands.
  • Describe how /etc/hosts, /etc/resolv.conf, and /etc/nsswitch.conf control hostname resolution and DNS client configuration on Linux.
  • Use diagnostic tools including ping, traceroute, dig, nslookup, ss, and netstat to troubleshoot network connectivity and DNS resolution issues.

Firewall Configuration

  • Describe the Linux netfilter framework and explain how iptables organizes rules into tables (filter, nat, mangle) and chains (INPUT, OUTPUT, FORWARD).
  • Write basic iptables rules to allow or block traffic based on source IP, destination port, and protocol, and explain the importance of rule ordering and default policy.
  • Compare iptables, nftables, and firewalld, and evaluate which tool is appropriate for a given distribution and use case.

SSH and Remote Access

  • Describe the SSH protocol and explain how it provides encrypted remote shell access, file transfer (scp/sftp), and port forwarding.
  • Generate SSH key pairs using ssh-keygen and configure key-based authentication by distributing public keys to remote hosts.
  • Analyze SSH server configuration options in /etc/ssh/sshd_config and evaluate security hardening measures such as disabling root login and password authentication.

Service Management with systemd

  • Describe the role of systemd as the init system and service manager, and explain how unit files define service behavior, dependencies, and restart policies.
  • Use systemctl to start, stop, restart, enable, and disable services, and check service status and logs using journalctl.
  • Describe systemd targets (multi-user.target, graphical.target, rescue.target) and explain how they replace traditional SysV runlevels for controlling system boot state.
  • Analyze systemd journal output to diagnose service startup failures, identifying dependency issues and configuration errors from log messages.

Hands-On Labs

15 labs ~375 min total Console Simulator

Practice in a simulated cloud console or Python code sandbox — no account needed. Each lab runs entirely in your browser.

Scope

Included Topics

  • Linux file system hierarchy, navigation commands, file and directory operations, symbolic and hard links, and file globbing and wildcards.
  • User and group management, ownership and permission models (rwx, octal, special bits), sudo configuration, and PAM authentication basics.
  • Process lifecycle, job control, signals, scheduling with cron and at, and resource monitoring with top, ps, and related utilities.
  • Package management across Debian (apt/dpkg) and Red Hat (yum/dnf/rpm) families, repository configuration, and dependency resolution.
  • Shell scripting fundamentals including variables, conditionals, loops, functions, exit codes, and common text-processing tools (grep, sed, awk, cut, sort).
  • Basic networking configuration including IP addressing, DNS resolution, firewall rules with iptables/nftables, SSH, and systemd service management.

Not Covered

  • Linux kernel development, kernel module programming, and custom kernel compilation.
  • systemd internals, writing custom unit generators, and cgroup v2 advanced resource management.
  • Container runtimes (Docker, Podman) and orchestration platforms beyond basic conceptual awareness.
  • Desktop environment configuration (GNOME, KDE) and X11/Wayland display server internals.
  • Advanced storage: LVM thin provisioning, RAID controller firmware, ZFS, and Btrfs advanced features.

Ready to master Linux Fundamentals?

Adaptive learning that maps your knowledge and closes your gaps.

Subscribe to Access

Trademark Notice

Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.

AccelaStudy® and Renkara® are registered trademarks of Renkara Media Group, Inc. All third-party marks are the property of their respective owners and are used for nominative identification only.