Linux Fundamentals
Linux is an open-source operating system kernel combined with userspace tools that together form the foundation for servers, cloud infrastructure, containers, embedded systems, and desktops. Understanding Linux means understanding files, processes, permissions, shells, and system services.
itLinux | OpenSkills.info
Intro
Linux Fundamentals
Linux is a family of operating systems built around the Linux kernel. The kernel exposes the low-level interfaces for hardware, processes, filesystems, networking, and memory. A working Linux machine also needs user-space programs: a shell to accept commands, libraries and utilities to do work, a service manager, and a distribution that assembles and updates the whole system.
That separation gives you a useful starting model. The kernel manages shared machine resources. User-space programs request work through kernel interfaces. You normally work in user space, but every command eventually depends on the kernel's rules for processes, files, permissions, and devices.
The mental model
Think in four connected layers:
Continue the course
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://docs.kernel.org/admin-guide/index.html
Supports
- Kernel user and administrator documentation scope
- Kernel administrative interfaces including `/proc` and sysfs
- Booting, kernel parameters, security, and diagnostic documentation areas
- https://docs.kernel.org/filesystems/proc.html
Supports
- `/proc` as an interface to kernel internal data structures
- `/proc` system information and runtime parameter interface
- Per-process directories named by PID
- https://www.gnu.org/software/bash/manual/bash.html
Supports
- Shell execution of commands and control of input, output, and environments
- Pipelines connecting standard output to the next command's standard input
- Pipeline status and the `pipefail` option
- Standard input, output, error, and redirection behavior
- https://www.gnu.org/software/coreutils/manual/coreutils.html
Supports
- GNU core utilities for text and file manipulation
- Coreutils areas for directories, file operations, process control, and permissions
- Ownership changes requiring suitable privilege
- https://www.gnu.org/software/coreutils/manual/html_node/Mode-Structure.html
Supports
- Owner, group, and other permission classes
- Read, write, and execute meanings for regular files and directories
- Directory write for creating and removing entries
- Directory execute as search or traversal
- https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html
Supports
- Filesystem Hierarchy Standard purpose and scope
- Common placement conventions for `/etc`, `/home`, `/tmp`, `/usr`, and `/var`
- Interoperability purpose of filesystem hierarchy conventions
- https://wiki.freedesktop.org/www/Software/systemd/
Supports
- systemd as a system and service manager running as PID 1
- systemd supervision, logging, and related system-management components
- systemd as a replacement for SysV init on systems that choose it
- https://www.freedesktop.org/software/systemd/man/255/journalctl.html
Supports
- `journalctl` printing entries from the system journal
- Filtering journal entries by unit and following service logs
