Egy Linux rendszer több, egymásra épülő rétegből áll. A szerver indításakor ezek nagyjából az alábbi sorrendben lépnek működésbe, ezért a felsorolás egyben azt is mutatja, mi történik a bekapcsolás és a bejelentkezés között.
1. Rendszerbetöltő (bootloader)
A gép bekapcsolása után a firmware (BIOS vagy UEFI) a rendszerbetöltőt indítja el, Linuxon szinte mindig a GRUB-ot. Ez tölti be a memóriába a kernelt és egy ideiglenes kezdeti fájlrendszert (initramfs), amely a lemezek eléréséhez szükséges modulokat tartalmazza. A GRUB menüjéből egy régebbi kernellel is elindítható a rendszer, ha egy frissítés után gond van.
2. Kernel
A Linux kernel a rendszer magja: közvetlenül kommunikál a hardverrel, kezeli a memóriát, a folyamatokat, a fájlrendszereket és a hálózatot, és rendszerhívásokon keresztül szolgálja ki a programokat. A futó kernel verzióját az uname -r parancs mutatja.
3. Init rendszer: systemd
A kernel elsőként egyetlen folyamatot indít el (PID 1), amely a többi szolgáltatás elindításáért felel. A mai disztribúciókon ez a systemd. Ez indítja el a hálózatot, a webszervert, az adatbázist, az SSH-kiszolgálót és a többi háttérszolgáltatást (daemont), és ez gyűjti a naplóikat is. A szolgáltatások kezeléséről a systemctl cikkünk szól.
4. Rendszerkönyvtárak
A programok nem maguk valósítanak meg minden alapfunkciót, hanem közös, megosztott könyvtárakat használnak. A legfontosabb a C könyvtár (a legtöbb disztribúción a glibc), amelyen keresztül a programok a kernel szolgáltatásait hívják. Emellett például az OpenSSL a titkosításért, a zlib a tömörítésért felel. Egy könyvtár biztonsági frissítése ezért az összes rá épülő programot érinti.
5. Shell és alapparancsok
A shell (parancsértelmező, Linuxon többnyire a bash) fogadja és hajtja végre a begépelt parancsokat. Az alapvető parancsok, mint az ls, a cp, a mv, a chmod vagy a grep, külön programok, többségük a GNU projekt része. Ezek használatáról az alapvető Linux parancsokról szóló cikk ad áttekintést.
6. Csomagkezelő
A programok telepítését, frissítését és eltávolítását a csomagkezelő végzi, amely a függőségeket is feloldja. Az AlmaLinux, a Rocky Linux és a CloudLinux a dnf (régebben yum), a Debian és az Ubuntu az apt parancsot használja. Ez az egyik legszembetűnőbb különbség a disztribúciók között.
7. Könyvtárszerkezet és konfigurációs fájlok
A Linux minden fájlt egyetlen, a / gyökérből induló fába rendez. A legfontosabb könyvtárak:
/etc: a rendszer és a szolgáltatások konfigurációs fájljai (például/etc/ssh/sshd_config);/var: változó adatok, például a naplók (/var/log) és gyakran a weboldalak (/var/www);/home: a felhasználók saját könyvtárai, arootfelhasználóé a/root;/usr: a telepített programok és könyvtárak;/tmp: ideiglenes fájlok.
A beállítások szinte mindig egyszerű szöveges fájlokban vannak, ezért egy szövegszerkesztővel módosíthatók és könnyen menthetők.
8. Felhasználói programok és grafikus felület
Asztali gépen erre épül a grafikus környezet (például a GNOME vagy a KDE Plasma) és a felhasználói alkalmazások. Szervereken grafikus felület általában nincs: a VPS-ek kezelése SSH-n, parancssorból történik, így a gép erőforrásai a weboldalakat és alkalmazásokat szolgálják.