Přejít na obsah

Vrstvy Linuxu: TTY/CLI a hierarchie souborového systému (FHS, HIER, systemd, XDG) - strana 1/3 - LINUX PRO DOMÁCNOST

Přeskočit menu
Přeskočit menu
Přeskočit menu

Vrstvy Linuxu: TTY/CLI a hierarchie souborového systému (FHS, HIER, systemd, XDG) - strana 1/3

JAK ZAČÍT > STRUKTURA
03.03.2026

| STRANA 1 | STRANA 2 | STRANA 3 |

Grafické prostředí (X11/Wayland, compositor, desktop) je jen jedna z vrstev Linuxu. Pod ním běží „textová“ vrstva: shell, terminál, služby, logy, konfigurace a hlavně souborový systém, který drží systém pohromadě. Právě pochopení adresářové hierarchie je jeden z nejrychlejších způsobů, jak se v Linuxu začít orientovat „do hloubky“ – a hlavně jak efektivně řešit problémy.

Tento článek je 1/2 ze série Vrstvy Linuxu a je rozdělen do 3 webových stran (1/3–3/3). Navazuje na grafickou část "X11 vs WAYLAND a vrstvy desktopu".
Zaměřuje se na dvě věci:
  • Textové rozhraní Linuxu (TTY/CLI) – co je terminál, shell, příkazy a proč to není „něco pro hackery“, ale praktický nástroj.
  • Hierarchie souborového systému – kde v Linuxu typicky leží programy, konfigurace, ovladače, logy, dočasná data a jak se v tom neztratit.

Schéma shrnuje „textovou“ vrstvu Linuxu (TTY/CLI) a hlavní části hierarchie souborového systému. Zkratky FHS, HIER, systemd a XDG označují standardy a specifikace, které popisují, jak je struktura systému navržena a kde se typicky nacházejí programy, konfigurace a data.

Vysvětlení zkratek na obrázku:
  • FHS – Filesystem Hierarchy Standard – Standard, který popisuje základní rozložení adresářů v Linuxu/Unixu (např. význam /etc, /usr, /var).
  • HIER – hier(7) – Manuálová stránka, která prakticky popisuje adresářovou hierarchii a význam typických adresářů.
  • systemd – Nejčastější init systém a správce služeb na moderních distribucích. Ovlivňuje i hierarchii (např. důraz na /run, pravidla precedence jednotek v /etc vs /usr/lib, dokument file-hierarchy(7)).
  • XDG – X Desktop Group / freedesktop.org specifikace – Pravidla pro umístění uživatelské konfigurace a dat (např. ~/.config, ~/.local/share, ~/.cache) a také pro vyhledávání dat desktopu (např. .desktop soubory).


Rychlá navigace:
STRANA 1
  • (6) Kořen a základní adresáře systému (podle HIER/FHS + moderní doplnění)
    • /bin, /sbin, /lib „základní sada pro přežití“ (a realita usr-merge)
    • /boot – start systému
    • /dev – zařízení jako soubory
    • /etc – systémová konfigurace
    • /home a /root – domovy uživatelů
    • /lib/modules/<verze-jádra> – moduly jádra (ovladače)
    • /lib/firmware – firmware pro zařízení
    • /lost+found
    • /mnt a /media – připojení filesystémů
    • /opt – software „mimo distribuci“
    • /proc a /sys – virtuální pohled do jádra
    • /run – runtime data systému od posledního bootu
    • /snap – v Linuxu (především v Ubuntu a jeho derivátech)
    • /srv – data poskytovaná službami
    • /timeshift – úložiště pro systémové snímky (snapshots)
    • /tmp a /var/tmp – dočasné soubory
    • /usr – „většina systému“ (programy a sdílená data)
    • /var – proměnná data
  • (7) Rychlá orientace: 7 příkazů, které vám dají mapu systému
  • (8) Praktické scénáře: kde co hledat
  • (9) Poznámky k pojmům (zkratky a odborné výrazy)
  • (10) Zdroje (pro ověření a důvěryhodnost)



1) Ukázka kořenové struktury Linuxu (Zorin OS 18 Core):

Adresářová struktura kořene „ / “ v terminálu (CLI).

Níže je reálný výpis kořene "/" a u každé položky je pár vět pro rychlou orientaci:
sudo tree / -L 1

