What is Linux? Distros & getting set up
The kernel, GNU tools and distributions, and how to get Linux via WSL, a VM or the cloud.
Linux runs most of the internet: nearly all web servers and cloud machines, every Android phone, the world's 500 fastest supercomputers, routers, TVs, cars and the containers behind modern apps. Learning Linux, and its command line in particular, is one of the most useful skills a developer, DevOps engineer, data scientist or security professional can have.
A tiny bit of history#
- 1969: Unix is created at Bell Labs. Its ideas (small tools, plain-text files, everything is a file) still shape Linux today.
- 1983: Richard Stallman starts the GNU project to build a free Unix-like system: compilers, shells and command-line tools.
- 1991: Linus Torvalds, a Finnish student, releases the Linux kernel. Combined with the GNU tools, it becomes a complete free operating system.
Linux is open source, under the GPL licence. Anyone can read, modify and share the code, and thousands of companies and volunteers improve it.
Kernel vs operating system#
Strictly, "Linux" is just the kernel: the core program that talks to hardware, schedules processes, manages memory and enforces permissions. A usable system needs much more:
A distribution ("distro") packages the kernel with all of these layers, plus an installer and update system.
Popular distributions#
This course uses Ubuntu/Debian commands, with notes where Fedora/RHEL differ. Once you know one family, the others feel familiar: the shell, the filesystem layout and 95% of commands are the same everywhere.
LTS releases. Ubuntu ships a Long-Term Support version every two years (22.04, 24.04, 26.04…) with five years of updates, which makes them the usual choice for servers. Debian stable and RHEL take a similar approach.
Getting a Linux to practise on#
You don't need to replace your current operating system:
- Windows: WSL 2. In PowerShell (as Administrator) run
wsl --install, reboot, and open "Ubuntu" from the Start menu. You get a real Linux kernel and a full Ubuntu userland, integrated with Windows. - macOS. The Terminal app gives you a Unix shell (zsh) with most of the same commands. For real Linux, use a VM (UTM, Multipass, Parallels) or a cloud server.
- Virtual machine. VirtualBox, VMware or GNOME Boxes can run an Ubuntu ISO in a window.
- Cloud server. A small VM from any cloud provider. This is the most realistic option for learning server administration with SSH.
- Live USB. Boot Ubuntu from a USB stick without installing it.
- Docker.
docker run -it --rm ubuntu:24.04 bashgives you a throwaway Ubuntu shell in seconds (minimal, without systemd).
First commands: who and where am I?#
Open a terminal and try these. They're all read-only and safe:
whoami prints your user name, hostname the machine's name and uname -r the kernel version. uname -a shows everything about the kernel and architecture.
Which distribution is this?
ID_LIKE=debian tells you Ubuntu belongs to the Debian family, so apt is your package manager. On Fedora you'd see ID=fedora. Your output will match your own system.
A few more:
Linux philosophy in practice#
A few ideas you'll see throughout this course:
- Small tools that do one thing well, combined with pipes (
|) into powerful workflows. - Text everywhere: configuration, logs and command output are plain text you can read, search and edit.
- Everything is a file: disks, terminals, even process information appear as files.
- Users and permissions are built in from the start, because Linux was designed as a multi-user system.
- The command line is automatable: anything you type can go into a script.
Desktop vs server#
Linux desktops (GNOME, KDE Plasma and others) are polished and great for development. On servers there's usually no graphical interface at all: you log in over SSH and do everything from the shell. That's why this course focuses on the command line, a skill that works identically on a laptop, a Raspberry Pi and a thousand-node cloud cluster.
Common mistakes#
- Thinking you must pick the "perfect" distro first. Ubuntu or Debian are fine starting points, and the skills transfer to every distribution.
- Practising on your only computer's main disk. Use WSL, a virtual machine or a cheap cloud server, where mistakes are free.
- Confusing the shell with the terminal. The terminal is the window; the shell (bash) is the program inside it that runs your commands.
- Copy-pasting commands you don't understand, especially ones that start with
sudo. Read each one first.
What's next#
Next you'll meet the terminal and the shell properly: how commands are structured, how to get help, and the shortcuts that make you fast.
Check your understanding
Quick quiz
1.Strictly speaking, what is 'Linux'?
2.Which distribution family uses
aptand.debpackages?3.Which command shows which distribution and version you are running?
Finished reading?
Mark this lesson complete to track your progress.