Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
Německý kancléř Friedrich Merz (CDU) se během debaty s finalisty studentské vědecké soutěže Jugend forscht vyjádřil pro konec anonymity na internetu a vyslovil názor, že pro uživatele Internetu by měla platit podobná právní odpovědnost jako pro novináře tradičních médií. Na dotaz studenta, jak by se tedy povinnost uvádět pravé jméno slučovala s prací investigativních novinářů nebo ochranou jejich zdrojů, Merz neodpověděl, ve své
… více »Společnost Fujitsu představila FUJITSU-MONAKA CPU a Fujitsu MONAKA Server. Navrženo, vyvinuto a vyrobeno v Japonsku. Pro suverénní AI infrastrukturu.
Předprodej v květnu představených notebooků Googlebook, nástupců notebooků Chromebook, bude spuštěn v pondělí 21. září.
Byla vydána betaverze Fedora Linuxu 45 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 20. října. S konzolí kmscon místo fbcon. Současně byla vydána betaverze Fedora Linux Asahi Remixu 45. S podporou čipů M3.
Po půl roce vývoje od vydání verze 50 bylo vydáno GNOME 51 s kódovým názvem "A Coruña" (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Videopředstavení na PeerTube a YouTube.
OpenAI spolupracuje s konkurenty Anthropic a Google DeepMind ze skupiny Alphabet na bezpečnosti umělé inteligence (AI). Globální obavy ohledně existenčních rizik umělé inteligence vzrostly poté, co se o víkendu sešli vedoucí předních amerických firem z odvětví AI a vyzvali k pozastavení vývoje technologie.
Evropská unie navrhne zákaz sociálních sítí, online her a chatbotů pro děti mladší 13 let a možnost účtu pro děti do 15 let jen se souhlasem rodičů, oznámila šéfka Evropské komise Ursula von der Leyenová v dnešním projevu ve Štrasburku. Návrh předpisu nazvaného EU Kids Act představí Evropská komise ve čtvrtek. Von der Leyenová zdůraznila, že chce, aby se rovněž změnilo základní pravidlo: platformy budou muset dokázat, že jsou bezpečné.
… více »Byla vydána Java 27 / JDK 27. Nových vlastností (JEP - JDK Enhancement Proposal) je 9.
Byl vydán Mozilla Firefox 156.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Vestavěný prohlížeč PDF se nyní spouští o 45 % rychleji. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 156 bude brzy k dispozici také na Flathubu a Snapcraftu.
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.