/
├── bin -> usr/bin
  • /bin -> /usr/bin – kompatibilní cesta pro základní spustitelné příkazy (binárky) nezbytné pro spuštění systému a základní údržbu (např. ls, rm, cat, bash, cp, mkdir, atd.). Na systému s usr-merge je to symlink do /usr/bin. Ale například „cd“ je vestavěný příkaz shellu.

├── bin.usr-is-merged
  • /bin.usr-is-merged – technická „značka“ (sentinel) distribuce potvrzující, že systém používá usr-merge. Jedná se o modernizaci souborového systému, která sjednocuje staré rozdělení adresářů (/bin, /sbin, /lib) do jedné struktury pod /usr. Slouží jako identifikátor nebo "marker", který potvrzuje, že adresáře /bin, /sbin a /lib jsou nyní pouze symbolické odkazy (symlinky) směřující do /usr/bin, /usr/sbin a /usr/lib. „bin.usr-is-merged“ jsou pomocné (většinou prázdné) adresáře vytvořené při přechodu na merged-/usr kvůli kompatibilitě a správě balíčků; indikují, že systém je usr-merged. Tyto soubory/adresáře byste neměli mazat. O důvodu existence těchto adresářů viz např. AskUbuntu a Debian k usr-merge.

├── boot
  • /boot – soubory pro start systému (kernel, initramfs, konfigurace zavaděče). U UEFI se EFI System Partition typicky připojuje jako /boot/efi nebo /efi (dle distribuce). Soubory pro GRUB bývají typicky v /boot/grub (Debian/Ubuntu) nebo /boot/grub2 (RHEL/Fedora).

├── cdrom
  • /cdrom – tradiční mountpoint pro optická média; často existuje kvůli kompatibilitě i když se nepoužívá. Historická záležitost: Adresář /cdrom není součástí moderního standardu souborového systému Linuxu (FHS). Dnes se pro připojování výměnných médií používá spíše adresář /media (např. /media/cdrom) nebo /mnt.

├── dev
  • /dev – dynamicky vytvářené soubory zařízení (disky, terminály, USB, myš, klávesnice, zvuková karta…), spravované kernelem a udev. Zkratka pro devices – zařízení. V operačních systémech založených na Unixu a Linuxu slouží k ukládání speciálních souborů, které reprezentují hardwarová zařízení připojená k počítači.

├── etc
  • /etc – systémová konfigurace specifická pro tento počítač (nastavení služeb, sítě, uživatelů…). V systémech Linux a Unix je centrálním úložištěm pro globální konfigurační soubory systému a aplikací.

├── home
  • /home – domovské adresáře běžných uživatelů (uživatelská data a konfigurace). Osobní data uživatelů, skryté soubory a složky, nastavení uživatelského prostředí, prohlížečů, motivů vzhledu atd. Plocha, Dokumenty, Hudba, Obrázky, Videa, Stažené, se fyzicky nacházejí uvnitř uživatelského adresáře v /home/<uživatel>. Podrobnosti najdete v části (/home a /root – domovy uživatelů).

├── lib -> usr/lib
  • /lib -> /usr/lib – kompatibilní cesta pro knihovny; na usr-merge je to symlink do /usr/lib. Když systém hledá knihovnu v /lib, díky odkazu ji najde ve skutečnosti v /usr/lib. Jedná se o standardní krok většiny moderních distribucí (Fedora, Arch, novější Ubuntu/Debian) pro sjednocení souborového systému.

├── lib.usr-is-merged
  • /lib.usr-is-merged – technická značka potvrzující usr-merge pro knihovny. Zajišťuje, že programy napsané pro jiné systémy, které vyžadují staré cesty, budou stále fungovat. „lib.usr-is-merged“ jsou pomocné (většinou prázdné) adresáře vytvořené při přechodu na merged-/usr kvůli kompatibilitě a správě balíčků; indikují, že systém je usr-merged. Tyto soubory/adresáře byste neměli mazat. O důvodu existence těchto adresářů viz např. AskUbuntu a Debian k usr-merge.

├── lib64 -> usr/lib64
  • /lib64 -> /usr/lib64 – 64bit knihovny (nebo kompatibilní cesta), často symlink do /usr/lib64. Zpětná kompatibilita: Mnoho starších skriptů nebo programů očekává, že knihovny najde v /lib64. Díky tomuto odkazu programy fungují i na moderním systému, který už tyto soubory ukládá dle nového standardu do /usr/lib64.

