Byla vydána verze 1.96.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Společnosti IBM a Red Hat představily Project Lightwell s investicí 5 miliard dolarů. Jedná se o důvěryhodné clearingové centrum pro bezpečnost open source softwaru a zabezpečení dodavatelských řetězců s novým AI modelem a globální skupinou více než 20 000 softwarových inženýrů. Služby centra budou dostupné prostřednictvím komerčních předplatných. Project Lightwell staví na iniciativách jako Anthropic Glasswing nebo OpenAI Trust Access for Cyber.
Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 26.05. Podrobný přehled novinek v poznámkách k vydání.
Český stát by v budoucnu mohl provozovat vlastní alternativu ke komunikačním aplikacím typu WhatsApp, Signal, Telegram, Facebook Messenger a podobně. Cílem je zajistit bezpečnou datovou komunikaci pro stát a jeho důležité subjekty, jako jsou bezpečnostní složky, ministerstva a další organizace.
Už za týden, ve čtvrtek 4. června, se v Národní technické knihovně v pražských Dejvicích uskuteční další konference věnovaná tématům spojeným s IPv6 - Den IPv6. Program akce a registrační formulář jsou k dispozici na webu akce. Kapacita konference je omezená, proto organizátoři doporučují, aby se vážní zájemci přihlásili včas (k dnešnímu dni zbývá přibližně 30 volných míst). Konferenci Den IPv6 2026 organizují i letos společně sdružení CESNET, CZ.NIC a NIX.CZ.
Zařízení Steam Deck OLED bylo znovu naskladněno, ale vlivem rostoucích cen pamětí a úložišť má novou, vyšší cenovku. Steam Deck OLED 512 GB stojí nově 779 EUR (stál 569 EUR) a Steam Deck OLED 1 TB stojí 919 EUR (stál 679 EUR). Samotné zařízení se nijak nezměnilo a nové ceny tedy pouze odráží aktuální náklady na komponenty a další globální logistické výzvy, se kterými se potýká celá branže.
Český telekomunikační úřad zahajuje novou etapu využívání vysokofrekvenčního rádiového spektra v pásmu 26 GHz. Toto pásmo bude od 1. 7. 2026 otevřeno pro provoz moderních bezdrátových sítí, zejména sítí páté generace (5G), pevných bezdrátových přístupových sítí (FWA) a lokálních či průmyslových sítí určených například pro výrobní areály, logistická centra nebo technologické kampusy. Současně s otevřením pásma 26 GHz přistoupil ČTÚ ke zpřístupnění informací o využívání rádiových kmitočtů v tomto pásmu.
Logitech představil myš Signature Comfort Plus M850 L s polstrovanou opěrkou dlaně pro větší pohodlí a sadu s touto myší a klávesnicí s integrovanou opěrkou dlaní Signature Comfort Plus Combo MK880.
Gaël Duval se rozepsal o novinkách a plánech Murena a /e/OS. Počet uživatelů telefonů Murena a mobilního operačního systému /e/OS bez aplikací a služeb od Googlu se blíží 100 000. Ambicí je, aby se /e/OS stal třetí mobilní platformou v Evropě i na světě, s potenciálem dostat se i na PC. Blíží se vydání nové verze 4 s funkcemi zálohování a obnova, import e-mailů z Gmailu a rozpoznávání hlasu. Murena Workspace přinese videohovory, elektronický podpis a správu zařízení (MDM).
Dnes a zítra probíhá Ubuntu Summit 26.04. Na programu je řada zajímavých přednášek. Sledovat je lze na YouTube. Úvodní slovo měli Mark Shuttleworth a Jon Seager.
Když mě osobně začínaly zmíněné vlastnosti nahlodávat (asi dva roky zpět), hledal jsem způsob, jak zachovat svůj čistý systém LILO + vlastní lilo.conf + ručně kopírované bzImage. Něco, co mě kdysi naučila Cesta do hlubin kompilace jádra. Mou první volbou tak bylo "nějak opatchuju kernel, abych mohl specifikovat device mapper tabulku přímo kernelu" (tehdy mi voněl hlavně rootfs na LVM).
Našel jsem kupodivu víceméně hotový patch, který se sice do upstreamu podle všeho nedostal, ale který by šel nějak upravit pro současné kernely. Jenomže pak jsem začal chtít i cryptsetup a ohackovávat startup sekvenci před spuštěním initu, abych mohl zadat heslo, se mi opravdu nechtělo.
Tedy v C. Začal jsem zkoumat možnosti, jak mít v initramfs cpio archivu jen jednu staticky linkovanou binárku jako /init. První problémy nastaly se switch_root (tj. zjednoduššený pivot_root), kdy skutečné přepnutí do nového rootfs a smazání stop v původním tmpfs není vůbec jednoduché. Pak jsem narazil u LVM, které - ačkoli má nějaké knihovny pro userspace - prakticky nemá minimalistický C binding a pokud chci pracovat s LVM z malého C programu, ..., musím pracovat s LVM metadaty na disku ručně (a podle toho volat kernelovský device-mapper), nebo překopírovat kusy kódu z lvm binárky. Ne zrovna nejlepší / nejčistější řešení.
V tuto chvíli (~ rok průběžného průzkumu) jsem to už vzdával. Uvažoval jsem, zda by debianí initramfs-tools šly použít nějak jednodušše s vlastními kernely, aniž bych musel u každého záznamu v lilo.conf specifikovat per-kernel initramfs. Protože když něco bisectuji, tak tam mám třeba 6-7 různých verzí kernelu. Co je vlastně v initramfs tak kernel-specific? Jaderné moduly. Tedy pokud by se mi podařilo ohnout initramfs-tools tak, aby generovaly jen skripty, mohl bych nacpat device-mapper do kernelu a v lilo.conf v globálním append= uvést onen generický initramfs.
Vypadalo to slibně, /etc/initramfs-tools/initramfs.conf zmiňoval:
# MODULES: [ most | netboot | dep | list ] # most - Add most filesystem and all harddrive drivers. # dep - Try and guess which modules to load. # netboot - Add the base modules, network modules, but skip block devices. # list - Only include modules from the 'additional modules' list
Jenomže ta poslední volba nefunguje úplně dokonale. Víte, jak vám bobtná distribuční initramfs, pokud náhodou nainstalujete věci jako lvm, mdadm, cryptsetup, nfs, a já nevím co ještě? To se logika generace initramfs snaží být hloupá a místo detekce, co je pro rootfs potřeba, tam nacpe všechno, co najde. Bohužel tato logika asi nerespektuje MODULES=, takže se mi v initramfs objevovaly minimálně MD (raid) moduly. A ohackovávat distribuční logiku v /usr? Udělat si post-processing skript pro generovaný initramfs? Meh, to už není cesta nejmenšího odporu / nejmenší snahy (least-effort). Navíc - kernel v gitu mi upgrade distribuce nepřepíše. Věci v /usr/share (nebo /var/lib nebo kde systém ráčí) už ano.
Kdysi jsem se hrabal v busyboxu (a submitoval odvážné změny do upstreamu
), který jsem používal spolu s externími nástroji, zkompilovanými přes uClibc toolchain. Související buildroot od té doby výrazně pokročil, nabral spoustu možných balíčků (vč. X) a koncem 2013 měl přibýt i cryptsetup (byl tehdy v prvním -rc). Ten také přibyl a já tak měl své finální řešení - buildrootem sestavený userspace. Tedy busybox s defaultním configem (všechno má své hranice a já jsem líný), minimální uClibc, lvm, cryptsetup a (pro budoucí případy) mdadm. Pro probuzení z hibernace není snad nic kromě echo potřeba, jde jen o zapsání správného zařízení do /sys/power/resume, pokud se nepletu.
To vše pohodlně z prostředí domova. Stačí jen jeden make config, 20 minut nastavování a make. Jako u kernelu. Pak už následuje jen čištění nepotřebných souborů, binárek a knihoven (pokud jste použili výchozí rootfs šablonu), což zcvrkne nešifrovaných 4.9M na asi 3.5M, psaní vlastního /init (nebo /linuxrc) skriptu a je hotovo.
Balíme přes cd myinitramfs/; find . | cpio -o -H newc | gzip -9 > ../myinitramfs.gz a podáváme horké.
Předně - závislosti, které musí být zakompilovány do kernelu (neměl jsem ani jednu):
mdev)Dále také užitečné tipy pro psaní /init skriptu:
blkid z util-linux balíku, protože ten od busyboxu neuměl ani -U ani -L a nebyl schopen detekovat UUID u LUKS/LVM oddílůswitch_root musí být spušťen jako PID 1, takže nezapomeňte na execresume= po mountu (ani read-only), vizte BIG FAT WARNING v Documentation/power/swsusp.txt/proc/sys/kernel/printk pro zobrazení jakéhokoli dotazu na uživatele (heslo), jinak jej (se) utopíte v debug výstupu kernelu (tedy, bez quiet)Časem se může stát, že bude potřeba aktualizovat použité binárky/knihovny v samotném initramfs. Ať už to z bezpečnostního (někdo do vanilla kernelu dostane rootkit, který exploitne cryptsetup v initramfs) nebo jiného (kernel změní ABI, i přestože to není pravděpodobné) důvodu. Výhodou initramfs-tools řešení by byla právě snadná aktualizace initramfs - stačilo by aktualizovat systém a zavolat update-initramfs. S ručně sestaveným initramfs je však potřeba stáhnout novou verzi buildrootu, znova jej nastavit (rok starý config vám nepomůže, kconfig struktura se poměrně zásadně průběžně mění), zkompilovat a nové binárky a knihovny překopírovat. Ale víte vy co? Až tak mi to nevadí. Tento zápisek není jen pro vás. 
Dalším budoucím problémem může být systemd - je docela možné, že přibyde nějaká povinnost mít v initramfs i systemd, který něco nějak nastaví. Zatím tomu tak (pokud vím) není, ale je dobré to mít na paměti. uClibc buildroot podporu pro systemd má (potřebujete k němu samozřejmě minimálně udev, dbus a další kernelovské závislosti), takže pokud se vám tento "init systém" zamlouvá, můžete vesele experimentovat.
Pokud jste čekali hotový /init, asi vás zklamu. Já jej sice pojal modulárně,
# syntax: # root=<devspec> # rootreq=<action> # resume=<device> # <device> passed to /sys/power/resume # # <action>: luks:<devspec>:cryptoname # lvm:vgname[/lvname] # # <devspec>: /dev/sda1 , /dev/mapper/xyz, /dev/vg0/lv0, ..., # UUID=aa-bb-cc, major:minor # # (note: the order of rootreq= on cmdline matters !) # # example kernel cmdlines: # # root on LVM: # root=/dev/myvg/rootlv rootreq=lvm:myvg/rootlv # # root on encrypted partition and with volatile disk order: # root=/dev/mapper/root rootreq=luks:UUID=aa-bb-cc:root # # root on LVM LV on encrypted partition: # root=/dev/myvg/rootlv rootreq=luks:/dev/sda2:root_dec rootreq=lvm:myvg # # ... with support for hibernation: # root=/dev/myvg/rootlv rootreq=luks:/dev/sda2:root_dec \ # rootreq=lvm:myvg/swaplv resume=/dev/myvg/swaplv rootreq=lvm:myvg/rootlv
ale v zásadě stačí jen trojice mountů (devtmpfs, proc, sysfs) na začátku, s následnými cryptsetup/lvm příkazy, mountem rootfs, uklizením (umount /dev, /proc, /sys) a switch_rootem. U mě to celkem se všemi (dlouhými) komentáři, README, ..., dává 2.6MB kernel + 1.8MB initramfs, oboje v gzipu.
Snad vám tento zápisek dal něco víc, než všechny ostatní návody na tvorbu initramfs. Praktickým cvičením / domácím úkolem budiž tvorba vlastního /init skriptu. 
Tiskni
Sdílej:
V mém případě je to typicky /boot na partišně zvlášť, ale mělo by to stejným způsobem fungovat i s LVM LV, pokud se dané LV nepohne. Jasně, mít druhý root pro aktivaci LVM/crypto/... by samozřejmě šlo, ale:

