Jsongrep je open-source nástroj, který efektivně prohledává JSON dokumenty (editovat je neumí). Kompiluje regulérní jazyk dotazu do podoby deterministického konečného automatu (DFA), díky čemuž prochází strom JSON dokumentu pouze jednou a je v tom tedy rychlejší než jiné nástroje jako jsou například jq, JMESPath nebo jql. Jsongrep je napsaný v programovacím jazyce Rust, zdrojový kód je dostupný na GitHubu.
O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.
Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.
Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.
Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.
Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.
Byla vydána aktualizována Příručka pro začínající wikipedisty a wikipedistky (pdf).
Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.
Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.
Chris Down v obsáhlém článku „vyvrací mýty o zswap a zram“, vysvětluje, co vlastně dělají a jaké jsou mezi nimi rozdíly. Doporučuje vyhýbat se zram na serveru a bez OOM.
Po té, co jsem vyměnil server (a upgradnul ho na Jessie) jsem ho zhruba dva měsíce provozoval jen s fleškou. Úžasné bylo, že byl 100% tichý (opravdu 0 dB, žádný ventilátor, vše v pasivu, žádné otáčející se součástky). Nicméně z ničeho nic mi nešel nainstalovat ethtool, protože poškozený soubor /var/lib/dpkg/available. Co se z toho vyklubalo se dozvíte níže.
Něco špatného se asi děje s filesystémem. Takže přerušit nadějný uptime, flešku do počítače, dd a jde se na to. Jaké ale bylo moje překvapení, když fsck.ext4 zahlásil, že je vše v pořádku. Nu dobrá. Tak to zkusíme, start serveru z flešky, smazání /var/lib/dpkg/available a jeho znovuvytvoření pomocí sudo dpkg --clear-avail. Apt-get upgrade ale zase spadnul, navíc se souborový systém re-mountul jako read-only. A jsme doma. Fleška umírá pomalou smrtí (i když měl fs noatime a logování bylo celkem mírné). Naštěstí se mi doma válí mezi různým bincem i pár disků, takže jsem našel jeden mírně jetý 40GB:
Western Digital Caviar WDC WD400BB-00DEA0
ID# ATTRIBUTE_NAME FLAGS VALUE WORST THRESH FAIL RAW_VALUE
1 Raw_Read_Error_Rate PO-R-- 200 200 051 - 0
3 Spin_Up_Time POS--- 100 095 021 - 2375
4 Start_Stop_Count -O--CK 100 100 040 - 870
5 Reallocated_Sector_Ct PO--CK 199 199 140 - 3
7 Seek_Error_Rate PO-R-- 100 253 051 - 0
9 Power_On_Hours -O--CK 100 100 000 - 647
10 Spin_Retry_Count PO--C- 100 100 051 - 0
11 Calibration_Retry_Count PO--C- 100 100 051 - 0
12 Power_Cycle_Count -O--CK 100 100 000 - 865
196 Reallocated_Event_Count -O--CK 199 199 000 - 1
197 Current_Pending_Sector -O--C- 200 200 000 - 0
198 Offline_Uncorrectable -O--C- 200 200 000 - 0
199 UDMA_CRC_Error_Count -O-R-- 200 253 000 - 1500
200 Multi_Zone_Error_Rate P--R-- 200 200 051 - 0
||||||_ K auto-keep
|||||__ C event count
||||___ R error rate
|||____ S speed/performance
||_____ O updated online
|______ P prefailure warning
650 hodin je opravdu málo, ten disk byl jako externí párkrát použit, takže vzhledem k jeho stáří a na dnešní dobu směšné kapacitě může důstojně dosloužit v domácím serveru (nejojetější disk, který zatím v pohodě jede má za sebou úctyhodných 53705 hodin a je to taky WD
, byť SATA RaidEdition.
Takže dd na nový disk. instalace PATA disku do servříku a start do single-usera. Fsck i nadále zarytě tvrdí, že je vše v nejlepším pořádku. Nicméně instalace furt padá s podivnou chybou podproces nový pre-installation skript byl zabit signálem (Nedovolená instrukce (SIGILL)). Po zjištění, že to dělá pre-instalation skript libovolného balíku jsem zjistil, že podobný bug už v Debianu znají a souvisí s libc. hmm. Trasování mne z postinst skriptů dovedlo do /usr/share/debconf/confmodule. Ten padá při volání /usr/share/debconf/frontend. A ten spadne hnedka na začátku. Protože stejně spadne /usr/bin/perl. A mám ho, syčáka. Takže výlet do /var/cache/apt a pokus o dpkg -i perl_base . Další chybová hláška, že něco není aktuální blablabla. Takže ruční dpkg -i dpkg - ten prošel a pak druhý pokus o instalaci perlu. V okamžiku, kdy perl začal fungovat, zase se root přemountoval RO. Tak jsem nahodil fsck, který opravil mraky chyb (úplně nechápu, kde se vzaly, ale budiž), výzva k restartu. Systém bez problémů naběhl a další apt-get update;apt-get upgrade;apt-get -f install proběhly už bez problémů.
Server teďka sice trošku šumí (alespoň je kontrola, že je zapnutej
), ale nejbližších pár let nebudu muset řešit odcházející SDHC/flešky/SSD_disk a můžu zapisovat kolik chci. S točícími disky přichází nutnost smartmontools, do /etc/smartd.conf píšu /dev/hda -H -C 0 -U 0 -m mujmejl@example.net -s L/../../7/9 (nějaké tipy na parametry smarmontoolss na serveru ?). Vzhledem k tomu, že je to mimo jiné mailserver (byť s poměrně malým provozem několika mailů denně), váhám, jestli si hrát s hdparm - t.j. jestli s vypínáním disku nenadělám víc škody než užitku ?
Co se týče úspory energií, tak jsem zakotvil na cpufreq-set -d 800MHz -u 1800MHz -g powersave -c 1 resp -c 0 (nějak mi nechce fungovat -r, které by mělo nastavit všechna jádra), obě CPU se většinu času flákají mezi 900 a 1000 MHz, akorát powertop mne stále neuspokojuje, 100% ukazují zařízení:
Tiskni
Sdílej:
noatime.
swap do souboru.
)
JFFS2, to je systém přímo dělaný na FLASH paměti bez řadiče (MTD) a má dobře vyřešený wear leveling. Nevýhoda je, že se při mountování musí přečíst spousta údajů a celkem dlouho to trvá (na jednom starém Mikrotiku s OpenWRT trvalo namountování pouhých 64MB skoro minutu). Případně by se mohl použít LogFS, který by se měl rychleji mountovat, ale i v současné verzi jádra je označovaný za silně experimentální.
Alternativa je vykašlat se na souborový systém a použít rešení a lá černá skříňka - prostě zapisovat do syrového zařízení bloky s timestampem na začátku (nebo nějakým čítačem, důležité je jen, aby to bylo monotóní) a když se dojde na konec, tak začít zas od začátku zařízení. Na nalezení nejstaršího bloku (tj. místa, kam se bude zapisovat příště) se pak použije modifkované binární vyhledávání, takže se nemusí číst všechno.
Shrnuto, podtrženo: když má člověk kliku, tak to funguje dobře, ale nevím, jak to dopředu poznat...