├── lost+found
  • /lost+found – místo pro nalezené zbytky souborů po opravě (fsck) filesystému (typicky ext*). Tento adresář bývá v kořeni každého ext* filesystému; pokud je /home samostatný ext* FS, existuje jako /home/lost+found.

├── media
  • /media – obvyklý mountpoint pro vyměnitelná média (USB disky, SD karty…), často spravovaný automountem. Automatické připojení: Když do počítače zapojíte USB disk, SD kartu, externí pevný disk nebo vložíte CD/DVD, operační systém jej často automaticky připojí do podadresáře v /media (např. /media/<uživatel>/<název_média>).

├── mnt
  • /mnt – tradiční místo pro dočasné ruční připojení filesystémů (mount). Adresář /mnt v operačních systémech založených na Unixu a Linuxu slouží jako standardní přípojný bod pro dočasně připojená datová úložiště a souborové systémy. Je to čisté a standardizované místo pro správce systému (root), aby nemusel připojovat disky na náhodná místa v systému.

├── opt
  • /opt – volitelný prostor pro software třetích stran mimo standardní balíčkovací systém. Adresář /opt v Linuxu a Unixových systémech slouží k instalaci a ukládání volitelných (optional) softwarových balíčků třetích stran. Je to standardizované místo pro aplikace, které nejsou součástí základní distribuce operačního systému.

├── proc
  • /proc – pseudo-filesystém z kernelu: informace o procesech a stavu systému (není to obsah na disku). Adresář /proc v Linuxu je virtuální souborový systém, který slouží jako rozhraní k informacím o běžících procesech a stavu jádra operačního systému (kernelu). Neobsahuje skutečné soubory na pevném disku; data jsou generována dynamicky v paměti RAM při každém čtení.

├── root
  • /root – domovský adresář administrátora root (neplést s kořenem /). Zatímco běžní uživatelé mají své domovské složky v adresáři /home/<uživatel>, správce systému (root) má svůj vlastní, specifický prostor mimo tuto strukturu. Bezpečnost a oddělení: Umístění mimo /home zajišťuje, že soubory administrátora nejsou přístupné běžným uživatelům, což zvyšuje bezpečnost systému.

├── run
  • /run – runtime data od posledního bootu (PID soubory, sockety, stav služeb), typicky tmpfs. Adresář /run v Linuxu slouží k ukládání dočasných dat o spuštěných procesech a službách (runtime data), která jsou potřeba od startu systému až do jeho vypnutí. Je to standardní umístění pro informace, které se nemusejí (a nemají) zachovávat po restartu počítače.

├── sbin -> usr/sbin
  • /sbin -> /usr/sbin – kompatibilní cesta pro administrační nástroje; na usr-merge symlink do /usr/sbin. Všechny systémové nástroje jsou na jednom místě, což zjednodušuje správu balíčků.

├── sbin.usr-is-merged
  • /sbin.usr-is-merged – technická značka potvrzující usr-merge pro /sbin. Označuje, že systém přešel na sjednocenou strukturu souborového systému, kde se tradiční adresáře v kořenovém adresáři (/sbin, /bin, /lib) staly symbolickými odkazy (symlinky) do adresáře /usr (např. /sbin -> /usr/sbin). „sbin.usr-is-merged“ jsou pomocné (většinou prázdné) adresáře vytvořené při přechodu na merged-/usr kvůli kompatibilitě a správě balíčků; indikují, že systém je usr-merged. Tyto soubory/adresáře byste neměli mazat. O důvodu existence těchto adresářů viz např. AskUbuntu a Debian k usr-merge.

├── snap
  • /snap – data a mounty pro balíčkovací systém Snap (pokud je v systému používán). Adresář /snap v Linuxu (především v Ubuntu a jeho derivátech) slouží jako hlavní bod připojení (mount point) pro nainstalované aplikace ve formátu Snap.

├── srv
  • /srv – místo pro data poskytovaná službami (např. web/ftp obsah, repozitáře, soubory poskytované službou), pokud se tento koncept používá. Oddělení dat od konfigurace: Na rozdíl od /etc (konfigurace) nebo /var (proměnlivá systémová data), /srv je určen pro data, která jsou "živá" a sdílená, jako jsou weby nebo soubory pro SVN/Git. Databázová data se obvykle ukládají do /var/lib.

