V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …
Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.
Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.
Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.
Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.
Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.
Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).
Na embedded zařízeních občas po bootu nenajelo sshd.
Instaloval jsem APU2 - jednodeskový počítač s překvapivě výkonnou x86 a skutečným mSATA (takže neřešíte microSD karty jako u různých Ovoce Pi). Neměl jsem k tomu připojené žádné periferie, a po bootu trvalo několik minut, než se tam dalo přihlásit po síti. Po přihlášení na lokální konzoli se ukázalo, že visí zaseklý proces sshd -t
, a až časem se to odsekne, zaloguje se random: crng init done
a sshd začne přijímat spojení. Jenom pro představu, takhle vypadá debianí sshd unita:
[Service] ExecStartPre=/usr/sbin/sshd -t ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
a -t je nějaký parametr co testuje konfiguraci. Takže to čeká už v tom. Mimochodem tohle se blbě ladí, protože když do systému začnete rejpat, tak mu tím přidáváte entropii a k problému nedojde.
Jedno z nalezených řešení doporučovalo nainstalovat haveged. Ten se snaží entropii sehnat různě, kdo ví kde, a s kdo ví jakou kvalitou. To mi ale přijde nekoncepční -- tenhle problém se přece odjakživa řeší tím, že se při vypínání uloží náhodné bajty na disk, a při bootu se načtou, a tím je hned entropie dostatek.
V systemd se o toto stará služba systemd-random-seed.service
. Ta data bere ze souboru /var/lib/systemd/random-seed
. A tady zjistíme, že když se do jaderného zásobníku entropie vkládají data, tak se o nich dá říct, jestli jim má jádro věřit (resp. kolik entropie obsahují, a dáte tam hodnotu od 0 po délku dat). Jádro pak podle toho (ne)zvýší odhad, jak moc entropie má k dispozici, a procesy vyžadující kvalitní entropii se odseknou, až když je tento odhad nějak vysoký. A ta systemd služba říká, že data ze souboru se započítat nemají.
Naštěstí v novém systemd se kouká na proměnnou prostředí SYSTEMD_RANDOM_SEED_CREDIT
, která nastavuje přesně toto. Můžete si to vyzkoušet:
# cat /proc/sys/kernel/random/entropy_avail 46 # /lib/systemd/systemd-random-seed load -- loadnutí seedu s defaultním nastavením # cat /proc/sys/kernel/random/entropy_avail 53 -- nic zásadního se nezměnilo # SYSTEMD_RANDOM_SEED_CREDIT=force /lib/systemd/systemd-random-seed load -- vynucení důvěry # cat /proc/sys/kernel/random/entropy_avail 2457 -- a už je entropie dost
Takže řešení je udělat systemctl edit systemd-random-seed.service
, napsat tam
[Service] Environment="SYSTEMD_RANDOM_SEED_CREDIT=force"
a hotovo. Mimochodem ten soubor se seedem se aktualizuje jen při korektním vypínání počítače, pokud vaše počítače běží a vypínají se jen nekorektně při výpadku napájení, možná by stálo za to dát /lib/systemd/systemd-random-seed save
do cronu.
Co ale udělat, pokud nemáte dostatečně nový systemd, nebo nemáte systemd vůbec? Například v Debianu Buster systemd ještě tuto volbu nepodporuje, je to až v buster-backports. Můžete to udělat ručně, to vkládání entropie se dělá jedním ioctl. Tady je skript v Pythonu, co to dělá. Používá se takto: cat uložený_náhodný_soubor | ./rndaddentropy.py
. Přidejte si to třeba do rc.local a vyřešeno.
Pro systemd hatery dodávám, že třeba init z historického Debianu Lenny vypadá, že entropii z uloženého seedu taky neoznačuje jako důvěryhodnou. Ale je možné, že tehdejší kernely to nerozlišovaly. Teprve nedávno se nějaké věci měnily.
Tiskni Sdílej:
Mohol by si dať detaily ako si to objednal ?
voproti rpi to má jakoby navíc bzučák taky :O ;D
pro cryptografii jakože teda asi i tamto sshd je v unixu preferovaný /dev/urandom hele :O :O
Fact: /dev/urandom is the preferred source of cryptographic randomness on UNIX-like systems.