Objective. Students will explain the role of the Linux kernel, common distributions, and the purpose of the shell in a web development context.
This lesson, its worked examples and its practice questions has not yet been verified by an industry-certified professional or by a certification or approval body. It is a study draft and may contain errors. Do not use it as instructions for work on a job site or on live equipment. Always follow your instructor, your supervising professional, and current official references and regulations.
VoTechWorks program approval and accreditation are still in progress. Credentials are issued only by the certifying bodies named in each program, after their own exams.
Linux began in 1991 when Linus Torvalds, a Finnish computer science student, released the first version of a free, Unix-like kernel. A kernel is the lowest layer of an operating system. It manages hardware resources — the CPU, memory, storage, and network interfaces — and provides a controlled interface so that programs can use those resources without directly touching the hardware. Every Android phone, most web servers, and a large share of cloud infrastructure runs on the Linux kernel today.
The kernel alone is not a usable system. You cannot sit down at a bare kernel and write a Python script. That is why distributions exist.
A Linux distribution (distro) bundles the kernel with a set of software: a bootloader, system libraries, package manager, command-line utilities, and often a graphical desktop. The same kernel version can appear in many different distributions, each making different choices about default software, release schedules, and intended audience.
Four distributions appear most often in professional web and software development work:
Choosing a distro depends on context: Ubuntu and Debian suit most web development and server work; CentOS Stream or RHEL-compatible systems are common in large enterprise data centers; Fedora suits developers who need recent tooling on a desktop.
Between the kernel and the user sits a desktop environment (DE) — software such as GNOME, KDE Plasma, or Xfce that draws windows, handles mouse input, and provides a file manager. Desktop environments are entirely optional. Production web servers almost always run headless (no graphical interface) to save memory and reduce the attack surface. You administer them entirely through the shell.
A shell is a program that reads commands you type, interprets them, and passes instructions to the kernel. When you open a terminal window on Ubuntu, you are running a shell. The most common shell in Linux today is Bash (Bourne Again SHell). Other shells include Zsh (the macOS default since Catalina), Fish, and the original sh (POSIX shell). CompTIA Linux+ tests knowledge of Bash and sh scripting.
In a web development context, the shell is essential for:
Understanding which shell is active matters because syntax differs between Bash and sh. The command `echo $SHELL` prints the path of your current shell. The file `/etc/shells` lists every shell installed on the system.
Three methods let you confirm exactly which kernel and distribution you are running — information you will need when reading documentation, filing bug reports, or configuring software:
1. `uname -r` — Prints the running kernel release version (for example, `5.15.0-91-generic`).
2. `lsb_release -a` — Prints distribution information including the distributor ID, description, release number, and codename. Requires the `lsb-release` package, which Ubuntu installs by default.
3. `cat /etc/os-release` — Reads a plain-text file that all modern systemd-based distributions include. It contains standardized fields such as `NAME`, `VERSION_ID`, and `PRETTY_NAME`. This method works even when `lsb_release` is not installed.
Linux commands operate with precision — a mistyped command can delete files or change permissions across an entire server. Two professional habits protect you and your team:
These habits carry directly into the Linux+ exam objectives, which test your ability to explain what commands do — not just memorize syntax.
Answer each question, then check it. Nothing is recorded; this is your own practice.
A free tech program — complimentary, as our commitment to get America working. Help us build VoTechWorks. Tell us what works, what doesn’t, and what you want to learn.
Does the school offer financial aid?
No. We don’t offer financial aid because we’re free. No, really: completely free.
Do you offer industry certification?
No. We are not certified yet, so we can’t offer that to students. What we do offer is knowledge and understanding of a trade.
Enroll first in the trade you’re interested in. You get your key, your program opens, and you begin studying.
Enroll free →