├── sys
  • /sys – sysfs: strukturované rozhraní jádra pro zařízení a subsystémy (doplněk k /proc). Adresář /sys v Linuxu je virtuální souborový systém (sysfs), který slouží jako rozhraní mezi jádrem (kernel) a uživatelským prostorem. Neobsahuje fyzické soubory na disku, ale dynamicky generuje informace o hardwarových zařízeních, ovladačích a parametrech jádra v reálném čase.

├── timeshift
  • /timeshift – umístění snapshotů nástroje Timeshift (pokud je nastaven a ukládá sem). Obsahuje zálohy operačního systému (soubory, nastavení, aplikace), které umožňují obnovit Linux do funkčního stavu v případě selhání po aktualizaci nebo špatné konfiguraci. Timeshift funguje jako bod obnovení systému ve Windows.

├── tmp
  • /tmp – krátkodobé dočasné soubory; často se čistí při startu a nemá se na ně spoléhat dlouhodobě. Adresář /tmp (zkratka z anglického Temporary - dočasný) v Linuxu a unixových systémech slouží jako úložiště pro dočasné soubory a adresáře, které vytvářejí aplikace, služby a uživatelé během běhu systému. Data v tomto adresáři mají obvykle krátkou životnost a nejsou určena k trvalému uložení.

├── usr
  • /usr – hlavní část systému: programy, knihovny a sdílená data (/usr/bin, /usr/lib, /usr/share…). Adresář /usr (často vyslovováno jako „jůzr“ nebo „user“) je v systémech Linux a Unix jedním z nejdůležitějších adresářů v kořenovém systému souborů. Slouží jako sekundární hierarchie pro uživatelský prostor systému (programy, knihovny, sdílená data), typicky /usr/bin, /usr/lib, /usr/share.

└── var
  • /var – proměnná data (logy, cache, spool, databáze/stav služeb), která se mění za běhu systému. Adresář /var v operačních systémech typu Linux/Unix slouží k ukládání proměnných dat (variable files). Jedná se o data, která se za běžného provozu systému neustále mění, přepisují nebo narůstají na objemu.

Poznámka: Tento konkrétní výpis ze Zorin OS 18 ukazuje například usr-merge (symlinky /bin, /sbin, /lib do /usr/...) a také adresáře související se Snap a Timeshift; na jiných distribucích nebo při jiném nastavení se mohou některé položky lišit.

Adresářová struktura kořene „ / “ ve správci souborů „Nemo (GUI).

Adresářová struktura kořene „ / “ ve správci souborů „Soubory (Gnome) (GUI).




2) Textová vrstva Linuxu: TTY, terminál, shell, příkazy

Terminál vs. shell
  • Terminál je aplikace (okno v grafice), která zobrazuje textový vstup a výstup.
  • Shell je program, který čte vaše příkazy a spouští další programy – typicky bash, ale i zsh, fish apod.
  • Příkazy nejsou „magie“: jsou to běžné programy uložené v adresářích jako /usr/bin, /usr/sbin atd. Shell je jen najde (podle proměnné PATH) a spustí.
Důležitý mentální model: shell není „celý Linux“. Je to jen rozhraní, které vám umožní ovládat programy systému.

Typy shellů
V Linuxu a Unixových systémech existuje celá řada shellů (příkazových interpretů), které slouží jako rozhraní mezi uživatelem a jádrem operačního systému. Liší se syntaxí, funkcemi, interaktivitou a rychlostí.
Mezi nejrozšířenější typy shellů patří:
  • Bash (Bourne Again Shell): Nejpopulárnější a výchozí shell na většině distribucí Linuxu. Je to vylepšená verze původního Bourne shellu, kompatibilní s POSIX normami.
  • Zsh (Z Shell): Velmi pokročilý shell, který kombinuje funkce Bash, ksh a tcsh. Je známý pro svou rozsáhlou přizpůsobitelnost, doplňování příkazů, pluginy a témata. V současnosti je výchozím shellem v macOS.
  • Fish (Friendly Interactive Shell): Zaměřený na uživatelskou přívětivost a interaktivitu. Nabízí automatické návrhy (autosuggestions), zvýrazňování syntaxe a doplňování bez nutnosti složité konfigurace.
  • Sh (Bourne Shell): Jeden z nejstarších shellů, na kterém jsou založeny mnohé moderní shelly. Je velmi rychlý a jednoduchý, často používaný pro systémové skripty.
  • Dash (Debian Almquist Shell): Velmi rychlý a lehký shell. Často se používá v distribucích založených na Debianu/Ubuntu jako výchozí shell pro spouštění skriptů (/bin/sh) kvůli své rychlosti.
  • Ksh (Korn Shell): Kombinuje vlastnosti Bourne shellu a C shellu. Nabízí pokročilé programovací funkce pro skriptování.
  • Csh / Tcsh (C Shell / Tenex C Shell): Syntaxe těchto shellů je podobná programovacímu jazyku C. Tcsh je vylepšená verze C shellu, která přidává interaktivní funkce jako doplňování příkazů.
