====== Správa balíčků v Linuxu (Package Management) ====== **Správa balíčků** je systém pro automatizovanou instalaci, konfiguraci a aktualizaci softwaru. V Linuxu je software distribuován v tzv. **balíčcích**, což jsou archivy obsahující binární soubory, konfigurační soubory a metadata o tom, co aplikace potřebuje ke svému běhu. ===== 1. Základní pojmy ===== ==== Repozitář (Repository) ==== Online sklad softwaru spravovaný tvůrci distribuce. Funguje podobně jako "App Store" – uživatel si vybírá z prověřených a digitálně podepsaných aplikací. ==== Závislosti (Dependencies) ==== Většina programů v Linuxu nesdílí veškerý svůj kód v jednom souboru, ale využívá sdílené knihovny. Pokud program A vyžaduje knihovnu B, správce balíčků ji automaticky najde a nainstaluje. Tomuto procesu se říká **řešení závislostí**. --- ===== 2. Hierarchie správy balíčků ===== Systém správy balíčků se obvykle dělí na dvě vrstvy: 1. **Nízkoúrovňový nástroj:** Stará se o samotné rozbalení balíčku na disk (např. ''dpkg'', ''rpm''). Neumí stahovat z internetu. 2. **Vysokoúrovňový nástroj:** Komunikuje s repozitáři, řeší závislosti a stahuje data (např. ''APT'', ''DNF'', ''Zypper''). --- ===== 3. Přehled hlavních systémů ===== Každá rodina distribucí používá svůj vlastní formát a nástroje: ^ Rodina ^ Formát ^ Nástroj (CLI) ^ Distribuce ^ | **Debian** | [[it:sw:deb|.deb]] | **APT** | Ubuntu, Debian, Mint, Kali | | **Red Hat** | .rpm | **DNF** (dříve YUM) | Fedora, RHEL, CentOS, Alma | | **SUSE** | .rpm | **[[it:sw:libzypp|Zypper]]** | openSUSE, SLE | | **Arch** | .pkg.tar.zst | **Pacman** | Arch Linux, Manjaro | --- ===== 4. Moderní trendy: Univerzální balíčky ===== Tradiční balíčky jsou závislé na konkrétní verzi distribuce. Proto vznikly formáty, které v sobě nesou všechny knihovny a běží v izolovaném prostředí (sandboxu): * **Flatpak:** Zaměřený na desktopové aplikace, nezávislý na distribuci. * **Snap:** Vyvíjen společností Canonical (Ubuntu), vhodný pro desktop i servery. * **AppImage:** Jeden spustitelný soubor, který se neinstaluje (podobně jako .exe ve Windows). [Image comparing Traditional Packages vs Sandboxed Packages (Flatpak/Snap) architecture] --- ===== 5. Životní cyklus balíčku v terminálu ===== Většina správců balíčků používá podobnou logiku příkazů (příklad pro APT): * **Aktualizace seznamů:** ''sudo apt update'' (stáhne info o nových verzích v repozitářích). * **Upgrade systému:** ''sudo apt upgrade'' (nainstaluje nové verze balíčků). * **Hledání:** ''apt search '' (najde software v repozitáři). * **Instalace:** ''sudo apt install '' (stáhne a nainstaluje software). ---- //Související články:// * [[it:sw:deb|.deb: Standard pro Debian a Ubuntu]] * [[it:sw:libzypp|Libzypp: Správce balíčků v openSUSE]] * [[it:sw:linux_distribuce|Přehled linuxových distribucí]] //Tagy: {{tag>it linux package-management apt dnf zypper flatpak repository}}//