OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Současné vývojové jádro je 3.0-rc5 vydané 27. června. Nic výrazně zajímavého. Nejzajímavější věc je asi to, že v ovladačích je jenom čtvrtina změn, víc (40 %) mají ve skutečnosti na svědomí souborové systémy: jsou tu btrfs, cifs, ext4, jbd2 a nfs. Detaily lze nalézt v kompletním changelogu.
Stabilní aktualizace: 23. června vyšly s dlouhým seznamem oprav aktualizace jader 2.6.32.42, 2.6.33.15 a 2.6.39.2. Aktualizace 2.6.34.10 – první od dubna – vyšla 26. června taktéž s velmi dlouhým seznamem oprav.
napsal Jonathan Corbet, 29. června 2011
Uživatelé API Video4Linux2 ví, že je poněkud komplikované, obsahuje 91 různých příkazů ioctl(). Co se hlášení chyb týče, je mnohem jednodušší: pokud se něco pokazí, aplikaci se téměř určitě vrátí EINVAL. Tato chyba může uživatelskému prostoru zkoušet sdělit, že zařízení je ve špatném stavu, že nějaký parametr byl mimo rozsah nebo jednoduše že požadovaný příkaz nebyl implementován. Není potřeba říkat, že pro vývojáře je těžké zjistit, co se vlastně stalo.
Správce V4L2 Mauro Carvalho Chehab nedávno zaslal patch, který mění návratový kód na ENOIOCTLCMD v případech, kdy relevantní ovladač neimplementuje požadovaný příkaz. Tato změna by rozlišila alespoň jednu sadu problémů – až na to, že kód VFS v tichosti překládá ENOIOCTLCMD na EINVAL předtím, než chybu vrátí do uživatelského prostoru. Z pohledu aplikace se tedy nemění nic.
Zajímavé je, že podle pravidel je jasné, co se v takové situaci má stát: pokud ioctl() příkaz nebyl implementován, jádro by mělo vrátit ENOTTY. Některé části jádra tuto konvenci dodržují, jiné ne. A není to nový problém ani problém specifický pro Linux; jak to řekl Linus: Tahle věc okolo EINVAL jde hodně do minulosti a je to pohroma. Pokud vím, je to starší záležitost než Linux samotný. Navrhl jednoduše změnit ENOIOCTLCMD na ENOTTY v celém jádře a zjistit, co se stane.
Samozřejmě se stane to, že se změní ABI pro uživatelský prostor. Je zcela možné, že někde venku nějaký program závisí na tom, že při chybějící ioctl() funkci dostane EINVAL a že když se návratový kód změní, přestane fungovat. Je ale jenom jeden způsob, jak to říci s jistotou: udělat změnu a zjistit, co se stane. Mauro hlásí, že tato změna ve V4L2 podle všeho nic nerozbíjí, takže je slušná šance, že se dostane do jádra 3.1. Změna v celém stromě by ale mohla mít mnohem širší důsledky; jestli někdo najde odvahu to zkusit, to se uvidí.
napsal Jonathan Corbet, 29. června 2011
V dubnu Phoronix s fanfárou oznámil, že jádro 2.6.38 – a ta následující – obsahuje „zásadní“ regresi ve správě napájení, která na některých systémech výrazně snižuje dobu běhu na baterie. Problém vygeneroval poměrně dost diskuzí včetně tohoto vlákna v Launchpadu, ale málo řešení. Phoronix nyní tvrdí, že našli změnu, která způsobuje problém, a poskytl workaround, který pro některé uživatele stav zlepší. Skutečná oprava ale asi jen tak nepřijde.
Protože se u PCI-Express zařízení používají vysoké takty hodin, mohou tato zařízení spotřebovat hodně energie, i když jsou nečinná. Proto byla vyvinuta „správa napájení pro aktivní stav“ [Active state power management, ASPM], která periférie přepne do režimu se sníženou spotřebou, když se zdá, že nebudou potřeba. ASPM může ušetřit energii, ale je zde obvyklé něco za něco: zařízení v režimu nízké spotřeby není okamžitě k dispozici. Na systémech, kde se ASPM používá, může přístup k zařízení, které je právě vypnuté, trvat výrazně déle. V některých situacích (obvykle v těch, které zahrnují běh na baterie), to může být akceptovatelné; v jiných ne. Takže jako většinu mechanismů pro správu napájení lze i ASPM vypnout a zapnout.
Je to ale o něco komplikovanější; na systémech x86 se do toho vkládá BIOS. BIOS je pověřen počáteční konfigurací systému a tím, aby jádru sdělil, jaké funkce jsou k dispozici. Jednou z těchto informací je to, jestli systém obsahuje podporu ASPM. Jaderní vývojáři vcelku rozumně došli k závěru, že pokud BIOS řekne, že ASPM není podporováno, neměli by hrabat do registrů s ním spojených. Ukázalo se ale, že tento přístup nefungoval; v prosinci tedy Matthew Garret začlenil patch popsaný takto:
Jinými slovy BIOS někdy systému sdělí, že ASPM není podporováno, přestože je; a aby to bylo zábavnější, BIOS může ASPM na některých zařízeních zapnout (přestože tvrdí, že není k dispozici) předtím, než předá kontrolu jádru. Vývojáři operačních systémů nemají vývojáře BIOSů v úctě a má to své důvody.
Kdyby si Andrew Morton changelog uvedený výše přečetl, určitě by si stěžoval, že „může způsobit problémy“ je pro změnu jádra poměrně vágní odůvodnění. Autor článku se Matthewa zeptal a získal informativní odpověď, kterou stojí za to přečíst si ji celou:
Není těžké si představit, že přepnout zařízení do stavu, o kterém se jádru řeklo, že neexistuje, může v některých případech vyvolat zmatek. Trocha hledání například našla toho hlášení o zatuhnutí systému, které Matthewův patch opravil. Pokud BIOS tvrdí, že ASPM není podporováno, zdá se, že dává smysl ujistit se, že si žádné zařízení nebude myslet opak.
Tento patch nicméně také byl označen za viníka poté, co se na Phoronixu zabývali hledáním půlením [bisect], aby našli příčinu dané regrese. Dává smysl, že vypnutí stavu snížené spotřeby může vést k vyšší spotřebě. Workaround navržený v článku spočívá v tom, že se použije volba pcie_aspm=force; ta donutí systém zapnout ASPM bez ohledu na to, co BIOS tvrdí o jeho podpoře. Tento workaround může bezpochyby na některých postižených systémech poskytnout lepší životnost na baterie; jinde nemusí fungovat vůbec. V tom druhém případě se systém může jednoduše zaseknout – což je stav s ještě horší charakteristikou latencí kombinovaný s překvapivě špatným využíváním energie. Workaround tedy může být přijat uživateli, kteří zjistí, že životnost baterií výrazně vzrostla, ale správné řešení problému to není.
Najít toto správné řešení – pokud možno takové, které bude prostě fungovat bez potřeby přidávat zvláštní parametry pro boot – může být složité. Opět citujeme Matthewa:
Vzhledem k nejistotě vývojáři jádra došli k závěru, že „plýtvání trochou energie“ je menší zlo než „na některých systémech se to zasekne“. Dokud nebude problém lépe pochopen, jiný přístup by bylo těžké ospravedlnit. Někteří uživatelé tedy budou muset workaround pcie_aspm=force používat ještě nějakou dobu.
Problém se spotřebou energie, alespoň pokud autor článku ví, se mezitím nikdy neobjevil v žádné jaderné vývojové e-mailové konferenci. Nikdy se neobjevil na seznamu regresí 2.6.38. Pro většinu vývojářů tedy byl neviditelný a není žádným překvapením, že se mu nedostalo větší pozornosti. Ať už je to dobře, nebo ne, vývojová komunita má svoje způsoby, jak řešit problémy. Nahlásit chybu na linux-kernel rozhodně negarantuje, že bude opravena, ale zvyšuje to pravděpodobnost. Kdyby byl tento problém předložen přímo zainteresovaným vývojářům, mohli bychom se o hlavní příčině dozvědět již před dlouhou dobou.
napsal Jake Edge, 29. června 2011
Správně ošetřit data od uživatelů je jedním ze základních principů zabezpečení. Různé zprávy v jaderném logu umožňují vložit uživatelem kontrolované řetězce pomocí specifikátoru formátu „%s“; útočník by to mohl zneužít tak, že potenciálně zmate správce systému vložením řídících znaků do řetězců. Vasilij Kulikov tedy navrhl patch, který by ošetřil některé znaky, které se v těchto řetězcích objevují. Objevily se nějaké otázky o tom, které znaky mají být ošetřeny, ale větší otázka je v kruzích zabývajících se bezpečností prastará: whitelistovat nebo blacklistovat?
Problém vychází z toho, že správci často k zobrazení souborů s logy použijí nástroje jako tail a more, kterými si je zobrazí na TTY. Pokud uživatel může vložit řídící znaky (a konkrétně escape sekvence) do logu, mohl by způsobit přehlédnutí potenciálně důležitých informací – nebo způsobit jiné zmatky. V nejhorším případě by escape sekvence mohly zneužít nějakou díru v emulátoru terminálu a vykonat kód nebo způsobit jiný druh špatného chování. V patchi Vasilij poskytl následující příklad: Řídící znaky by mohly roota zmást tak, že když si prohlíží logy na tty, mohlo by například ^[1A potlačit předchozí řádku v logu.. Znaky, které jsou filtrované, patch jednoduše nahrazuje „#xx“, kde xx je hexadecimální hodnota znaku.
Je to v podstatě poměrně nezávažná záležitost, ale není jasné, jestli pro používání řídících znaků v uživatelem dodaných řetězcích má nějaké legitimní použití. Tyto řetězce mohou přijít z různých míst; v diskuzi byla zmíněna jména souborů nebo ID řetězce USB produktů. První verze patche zjevně zacházela příliš daleko, když se ošetřily i znaky nad 0x7e (společně s řídícími znaky), což by vyřadilo i Unicode a další non-ASCII znaky. Po stížnostech Vasilijova druhá verze vyjímá pouze řídící znaky (tj. < 0x20) s výjimkou nové řádky a tabelátoru.
To ale příliš nesedlo Ingo Molnárovi, který si myslí, že místo whitelistování bezpečných znaků by se měly blacklistovat ty potenciálně škodlivé:
Jenže aby se vytvořil blacklist, je potřeba nejprve určit vliv různých řídících znaků na všech možných emulátorech terminálu, zatímco přístup s whitelistem má výhodu, že stačí jednoduše hodit mnohem větší síť. Jak píše Vasilij, zjistit, které znaky jsou problematické, není jednoduché:
Rozkol mezi Ingem a Vasilijem patří mezi ty, které ve světě zabezpeční existují již mnoho let. Správná odpověď na to, co je lepší, neexistuje. Stejně jako u většiny věcí i u zabezpečení (a když jsme u toho u vývoje softwaru jako takového) mají whitelisty a blacklisty svá pro a proti. Obecně je pro uživatelem zadaná data (například ve webových aplikacích) konsenzem whitelistovat vstup, o kterém víme, že je správný, místo toho snažit se určit veškeré možné „špatné“ vstupy. Přinejmenším v tomto případě nicméně Ingo nepovažuje whitelisty za správný přístup:
Není překvapením, že Vasilij s touto analýzou nesouhlasí: Co uděláš s nebezpečnými znaky, u kterých ještě nevíš, že jsou nebezpečné? I když není moc sporů o tom, že whitelist dobrých znaků je bezpečnější, je také méně flexibilní, pokud by se našlo legitimní použití dalších řídících znaků v uživatelem dodaných řetězcích. Krom toho je Ingo skeptický k tomu, že by se v ASCII řídících znacích skrývala nějaká nebezpečí: Toto tvrzení je hloupé – chceš říci, že v prostoru vypisování ASCII je nějaká 'neznámá chyba'?
V tomto případě by obě řešení měla být dostatečná, protože neexistují dobré důvody takové znaky používat, ale Ingo má nejspíš pravdu v tom, že v ASCII se žádná skrytá nebezpečí neskrývají. Je otázka, jestli je tato změna vůbec zapotřebí. Obava, která vedla k patchi, se zakládá na tom, že by administrátor mohl přehlédnout důležité zprávy nebo být oklamán pečlivě sestaveným vstupem (Willy Tarreau poskytl zajímavý příklad toho druhého.) Linus Torvalds není přesvědčen, že se jedná o problém, který by bylo potřeba řešit:
Vzhledem k Linusově skepticismu se nezdá, že by se patch dostal někam dál, i kdyby se použil přístup s blacklistem, který navrhuje Ingo. Je to, nebo by alespoň měla být, poměrně nevýznamná záležitost, i když spor o blacklistu vs. whitelistu pravděpodobně uvidíme znovu. Je spousta příkladů, kdy se v kontextu zabezpečení (i jiných) používají obě tyto techniky. Často se jedná o výběr mezi bezpečností (typicky whitelisting) a větší použitelností (blacklisting). Tento případ není nijak odlišný a určitě se objeví i jiné.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
BTW Ten rudej efekt neuzavřenýho tagu na nadpisy v menu je hustej :-O.Pravdu díš..
Taky je klidne mozny, ze widle udelaj pri prvni startu s ASPM nejaky strasny veci....Voodoo :D či Imperius :D ? :D