Uživatel si může vybrat a změnit shell podle svých potřeb a preferencí.
Seznam dostupných shellů v systému lze zobrazit příkazem: cat /etc/shells

TTY a konzole (proč existují)
Linux tradičně umí běžet i bez grafiky. Textové konzole (TTY) jsou užitečné hlavně při:
  • opravách systému (grafika nenaběhne),
  • serverech (bez GUI),
  • nouzových zásazích (síť, disky, boot, služby).

Na běžném Linuxu se přepíná mezi virtuálními konzolemi takto:
  • Z grafiky (X11/Wayland) na TTY: Ctrl + Alt + F3 (případně F2–F6 podle distribuce)
  • Z TTY zpět do grafiky: obvykle Ctrl + Alt + F1 nebo Ctrl + Alt + F2 (záleží, kde má vaše distro grafickou session)
Kolik TTY je typicky dostupných
  • nejčastěji tty1–tty6 (F1–F6), někde i více.
Jak zjistit, na které TTY právě jste
  • Příkazem: tty
Poznámka: Na některých noteboocích je potřeba mačkat i Fn (tedy např. Ctrl+Alt+Fn+F3), protože F-klávesy jsou sdílené s multimediálními funkcemi.

Bez grafiky jste už na TTY konzolích, takže se mezi nimi přepíná jen:
  • Alt + F1 … Alt + F6 (případně F7, F8… podle systému)
Nemusíte držet Ctrl ani Alt+Ctrl, protože žádná grafická session „nepřekrývá“ klávesy.
Prakticky:
  • Alt+F2 → tty2
  • Alt+F3 → tty3
Ověření, kde jste:
  • Příkazem: tty



3) Co je v distribuci „pod povrchem“ (mimo grafiku)

Když odhlédnete od grafiky, distribuce se skládá hlavně z těchto částí:
  • kernel + ovladače,
  • uživatelský prostor (programy a knihovny),
  • init systém a služby (nejčastěji systemd),
  • balíčkovací systém (APT / DNF / …) a repozitáře,
  • uživatelská konfigurace v domovském adresáři.  
Právě tyto části se „materializují“ do adresářů a souborů v hierarchii.


Kernel + ovladače
Linux kernel (jádro) je základní, monolitická část operačního systému, která funguje jako most mezi aplikacemi a hardwarem. Spravuje paměť, CPU a prostřednictvím integrovaných ovladačů (driverů) ovládá veškerý hardware. Ovladače v Linuxu často fungují jako moduly, které lze načíst za běhu systému, čímž zajišťují komunikaci s grafickými kartami, disky a dalšími zařízeními.

Klíčové vlastnosti jádra a ovladačů v Linuxu:
  • Monolitická architektura: Linuxové jádro v sobě integruje ovladače, správu souborových systémů i paměti, a to vše běží v privilegovaném režimu.
  • Modulární ovladače: Přestože je jádro monolitické, ovladače lze konfigurovat jako moduly (LKM - Loadable Kernel Modules). To umožňuje přidávat nebo odebírat ovladače za běhu systému bez nutnosti restartu.
  • Vrstva abstrakce: Ovladače převádějí požadavky uživatelských aplikací na příkazy, kterým hardware rozumí, což umožňuje sjednocené rozhraní (např. /dev nebo /sys adresáře).
  • Správa hardwaru: Jádro přímo komunikuje s CPU, pamětí a periferiemi.
  • Bezpečnost a stabilita: Jádro běží v chráněném paměťovém prostoru, což zabraňuje aplikacím přímo přistupovat k hardwaru a zvyšuje bezpečnost systému.
V systému Linux jsou ovladače klíčové pro správnou funkci komponent, jako jsou síťové karty, grafické karty, USB zařízení, atd. WikiSOFIA a další zdroje zdůrazňují, že Linux kernel je klíčový pro funkčnost celého systému.


