Všem vše nejlepší do nového roku 2026.
Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.
Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().
Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.
Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.
V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.
Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.
FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.
K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.
Dobrý den,
před nějakou dobou jsem si řekl, že zkusím proniknout trochu hlouběji do Linuxu. Začal testovat Ubuntu, učit se s příkazovou řádkou a s konzolovými nástroji, číst si články na internetu. Ale pořád je pro mě Linux tak trochu chaos. Už jen proto, že každá linuxová distribuce mi přijde uplně jiná a s každou, aby se tak člověk učil totálně odznova.
Co by mě v tuto chvíli nejvíc zajímalo (snad mi to pomůže pochopit další věci) je, co vlastně umí ono jádro Linuxu samo o sobě? A co už je jen nádstavba, kterou nad jádrem postavili tvůrci distribucí?
Děkuji moc za odpovědi.
Už jen proto, že každá linuxová distribuce mi přijde uplně jiná a s každou, aby se tak člověk učil totálně odznova.Tak to děláš něco špatně… většinou by mělo stačit chvíli nadávat nad jiným balíčkovacím systémem a pak by to mělo být v pohodě.
Co by mě v tuto chvíli nejvíc zajímalo (snad mi to pomůže pochopit další věci) je, co vlastně umí ono jádro Linuxu samo o sobě? A co už je jen nádstavba, kterou nad jádrem postavili tvůrci distribucí?Jádro neumí celkem nic pro uživatele zajímavého. Můžeš mu pomocí nějakého binárního rozhraní dávat příkazy jako „otevři soubor“ (vrátí ti nějaký deskriptor) a „alokuj mi paměť“, ale nic moc dalšího s ním neuděláš
.
většinou by mělo stačit chvíli nadávat nad jiným balíčkovacím systémem a pak by to mělo být v pohodě.
Jo, kéž by...
Původní pisatel není zas tak daleko od pravdy...
příkaz install foo příkaz remove foos drobnými syntaktickými (a sémantickými ;) nuancemi. SysV unit je unixová klasika, které se asi nevyhneš, i kdyby všechny linuxová distra používala systemd (což naneštěstí v dohledné době asi nenastane) -- no a upstart je nečekaně zase ubunťácká exotika. Celkově myslím, že seznam variant se dost zjednoduší, když vyřadíš Ubuntu...
Tak jsem nad tím přemýšlel, hledal na netu atd.
Zatím mám o tom představu takovouto... chápu to správně?
Díky za zodpovězení kterékoli z těchto otázek, případně opravení toho, co chápu špatně 
3.1 je to tak, může se stát, že budou podporovat hw který ještě nebyl vyroben..
A jak to pak funguje, když si doinstalovávám nesvobodné ovladače na grafickou kartu (např. protože mi nefunguje 3D akcelerace) - to se pak nějak "vsunou" přímo do jádra? Nebylo by v takovém případě nutné celé jádro (i s novým ovladačem) znovu zkompilovat?
U modulů které jsou součástí zdrojů jádra, se musí překompilovat znova celé (nastavuje se jen rozdíl)
Jádro se kompilovat nemusí kvůli ext. modulům, které nejsou součástí zdrojů jádra. Jen moduly proti jádru.
Jádro o nich nemusí vědět, ale modul o jádru ano.
Obvykle sou moduly už přeložené proti konkrétním verzím jádra, a proto můžou být dodány v uzavřené formě.
Proto taky musíš jednou za čas (cca další vydání distribuce) aktualizovat celý modul.
Nebo u příkladu AVermedia, sou dodány jak hotové moduly proti konkrétním verzím jádra, tak je napůl otevřený zdroj. kód, Můžeš si sestavit svůj modul, pro verzi jádra, které nebylo v té době k dispozici. S tím, že ale není s otevřenou licencí, a jsou neměně nastaveny optimalizace.
/usr/libexec/coreutils/libstdbuf.so /usr/share/info/coreutils.info.bz2 /usr/share/man/man1/base64.1.bz2 /usr/share/man/man1/echo.1.bz2 /usr/share/man/man1/uname.1.bz2 /usr/share/man/man1/chown.1.bz2 /usr/share/man/man1/ls.1.bz2 /usr/share/man/man1/printenv.1.bz2 /usr/share/man/man1/tac.1.bz2 /usr/share/man/man1/link.1.bz2 /usr/share/man/man1/split.1.bz2 /usr/share/man/man1/nproc.1.bz2 /usr/share/man/man1/mkdir.1.bz2 /usr/share/man/man1/cat.1.bz2 /usr/share/man/man1/runcon.1.bz2 /usr/share/man/man1/rm.1.bz2 /usr/share/man/man1/uniq.1.bz2 /usr/share/man/man1/unlink.1.bz2 /usr/share/man/man1/factor.1.bz2 /usr/share/man/man1/users.1.bz2 /usr/share/man/man1/comm.1.bz2 /usr/share/man/man1/env.1.bz2 /usr/share/man/man1/csplit.1.bz2 /usr/share/man/man1/cut.1.bz2 /usr/share/man/man1/mv.1.bz2 /usr/share/man/man1/touch.1.bz2 /usr/share/man/man1/sum.1.bz2 /usr/share/man/man1/who.1.bz2 /usr/share/man/man1/nl.1.bz2 /usr/share/man/man1/nice.1.bz2 /usr/share/man/man1/join.1.bz2 /usr/share/man/man1/dd.1.bz2 /usr/share/man/man1/chmod.1.bz2 /usr/share/man/man1/cp.1.bz2 /usr/share/man/man1/sha256sum.1.bz2 /usr/share/man/man1/df.1.bz2 /usr/share/man/man1/vdir.1.bz2 /usr/share/man/man1/ptx.1.bz2 /usr/share/man/man1/pwd.1.bz2 /usr/share/man/man1/fold.1.bz2 /usr/share/man/man1/tsort.1.bz2 /usr/share/man/man1/paste.1.bz2 /usr/share/man/man1/logname.1.bz2 /usr/share/man/man1/dircolors.1.bz2 /usr/share/man/man1/chcon.1.bz2 /usr/share/man/man1/shred.1.bz2 /usr/share/man/man1/readlink.1.bz2 /usr/share/man/man1/stat.1.bz2 /usr/share/man/man1/expand.1.bz2 /usr/share/man/man1/false.1.bz2 /usr/share/man/man1/tty.1.bz2 /usr/share/man/man1/cksum.1.bz2 /usr/share/man/man1/expr.1.bz2 /usr/share/man/man1/pinky.1.bz2 /usr/share/man/man1/mktemp.1.bz2 /usr/share/man/man1/truncate.1.bz2 /usr/share/man/man1/mkfifo.1.bz2 /usr/share/man/man1/true.1.bz2 /usr/share/man/man1/arch.1.bz2 /usr/share/man/man1/tee.1.bz2 /usr/share/man/man1/stdbuf.1.bz2 /usr/share/man/man1/sort.1.bz2 /usr/share/man/man1/md5sum.1.bz2 /usr/share/man/man1/fmt.1.bz2 /usr/share/man/man1/timeout.1.bz2 /usr/share/man/man1/test.1.bz2 /usr/share/man/man1/nohup.1.bz2 /usr/share/man/man1/date.1.bz2 /usr/share/man/man1/id.1.bz2 /usr/share/man/man1/unexpand.1.bz2 /usr/share/man/man1/tr.1.bz2 /usr/share/man/man1/whoami.1.bz2 /usr/share/man/man1/sha384sum.1.bz2 /usr/share/man/man1/basename.1.bz2 /usr/share/man/man1/seq.1.bz2 /usr/share/man/man1/wc.1.bz2 /usr/share/man/man1/sha224sum.1.bz2 /usr/share/man/man1/mknod.1.bz2 /usr/share/man/man1/hostid.1.bz2 /usr/share/man/man1/pr.1.bz2 /usr/share/man/man1/dir.1.bz2 /usr/share/man/man1/dirname.1.bz2 /usr/share/man/man1/sync.1.bz2 /usr/share/man/man1/yes.1.bz2 /usr/share/man/man1/tail.1.bz2 /usr/share/man/man1/ln.1.bz2 /usr/share/man/man1/shuf.1.bz2 /usr/share/man/man1/pathchk.1.bz2 /usr/share/man/man1/rmdir.1.bz2 /usr/share/man/man1/sha1sum.1.bz2 /usr/share/man/man1/head.1.bz2 /usr/share/man/man1/stty.1.bz2 /usr/share/man/man1/printf.1.bz2 /usr/share/man/man1/install.1.bz2 /usr/share/man/man1/chroot.1.bz2 /usr/share/man/man1/od.1.bz2 /usr/share/man/man1/sha512sum.1.bz2 /usr/share/man/man1/du.1.bz2 /usr/share/man/man1/chgrp.1.bz2 /usr/share/man/man1/sleep.1.bz2 /usr/share/doc/coreutils-8.14/ChangeLog-2006.bz2 /usr/share/doc/coreutils-8.14/ChangeLog.bz2 /usr/share/doc/coreutils-8.14/ChangeLog-2007.bz2 /usr/share/doc/coreutils-8.14/README.bz2 /usr/share/doc/coreutils-8.14/AUTHORS.bz2 /usr/share/doc/coreutils-8.14/THANKS.bz2 /usr/share/doc/coreutils-8.14/TODO.bz2 /usr/share/doc/coreutils-8.14/NEWS.bz2 /usr/share/doc/coreutils-8.14/ChangeLog-2008.bz2 /usr/share/doc/coreutils-8.14/ChangeLog-2005.bz2 /usr/share/locale/cs/LC_TIME/coreutils.mo /usr/share/locale/cs/LC_MESSAGES/coreutils.mo /usr/bin/yes /usr/bin/dir /usr/bin/printenv /usr/bin/ptx /usr/bin/tail /usr/bin/fmt /usr/bin/mktemp /usr/bin/fold /usr/bin/comm /usr/bin/tr /usr/bin/hostid /usr/bin/tsort /usr/bin/id /usr/bin/md5sum /usr/bin/shuf /usr/bin/dircolors /usr/bin/expr /usr/bin/sha256sum /usr/bin/unexpand /usr/bin/arch /usr/bin/dirname /usr/bin/du /usr/bin/stdbuf /usr/bin/truncate /usr/bin/tty /usr/bin/sha384sum /usr/bin/od /usr/bin/join /usr/bin/link /usr/bin/touch /usr/bin/nl /usr/bin/uniq /usr/bin/timeout /usr/bin/expand /usr/bin/mkfifo /usr/bin/basename /usr/bin/split /usr/bin/readlink /usr/bin/runcon /usr/bin/env /usr/bin/seq /usr/bin/sleep /usr/bin/nice /usr/bin/uname /usr/bin/sha512sum /usr/bin/tee /usr/bin/vdir /usr/bin/[ /usr/bin/logname /usr/bin/cut /usr/bin/test /usr/bin/chcon /usr/bin/unlink /usr/bin/install /usr/bin/who /usr/bin/shred /usr/bin/sort /usr/bin/wc /usr/bin/chroot /usr/bin/paste /usr/bin/pinky /usr/bin/pathchk /usr/bin/printf /usr/bin/nohup /usr/bin/sum /usr/bin/cksum /usr/bin/sha1sum /usr/bin/whoami /usr/bin/stat /usr/bin/head /usr/bin/tac /usr/bin/nproc /usr/bin/base64 /usr/bin/pr /usr/bin/factor /usr/bin/users /usr/bin/sha224sum /usr/bin/csplit /etc/DIR_COLORS /bin/chmod /bin/yes /bin/dir /bin/mknod /bin/tail /bin/mktemp /bin/cp /bin/true /bin/pwd /bin/date /bin/tr /bin/echo /bin/expr /bin/dirname /bin/du /bin/tty /bin/df /bin/cat /bin/chown /bin/touch /bin/chgrp /bin/mkfifo /bin/basename /bin/readlink /bin/dd /bin/env /bin/seq /bin/sleep /bin/uname /bin/rmdir /bin/vdir /bin/cut /bin/rm /bin/mv /bin/sort /bin/wc /bin/chroot /bin/stty /bin/false /bin/ln /bin/ls /bin/head /bin/sync /bin/mkdirdalší popis je na FHS Ještě k 1.1 už jsem si vyzkoušel jádro bez VT. Při zavádění jádra nejsou vidět výpisy, ani se nelze přepínat pomocí ^ALT+Fnum. Pokud sou ale X dobře nastavená tak normálně fungují. Jinak, programy lze používat, ale ne přes konzoli (či jak tomu rozhranní kdo říká). Znamená to že nový obraz jádra s VT jsem musel sestavit, v GUI, ne s menuconfig, z běžícího obrazu jádra.
Znamená to že nový obraz jádra s VT jsem musel sestavit, v GUI, ne s menuconfig, z běžícího obrazu jádra.Dívím se, že se nad tím nikdo nepozastavil, protože by to nebylo možné. Musel jsem určitě najet z výměnného disku.
Ad 1)
- Konzole (shell) součástí jádra není. Ta je spuštěna zvlášť jako uživatelský proces, dokonce jich existuje více (bash, dash, zsh, ...). Pravda je, že jádro může obsahovat tzv. recovery console, která se ale spouští jen v single-user režimu. Používá se v případě, že se v systému něco rozsype tak, že není možno nabootovat (např. pokud se nezdaří připojit disk s /bin či /usr/bin)
- Jak moc jsou hardcodované cesty k /etc/passwd a podobně si nejsem jistý, /home existovat nemusí, není-li vytvořen kromě roota žádný jiný účet. V principu by asi nemusel existovat ani /root, ale spousta programů včetně bashe si do domovského adresáře ukládá svoje nastavení. su a sudo jsou jen programy, teoreticky opět být přítomny nemusí.
Řečeno jednoduše, jádro je to, co stojí mezi hardwarem počítače a aplikacemi, aplikace je to, co stojí mezi jádrem a uživatelem.
Ad 2)
cp, ls a rm součástí jádra nejsou, pouze cd je tzv. "shell builtin" a ne samostatný program, opět ale není součástí jádra.
Ad 3)
Tohle je skutečně pravda, velká většina ovladačů je přímo součástí jádra. Je ale samozřejmě možné další ovladače doinstalovat; typicky např. proprietální ovladače ke grafickým kartám nVidia či AMD.
Já bych to pro tazele upřesnil: Ovladače mohou být (a taky že většinou jsou) ve formě tzv. modulů. To je kus kódu, který lze za běhu vložit/odstranit. Výhoda je jasná: stačí mít přímo v jádře jenom nezbytné ovladače a všechny ostatní budou jako moduly. Stačí tedy nahrát jenom potřebné moduly. Kdyby byly všechny ovladače přímo v jádru, tak by jádro zabíralo hodně z paměti RAM.
vmlinuz v adresáři /boot. Ten vytvoří přistup na základní HW. rozpozná disky a souborové systémy a má řízení procesoru, paměti azákladní funkce. Další moduly do jádra vytvoří přístup na další specializovaný HW typicky v /lib/modules/verze_jádra driver na grafiku a wifi je obvykle zde.
Vše ostatní jsou programy. Na příkazové řádce jsou distribuce velmi podobné, ale podobně jako v jiných případech jsou i na přikazové nebo serverové rovině více programů se stejným cílem. (např. ziskání své internetové identity - dhcp klient - bývá jednak dhcpcd a jednak dhclient některá distribuce preferuje jeden, jiná druhý přístup. Větší rozdíly jsou v umístění některých konfigurací, ale všichni dodržují, že konfigurace jsou v /etc. v grafice je vetší rozdíl, ale díky tomu, že KDE, Gnome a další jsou nadstavby X windows systém, je možné použít v podstatě jakýkoliv program z jednoho prostředí v prostředí druhém.
Konzole.Respektive driver pro konzoli.
Uživatelské účty, jejich oprávnění, data a přihlašování uživatelů (tzn. v systému musí existovat adresář /home a soubor /etc/passwd ?).Podpora pro oprávnění jo, ale účty, přihlašování a další věci se řeší v userspace (třeba pomocí getty nebo grafických správců obrazovky).
ale příkazy jako cd, ls, cp, rm apod jsou součástí jádra?Ne. To jsou normální programy sídlící většinou v /bin.
Někde jsem četl, že ovladače hardwaru se neinstalují jako ve Windows zvlášť, ale že se instalují aktualizací jádra. To znamená, že v jádru Linuxu jsou obsaženy ovladače na veškerý možný HW, se kterým se lze setkat?Ano, téměř všechny ovladače HW jsou v jádře. Výjimkou jsou user-space ovladače například tiskáren nebo některých USB zařízení.
Příkazy ls, cd, cp, rm nejsou součástí jádra (ale jsou součastí shellu).a to právě, tak není. Všimni si toho coreutils. Shelly s těmi programi jen počítají, jinak sou nezávislé jak ty programy, tak shelly (bash,zsh atd.). Je to jen v tom, že se to instaluje vždy společně, takže se nestane, že by shell nemohl ty programy používat, co by také moc jiného dělal. Shelly se liší hlavně předáváním proměných prostředí.
cd, záleží od shellu.
make menuconfig. Tím se spustí rozhraní, ve kterém si můžeš procházet a volit jednotlivé součásti kernelu (který by sis poté mohl zkompilovat, nijak se tím samozřejmě nemění ten aktuální). Vše je rozděleno do kategorií a k většině položek je k dispozici nápověda.
No, to aby si na to vzal dovolenou, protože tam jsou stovky (tisíce?) voleb. 
Tiskni
Sdílej: