V Brně na FIT VUT probíhá třídenní open source komunitní konference DevConf.CZ 2025. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Vyloučení technologií, které by mohly představovat bezpečnostní riziko pro stát, má umožnit zákon o kybernetické bezpečnosti, který včera Senát schválil spolu s novelami navazujících právních předpisů. Norma, kterou nyní dostane k podpisu prezident, počítá rovněž s prověřováním dodavatelů technologií pro stát. Normy mají nabýt účinnosti od třetího měsíce po jejich vyhlášení ve Sbírce zákonů.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.6.
Po Red Hat Enterprise Linuxu a AlmaLinuxu byl v nové stabilní verzi 10.0 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Bylo vydáno Eclipse IDE 2025-06 aneb Eclipse 4.36. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Americká filmová studia Walt Disney a Universal Pictures podala žalobu na provozovatele populárního generátoru obrázků pomocí umělé inteligence (AI) Midjourney. Zdůvodňují to údajným porušováním autorských práv. V žalobě podané u federálního soudu v Los Angeles označují firmu za „bezednou jámu plagiátorství“, neboť podle nich bez povolení bezostyšně kopíruje a šíří postavy z filmů jako Star Wars, Ledové království nebo Já, padouch, aniž by do nich investovala jediný cent.
Ultra Ethernet Consortium (UEC), jehož cílem je optimalizace a další vývoj Ethernetu s důrazem na rostoucí síťové požadavky AI a HPC, vydalo specifikaci Ultra Ethernet 1.0 (pdf, YouTube).
Francouzský prezident Emmanuel Macron chce zakázat přístup na sociální sítě pro děti do 15 let. Francie podle něj tento krok udělá sama do několika měsíců, i pokud se na něm neshodnou další státy Evropské unie. Reaguje tak na úterní vraždu vychovatelky, kterou ve východofrancouzském městě Nogent pobodal 14letý mladík. Jednotlivé sociální sítě podle něj mají možnost věk ověřit a vymáhat zákaz pomocí systémů na rozpoznávání tváří.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,742 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 165 místo. Karolina, GPU partition klesla na 195. místo a Karolina, CPU partition na 421. místo. Další přehledy a statistiky na stránkách projektu.
Oficiálně byl vydán Android 16. Detaily na blogu a stránkách věnovaných vývojářům.
kexec
je systémové volání, které umožňuje aktualizovat Linux kernel za běhu, tedy bez potřeby restartu počítače. Minimalizuje se tím odstávka stroje potřebná k aktualizaci jádra. V tomto článku si povíme něco z málo teorie a ukážeme si jak na to prakticky.
Aktualizace jádra bez restartu počítače zní dobře. Jak je to vlastně možné? Jelikož je obraz jádra uložen na fixním bodě v paměti, není až takový problém jej přepsat obrazem jiným. To se dělá ve třech krocích: nejdřív se obraz nahraje do paměti uživatelského prostoru, potom se přesune do dynamické paměti jádra, zkopíruje se na místo jádra původního a načte se.
Přeskočí se všechny kroky od spuštění počítače až k zavaděči, což zahrnuje inicializaci hardware, dále činnost firmware (na x86 BIOS) a samotný zavaděč (např. GRUB nebo lilo). Z tohoto kromě zřejmé výhody, že se ušetří nějaký čas, mimo jiné také vyplývá, že je zde riziko toho, že se některé zařízení bude po načtení nového jádra nacházet v nedefinovaném stavu.
Použití kexec přináší jednu zajímavou výhodu, kterou ocení hlavně vývojáři jádra. Jde o to, že po jeho zavolání se zachová obsah RAM a díky tomu je možné zjistit např. proč došlo k nějaké chybě v aktuálně načteném jádře. Nemusíte se spoléhat například na rozbitý ovladač disku, protože můžete nahrát nové jádro, kde je ovladač v pořádku a uložit na disk obraz paměti pomocí něj.
Je zde ovšem i další nevýhoda. Kexec se nestará o ukončování uživatelských procesů, odpojování disků, atd. To vše musíte udělat sami.
Kexec není prvním projektem, který se o něco takového snaží. Předcházely mu projekty bootimage a Two Kernel Monte (v dobách Linuxu 2.3/2.4). Kexec je dostupný v Linuxu až od verze 2.6. Dříve jej Eric W. Biederman vyvíjel jako patch pro Linux 2.5, který podporoval pouze 32-bitovou architekturu x86, ale později se dostal do oficiálního (vanilla) jádra a získal podporu dalších architektur (x86-64, PPC, IA64, ARM, MIPS). Nyní, když chcete podporu kexec v jádře (což je samozřejmě nutné, pro použití kexec), musíte povolit volbu CONFIG_KEXEC.
Aby bylo možné kexec ovládat z uživatelského prostoru, musí pro to existovat nějaký nástroj. Balíček kexec-tools obsahuje potřebný program kexec
(a kdump
, kterým se nebudu zabývat), se kterým je třeba pochopitelně pracovat s rootovskými právy.
Nejdříve předáme přepínači -l
cestu k novému obrazu jádra, potom pomocí --append=
přidáme případné argumenty jádru (nezapomeneme předat kořenový adresář pomocí "root=...
") a případně ještě počáteční ramdisk initrd pomocí --initrd=
. Příkaz nakonec může vypadat takto:
kexec -l "/boot/vmlinuz26" --append="root=/dev/sda2 ro" --initrd="/boot/kernel26.img"
Tímto se jádro zatím pouze načte na dočasné místo v paměti. Nyní je čas povypínat běžící procesy (můžete použít initskripty, případně kill na ty neposlušné), odpojit oddíly a změnit připojení kořenového adresáře pouze pro čtení, což se dělá takto:
mount -o ro,remount /
Nyní je čas zahájit spuštění nového jádra, což se provádí příkazem:
kexec -e
kexec
má ještě několik přepínačů, z nichž jsou pro běžného smrtelníka zajímavé například tyto: -u
zruší načtení kernelu pomocí -l
, --reuse-cmdline
použije jako argumenty běžícího jádra pro nové jádro, --reuseinitrd
použije ramdisk z prvního bootu a --reset-vga
se pokusí resetovat standardní VGA zařízení. Ne všechny přepínače jsou dostupné pro všechny případy, proto si případně přečtěte manuál (man kexec
).
Když shrneme výhody a nevýhody, dojdeme k tomuto:
+ kratší odstávka při změně jádra
+ zachování dat v operační paměti (vhodné hlavně pro vývojáře)
- uživatel se musí postarat o řádné ukončení procesů a odpojení oddílů disků (*)
- tím, že nedojde k reinicializaci hardwaru, se může stát, že se nějaké zařízení bude po spuštění nového jádra nacházet v nedefinovaném stavu
Je na každém, aby se rozhodnul, jestli mu několik ušetřených sekund stojí za tato rizika.
Ještě se vrátím k hvězdičce (*) u první nevýhody, kterou jsem zde uvedl. Jelikož píši článek o kexec, bylo by asi zvláštní, kdybych jej nevyzkoušel. Vrhnul jsem se tedy na to, postupoval jsem jak jsem měl a když jsem došel k volání kexec -e
, způsobilo paniku jádra (soudě dle blikajícího numlocku). Ve wiki Arch Linuxu, který používám, jsem se dočetl jaký je podporovaný postup na této distribuci a byl jsem mile překvapen. Initskripty Arch Linuxu s použitím kexec totiž počítají a spustíte-li:
/etc/rc.d/kexec start /etc/rc.d/kexec load reboot
systém se postará o zbytek sám. První příkaz povolí použití kexec, když spustíte klasický příkaz reboot
(nebo prostě restartujete počítač z grafického prostředí). Druhý příkaz načte nové jádro, které má být spuštěno místo současného (nastavení čte z konfiguračního souboru /etc/conf.d/kexec
). Třetí příkaz je v tomto případě již jen jedním ze způsobů, jak proces spuštění nového jádra zahájit.
Rozhodnete-li se kexec používat, nejdříve si tedy zjistěte preferovaný postup na vaší distribuci, pravděpodobně totiž bude uživatelsky podstatně přívětivější. Pro příklad uvedu ještě relevantní odkaz na Gentoo wiki.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Osobně raději překousnu několikaminutová downtime než abych instaloval binární patche do jádra od nějaké (skoro) neznámé firmy.Ty možná jo. Pokud má někdo na stroji úlohu, co běží dlouho a ještě dlouho běžet bude, určitě se mu nebude chtít pouštět to znova, protože restart Patche původně nebyly binární, mělo to jít do hlavní řady...
Ty možná jo. Pokud má někdo na stroji úlohu, co běží dlouho a ještě dlouho běžet bude, určitě se mu nebude chtít pouštět to znova, protože restartTo urcite. Ale porad je lepsi, kdyz ten nekdo tu ulohu pozastavi kvuli restartu, a po restartu da resume a bude pokracovat, nez kdyz mu uprostred behu te ulohy necekane sleti system, protoze spatny binarni patch. To v tom lepsim pripade - v tom horsim pripade to zdanlive probehne OK a treba to poskodi driver radice a skoncis s filesystemem na hadry.
protoze spatny binarni patch.Já nevím, co furt máš s těmi špatnými binárními patchi... ty patche se vytváří z aktuálního běžícího jádra (tj. z otevřených zdrojových kódů), nahradit tělo funkce jinou taky není tak velký problém a největší problém celého toho procesu jsou softwarové patenty na některé částí postupu. Tvoje kecy o špatných patchích jsou jenom FUD. Nebo už jsi nějaký takový pád kvůli ksplice viděl?
# Defaults for kexec initscript # sourced by /etc/init.d/kexec and /etc/init.d/kexec-load # Load a kexec kernel (true/false) LOAD_KEXEC=false # Kernel and initrd image KERNEL_IMAGE="/boot/vmlinuz-2.6.32-22-generic" INITRD="/boot/initrd.img-2.6.32-22-generic" # If empty, use current /proc/cmdline APPEND="root=UUID=00ece7dc-da9e-43e1-b8f3-50fad256d916 ro single kgdb8250=ttyS0,115200 kgdbwait kgdbcon"v lepších případech stačí jen LOAD_KEXEC=false přepsat na LOAD_KEXEC=true a bude to fungovat samo. Jinak s tím nedefinovaným stavem to není až tak úplně žhavé. Důležité je, aby k zařízení kupř. byly jaderné ovladače a byla v nich zahrnuta inicializace. Dřív býval např. problém s grafikama, ale co je v jádře Noveau a KMS, tak to fachčí bez nejmenšího problému. Jinak si se klidně pár slovy ještě mohl zmínit o kdumpu. Ten je též parádní, jen mě na něm štve, že je potřeba vyhradit novému jádru dopředu místo. A za námět k falejmu jednoznačně * THUMBS UP*.
PS: kdyby to někoho zajímalo, tak uptime se samozřejmě vynuluje.Sakra
Přeskočí se všechny kroky od spuštění počítače až k zavaděči, což zahrnuje inicializaci hardware, dále činnost firmware (na x86 BIOS) a samotný zavaděč (např. GRUB nebo lilo)
Toto bych jako výhodu ani moc neviděl. Jasně, pro vývojáře jádra, který by jinak musel rebootovat 10x denně je to jistě plus. Ale server/stanici si velmi rád po upgrade jádra kompletně restartnu, aby viděl, zda se vše nastartuje jak má.
Nasrali ste ma, tak som to nasielTy jo, tak sme fakt borci. Jinak jsem na to mrknul i já a též to není tak žhavé.
NoUpdateProcessList
v /etc/PackageKit/PackageKit.conf
. Ve výchozí konfiguraci je tam pouze firefox.
To, že to okno neříká, který proces je potřeba ukončit, je nahlášený bug.