Uživatelský prostor (programy a knihovny)
Uživatelský prostor (user space) v Linuxu je vyhrazená oblast paměti, kde běží běžné aplikace, knihovny a uživatelské programy (např. prohlížeč, kancelářský balík, shell) s omezenými právy. Na rozdíl od jádra (kernel) nemá přímý přístup k hardwaru a o prostředky žádá přes systémová volání, což zvyšuje stabilitu a bezpečnost systému.

Klíčové vlastnosti uživatelského prostoru:
  • Aplikace a programy: Zahrnuje uživatelské aplikace (Firefox, LibreOffice), systémové nástroje, shell (bash) a grafické prostředí.
  • Knihovny: Programy využívají sdílené knihovny (např. glibc pro práci se systémem), které zprostředkovávají komunikaci s jádrem.
  • Omezená oprávnění: Programy v user space nemohou přímo přistupovat k hardwaru nebo paměti jiných procesů.
  • Systémová volání: Když aplikace potřebuje číst soubor nebo poslat data po síti, musí o to požádat jádro prostřednictvím systémového volání.
  • Stabilita: Pokud program v uživatelském prostoru spadne (např. prohlížeč), nezhroutí se celý operační systém.
Uživatelský prostor je oddělen od prostoru jádra (kernel space), který spravuje hardware a zdroje.
Systémové volání (anglicky system call, syscall) je v informatice mechanismus, kterým aplikace v uživatelském prostoru žádá jádro operačního systému o privilegované operace (např. práce se soubory, procesy, sítí). Najdeme je u všech unixových systémů.


Init systém a služby
Init systém (inicializační systém) je v Linuxu první proces, který se spustí po zavedení jádra (kernelu) operačního systému. Má procesní ID 1 (PID 1) a je kořenem (předkem) všech ostatních procesů běžících v uživatelském prostoru (user space). Jeho hlavním úkolem je nastartovat systém do použitelného stavu, inicializovat hardwarové komponenty, připojit souborové systémy a spustit systémové služby.
Služby (daemony) v Linuxu jsou programy, které běží na pozadí a poskytují funkcionalitu, aniž by vyžadovaly přímou interakci uživatele. Příkladem jsou webové servery (Apache, Nginx), databáze (MySQL), síťové služby (SSH, DHCP) nebo správa tisku (CUPS).

Co dělá Init systém?
  1. Bootování: Po startu kernelu je spuštěn init, který inicializuje systém.
  2. Správa služeb: Spouští, zastavuje a restartuje služby.
  3. Řízení procesů: Pokud nějaká služba spadne, init ji může restartovat.
  4. Ukončení systému: Při vypínání počítače init správně zastaví všechny služby a odpojí disky.

Hlavní typy init systémů v Linuxu
V průběhu let se init systémy vyvíjely:
  • Systemd: Dnešní standard pro většinu distribucí (Ubuntu, Debian, Fedora, RHEL, Arch). Je rychlý, umožňuje paralelní spouštění služeb a umí automaticky řešit závislosti mezi nimi.
  • SysVinit (System V Init): Tradiční, starší systém, který spouštěl služby sekvenčně (jednu po druhé), což bylo pomalejší.
  • OpenRC, Runit, Upstart: Alternativní init systémy používané v specifických distribucích (např. Gentoo, Alpine).

Služby (daemony) a jejich správa
Služby jsou spravovány pomocí příkazů daného init systému. V moderním Linuxu se systemd (příkaz systemctl) používá následovně:
  • Spuštění služby: sudo systemctl start nazev_sluzby
  • Zastavení služby: sudo systemctl stop nazev_sluzby
  • Povolení při startu: sudo systemctl enable nazev_sluzby
  • Kontrola stavu: systemctl status nazev_sluzby

Shrnutí: Init systém jako "rodič"
Představte si init systém jako šéfa, který po nastartování počítače zapne všechny potřebné programy (služby) v určitém pořadí, dohlíží na jejich práci a na konci dne je všechny vypne.


Balíčkovací systém
Balíčkovací systém (správce balíčků) je softwarový nástroj, který v operačních systémech (nejčastěji v Linuxu) automatizuje proces instalace, aktualizace, konfigurace a odebírání aplikací. Namísto ručního stahování a instalace jednotlivých programů, balíčkovací systém spravuje "balíčky" – archivy obsahující samotný program, jeho metadata (popis, verze) a seznam závislostí.