To funguje jen do té doby, než jádro nainicializuje bloková zařízení v jiném pořadí. Proto se autor páral s blockid.
Kdyby parametr root přijímal topologické cesty (něco jako cesta v sysfs), tak by ani blockid nebylo (kromě lokálního SCSI a rootu na síti) třeba. V systémech s IDE jsou cesty statické, protože řadič má pevnou topologii (primární/sekundární kanál, master/slave zařízení). Zrovna tak SATA má jednotlivé linky staticky číslované. USB to samé.
initram<něco> je třeba, pokud je rootfs šifrovaný a/nebo na LVM/RAIDu/síti/jánevímkdeještě, ale pro hibernaci to neplatí, u té stačí jen natvrdo zakompilovat do jádra partition, na které se ukládá image (volba *configu Power management and ACPI options/Default resume partition, aneb option CONFIG_PM_STD_PARTITION) plus příslušné ovladače k disku, na kterém se nachází. Pokud je v PC jeden disk s jedním swapem, stačí nastavit příslušnou partition. Pokud ne, bude to fungovat jen tehdy, když jádro při startu nadetekuje disky pokaždé ve stejném pořadí.
Ano, je pravda, že pro probuzení z hibernace není vůbec initramfs potřeba, pokud je vše na oddílech, které umí rozpoznat kernel. Z Documentation/power/swsusp.txt:
. The resume process checks for the presence of the resume device,
if found, it then checks the contents for the hibernation image signature.
If both are found, it resumes the hibernation image.
. The resume process may be triggered in two ways:
1) During lateinit: If resume=/dev/your_swap_partition is specified on
the kernel command line, lateinit runs the resume process. If the
resume device has not been probed yet, the resume process fails and
bootup continues.
2) Manually from an initrd or initramfs: May be run from
the init script by using the /sys/power/resume file. It is vital
that this be done prior to remounting any filesystems (even as
read-only) otherwise data may be corrupted.
Jenomže já už dříve měl šifrovaný home, který jsem odšifrovával až po přihlášení pomocí speciálního skriptu, který jsem měl místo shellu v /etc/passwd, takže nešifrovaný swap se všemi klíči na disku tak nějak nepřipadal v úvahu. 
Každopádně díky za poznámku, možná se bude hodit ostatním.
Podle mně je doba, kdy si uživatel kompiluje vlastní kernel tatam.Už pred rokmi vyselo na kernel.org, "nebojte sa skompilovať si svoje jadro, je to sranda" a môžem to potvrdiť, predsa o tú nám ide v prvom rade
Kompilácia má dnes význam na embedded systémoch, kde sa po zapnutí vyžaduje okamžitý štart, na desktope to už fakt nemá veľké opodstatnenie, ale že zábava to fakt je.
Některé netbooky se při kompilaci kernelu těžce přehřívají a mají tendenci se vypínat v průběhu práce.Není to na reklamaci?
Některé netbooky se při kompilaci kernelu těžce přehřívají a mají tendenci se vypínat v průběhu práce.Já to řeším podtaktováním, sice se úměrně prodlouží doba kompilace, ale vyhne se tím přehřátí. Pokud nejde podtaktovat, je tu ještě možnost čas od času kopmpilaci pozastavit (např. ScrollLockem na konzoli, posíláním SIGSTOP/SIGCOND a pod.), dokud se zase stroj nevychladí.
Čistě mimochodem - na noteboocích s i3/i5/i7 procesory hodně pomáhá vypnutí turbo boost (Thinkpad X220, z 97C na 86C), na kernelu 3.9+ (kde je nový pstate driver) stačí prostě:
echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo
Zapnuté, samozřejmě, je to featura na zrychlení jednovláknových aplikací. Dá se to vypnout i jinak, pokud to nejde v BIOSu (na desktopech jde, na serverech často taky, na laptopech málokdy). Docela mě to dostávalo, když jsem undervoltovával C2D (tehdy se tomu říkalo IDA). Možná by se taky mohla hodit utilitka turbostat, která je někde v tools/ ve zdrojácích kernelu.
Jelikož se tak trochu pohybuji na hranici "HiFi", tak narážím často na USB zařízení, která mají problémy s drivery. Ať už to kvůli nekompetenci zařízení (nutnost přidat quirk do alsy) nebo kvůli hroznému stavu TT schedulingu u EHCI driveru, který Alan Stern připomíná u každého revertu / regresního fixu:
This patch reverts commit 3e619d04159be54b3daa0b7036b0ce9e067f4b5d
(USB: EHCI: fix bug in scheduling periodic split transfers). The
commit was valid -- it fixed a real bug -- but the periodic scheduler
in ehci-hcd is in such bad shape (especially the part that handles
split transactions) that fixing one bug is very likely to cause
another to surface. That's what happened in this case; the result was
choppy and noisy playback on certain 24-bit audio devices.
The only real fix will be to rewrite this entire section of code. My
next project...
Možná se jednou dočkáme přepisu EHCI driveru, možná to brzo bude jedno (XHCI) / zařízení používající USB2.0 High Speed, možná začnou výrobci HW následovat standardy, možná dostanu hodinky s vodotryskem. Alespoň to poslední začíná pomalu vypadat reálně. 
Kromě toho mám pár commitů, které udržuji čistě kvůli pohodlí - jako ochrana proti zamknutí cdrom mechaniky, změna "Disabling IRQ" na KERN_WARNING, aby mi nvidia driver nespamoval konzole, apod.
Obecně ale i u mě platí to, že tam, kde stačí distribuční kernel, nekompiluji vlastní. 
Podle mně je doba, kdy si uživatel kompiluje vlastní kernel tatam.Já teda taky používám distribuční, ale dokážu si představit, že budu potřebovat vlastní. Třeba kdybych ladil drivery, používal nějaké security patche jako grsec nebo chtěl
mrkva.ko, kterej se asi do upstreamu jen tak nedostane :).