Hlavní výhody balíčkovacích systémů:
  • Správa závislostí: Automaticky stahují a instalují další knihovny a programy, které aplikace potřebuje ke spuštění.
  • Centralizace: Software se stahuje z důvěryhodných repozitářů.
  • Aktualizace: Umožňují aktualizovat celý systém nebo aplikace jedním příkazem.
  • Bezpečnost: balíčkovací systém ověřuje integritu a (typicky) kryptografické podpisy z repozitářů.

Nejčastější balíčkovací systémy a formáty
Balíčkovací systémy jsou úzce spjaty s konkrétními linuxovými distribucemi.
1. APT (Advanced Package Tool) - formát .deb
  • Použití: Debian, Ubuntu, Linux Zorin, Linux Mint, Kali Linux, atd.
  • Charakteristika: Velmi populární, spolehlivý, používá příkazy jako apt install.
2. DNF / YUM - formát .rpm
  • Použití: Fedora, Red Hat Enterprise Linux (RHEL), AlmaLinux, Rocky Linux, atd.
  • Charakteristika: DNF je moderní nástupce YUMu, rychlý a efektivní pro správu závislostí.
3. Pacman - formát .pkg.tar.zst
  • Použití: Arch Linux, Manjaro, EndeavourOS, CachyOS, atd.
  • Charakteristika: Velmi rychlý a jednoduchý, navržený pro systémy typu "rolling-release" (průběžná aktualizace).
4. Zypper - formát .rpm
  • Použití: openSUSE, SUSE Linux Enterprise.
  • Charakteristika: Komplexní správce balíčků s výbornou správou závislostí.
5. Portage - formát (založen na zdrojových kódech)
  • Použití: Gentoo Linux.
  • Charakteristika: Kompiluje software přímo z prvotních zdrojových kódů (source-based), což umožňuje vysokou optimalizaci.
6. Univerzální balíčkovací systémy (distribučně nezávislé)
  • Snap: Vyvíjený společností Canonical (Ubuntu), balíčky obsahují vše potřebné (závislosti).
  • Flatpak: Oblíbený zejména v desktopovém prostředí, izoluje aplikace od zbytku systému.

Další balíčkovací systémy (programovací jazyky)
Kromě systémových správců existují balíčkovací systémy pro programovací jazyky:
  • pip: Pro Python.
  • npm: Pro Node.js.
  • cargo: Pro Rust.

Správa balíčků Linuxu - Základní přehled:


Repozitáře v Linuxu
Jsou zabezpečená online úložiště obsahující tisíce softwarových balíčků (aplikací, ovladačů, knihoven), ze kterých uživatelé snadno instalují a aktualizují software pomocí správce balíčků (např. APT, DNF). Zajišťují kompatibilitu, bezpečnost, snadnou správu závislostí a automatické aktualizace. Wikipedia: Softwarový repozitář.

Klíčové vlastnosti a význam:
  • Centralizovaná správa: Umožňují instalaci programů bez nutnosti stahovat soubory z internetu, podobně jako obchod s aplikacemi (App Store/Google Play).
  • Bezpečnost: Software v repozitářích je prověřený a digitálně podepsaný, což snižuje riziko malwaru.
  • Závislosti: Automaticky řeší instalaci potřebných knihoven a součásti, které program vyžaduje.
  • Typy: Hlavní (podporované komunitou/distribucí) a doplňkové (např. pro novější verze softwaru - Backports).
  • Struktura: Obsahují balíčky a jejich metadata.

Základní rozdíl oproti Windows:
Zatímco na Windows se aplikace často instalují stahováním .exe nebo .msi souborů z webu, v Linuxu se většina softwaru spravuje centrálně přes tyto balíčkovací systémy, což je bezpečnější a čistší.


Uživatelská konfigurace v domovském adresáři
Často označovaná jako dotfiles. V Linuxu představuje soubory a složky, které definují nastavení a preference uživatele pro různé aplikace a prostředí (desktop, terminál, editory atd.). Na rozdíl od systémových nastavení (/etc), tato konfigurace platí pouze pro konkrétního přihlášeného uživatele a nachází se v jeho domovské složce (/home/<uživatel> nebo zkratka ~). Dotfiles.

Klíčové vlastnosti a příklady:
  • Skryté soubory (Dotfiles): Konfigurační soubory obvykle začínají tečkou (např. .bashrc``.vimrc``.gitconfig), což znamená, že nejsou viditelné při běžném výpisu souborů (nutno použít ls -a).
  • Adresář .config: Mnoho moderních aplikací ukládá svá nastavení do podadresáře ~/.config/ podle specifikace XDG.
  • Uživatelská specifika: Umožňuje přizpůsobit vzhled plochy (téma, tapety), chování shellu (aliasy, historie), nebo nastavení prohlížeče.
  • Přenositelnost: Protože jsou tato nastavení v domovském adresáři, po přihlášení na jiném stroji (pokud je /home sdílený) uživatel najde své prostředí nastavené podle svých zvyklostí.

Příklady častých souborů:
  • ~/.bashrc – nastavení pro Bash shell
  • ~/.gitconfig – nastavení pro Git
  • ~/.vimrc – konfigurace textového editoru Vim
  • ~/.ssh/ – nastavení a klíče pro SSH
Správa těchto souborů se často provádí pomocí verzovacích systémů (např. Git), aby bylo možné nastavení snadno zálohovat nebo synchronizovat mezi počítači.



4) Standardy a realita: FHS, HIER, systemd file-hierarchy, XDG

V Linuxu existuje několik popisů/standardů, které se doplňují:
  • hier(7): praktický popis základních adresářů, součást Linux man-pages.
  • FHS (Filesystem Hierarchy Standard): formální standard umístění souborů/adresářů. FHS 3.0 (původně vydaná v roce 2015) je dnes publikována a spravována na freedesktop.org; aktuální publikace je datována 2026-02-19.
  • systemd file-hierarchy(7): popis „kostry“ hierarchie a požadavků pro systémy se systemd; doplňuje FHS/hier a řeší moderní praxi (boot fáze, /run, apod.).
  • XDG Base Directory Specification: kde mají být uživatelská data/konfigurace/cache v domovském adresáři (např. ~/.config, ~/.local/share).
A platí i varování z man stránky: seznam není vyčerpávající a distribuce se mohou lišit.



5) Praktický kompas: „programy vs. konfigurace vs. data“

Než půjdeme do detailů, vyplatí se držet jednoduché pravidlo:
  • Programy (binárky): typicky /usr/bin, /usr/sbin (na moderních systémech často i „usr-merge“).
  • Systémová konfigurace: typicky /etc (a jeho podadresáře /etc/...).
  • Proměnná data služeb: typicky /var (logy, cache, databáze, spool).
  • Uživatelská konfigurace/data: typicky v $HOME podle XDG (~/.config, ~/.local/share, ~/.cache).

| STRANA 1 | STRANA 2 | STRANA 3 |

PODPOŘTE OTEVŘENÉ NÁVODY A DALŠÍ ROZVOJ WEBU LINUX PRO DOMÁCNOST:

Věřím v otevřené znalosti. Každý návod = rešerše, testování na reálném nebo virtuálním počítači a různých Linux distribucích (např.: Rocky / Debian / Zorin / a další), psaní krok za krokem a finální kontrola — typicky několik hodin až několik dnů práce. Web držím bez reklam i trackingu a chci, aby tak zůstal.

Pokud vám jakýkoli článek ušetří čas nebo nervy, budu rád za dobrovolnou podporu (částku si určíte sami). Prosím, do zprávy pro příjemce napište: NA KAFE / Linux-doma.cz, pomůže mi to přehledně zaúčtovat měsíční souhrn. Děkuji!

A pokud se Vám web líbí a chcete se stát pravidelným sponzorem, podívejte se prosím na stránku "SPONZOŘI".
BANKOVNÍ PŘEVOD /
QR PLATBA (bez částky)

QR platba (bez částky) – bankovní převod – Linux-doma.cz

  • Číslo účtu (CZK): 2000197842 / 2010
  • IBAN: CZ41 2010 0000 0020 0019 7842
  • BIC/SWIFT: FIOBCZPPXXX
  • Zpráva pro příjemce: NA KAFE / Linux-doma.cz

BITLIFI / QR PLATBA (bez částky)

QR platba (bez částky) – Bitlifi – Linux-doma.cz

  • Uživatel: +420607271333@bitlifi.com
  • Poznámka: NA KAFE / Linux-doma.cz
© 2025–2026 Miroslav Zakřevský / LINUX PRO DOMÁCNOST (linux-doma.cz). Všechna práva vyhrazena. Citace povoleny s uvedením zdroje.
Návrat na obsah