Bogdan Ionescu rozběhl webový server na jednorázové elektronické cigaretě.
Byla vydána beta verze Ubuntu 25.10 s kódovým názvem Questing Quokka. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 25.10 mělo vyjít 9. října 2025.
Bola vydaná nová verzia 4.13 security platformy Wazuh. Prináša nový IT hygiene dashboard, hot reload dekodérov a pravidiel. Podrobnosti v poznámkách k vydaniu.
Americký výrobce čipů Nvidia investuje pět miliard dolarů (přes 100 miliard Kč) do konkurenta Intel, který se v poslední době potýká s vážnými problémy. Firmy to včera oznámily ve společné tiskové zprávě. Dohoda o investici zahrnuje spolupráci při vývoji čipů pro osobní počítače a datová centra. Akcie společnosti Intel na zprávu reagovaly výrazným růstem.
Dlouholetý balíčkář KDE Jonathan Riddell končí. Jeho práci na KDE neon financovala firma Blue Systems, která ale končí (Clemens Tönnies, Jr., dědic jatek Tönnies Holding, ji už nebude sponzorovat), někteří vývojáři KDE se přesunuli k nově založené firmě Techpaladin. Pro Riddella se již nenašlo místo. Následovala debata o organizaci těchto firem, které zahraniční vývojáře nezaměstnávají, nýbrž najímají jako kontraktory (s příslušnými důsledky z pohledu pracovního práva).
V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.
The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.
Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána verze 1.90.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.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Jaký je rozdíl mezi SIGTERM a SIGKILL (Wikipedie) a proč nepoužívat SIGKILL? Odpověď v nejnovějším komiksu turnoff.us.
Tiskni
Sdílej:
kill -PLEASERIP 1234
kill
, pak přes ps
a grep
kontrolovat, jak to dopadlo, a pak ve velké části případů stejně pouštět kill -9
. Něco jiného by bylo, kdyby to celé uměl kill
udělat sám.
Proč by to kontrolovali přes ps
a grep
? Stačí ten kill
pouštět opakovaně a on ti řekne, že proces už neexistuje (šance, že by se mezi tím stejné ID přidělilo jinému procesu, je dostatečně malá, že s tím dokážu žít). A až tě to přestane bavit, tak akorát dopíšeš -9
.
killall jméno
a na jiný PID neuteče.
Spíš se bude spouštět znova a znova – akorát nebudeš muset opisovat čísla, ale výsledek je stejný. Procesy většinou spouští nějaký správce, který se jmenuje jinak a killall
ho tudíž neukončí.
kill -9
jedinou situací, kdy po sobě program nezvládne uklidit.
SIGKILL
nebo jiné situaci, kdy aplikace nedostane čas se ukončit, větší problém než po SIGTERM
chyba, a použití SIGKILL
tu chybu jenom projeví.
Jasně, ty pracovní procesy by tu sdílenou paměť mohly uklidit, když jim zmizí rodič, ale neřekl bych, že jim to přísluší.Nepřísluší. Úklid po ukončených procesech zpravidla přísluší operačnímu systému, zvlášt pokud se jedná o omezené prostředky a zvlášť pokud je po sobě proces neumí uklidit při novém spuštění. Ale chápu, že svět není ideální, jen se snažím hledat chyby, tam kde se skutečně nacházejí.
Úklid po ukončených procesech zpravidla přísluší operačnímu systémuJo, to by určitě bylo hezké, ale podle všeho tohle rozhraní takhle navržené nebylo
Mno ono to, že se ta věc není schopná ani korektně vypnout (jseš v podstatě omezen na experimentování s hodnotami toho timeoutu tak, aby to "většinou" proběhlo správně, jinak to stejně odstřelí systemd natvrdo) taky není nic moc.To už je ovšem trochu jiné téma.
Prosímtě, korektně vypnout znamená to, že se to korektně vypne.Což taky udělá, když se tomu dá čas. Když si zadáte "dokonči stávající požadavky a pak se vypni", tak se nemůžete divit, když se Apache před vypnutím pokusí dokončit stávající požadavky. Dostáváte přesně to, o co jste si řekl. Jasně, dokončit požadavky může trvat dlouho, zejména když máte klienty na mobilním internetu, kterým vypadlo připojení. Jestli vám to vadí, neměl jste si o to říkat.
A co ty semafory a sajrajt v paměti, co po tom zbydou?Nic - pokud Apache po tom timeoutu ukončíte normálně pomocí SIGTERM, přestane čekat na dokončení všeho a ukončí se během několika vteřin. Platí pro aktuální verze v Debianu Wheezy i Jessie. Jasně, jestli systemd neumí nic jiného, než (1) udělej ExecStop, (2) pošli KillSignal a (3) po timeoutu pošli SIGKILL, tak je to dost na prd. Ale za to už Apache nemůže, protože metoda pro korektní vypnutí (graceful-stop, chvíli počkat, stop, po pár vteřinách je čistě vypnuto) existuje.
Tobě fakt přijde normální, že ta věc 20+ let má bug způsobující, že se v případě nějakého netriviálního vytížení není schopná ukončit ani po třeba 10 minutách a nikoho z vývojárů to nezajímá a nikdo to neřeší?Viz výše. Pokud si řeknete o pomalé ukončení a ukončuje se to pomalu, není to bug.
Jasně, jestli systemd neumí nic jiného, než (1) udělej ExecStop, (2) pošli KillSignal a (3) po timeoutu pošli SIGKILL, tak je to dost na prd.Ve skutečnosti se podle dokumentace timeout aplikuje dvakrát. Jednou před KillSignal a jednou před SIGKILL. Jediné, co dělá ten trik se SIGCONT je, že se na (nastavitelný) timeout čeká dvakrát a nepošle se SIGTERM, tudíž se nedá službě šance na čisté okamžité ukončení. Další věc je, že člověk může v systemd pro ukončení spustit libovolnou sérii příkazů a kterýkoli z těch příkazů může být skriptem, tudíž v tomto případě systemd nepřináší žádné nové omezení.
člověk může v systemd pro ukončení spustit libovolnou sérii příkazů a kterýkoli z těch příkazů může být skriptem, tudíž v tomto případě systemd nepřináší žádné nové omezení.No, hlavně nepřináší žádné zlepšení. Dobastlené skripty tak, aby to "většinou vyšlo", až máme z dob normálního initu.
On ten odkazovaný service soubor je taky přes 2 roky starý, takže možná jenom nereflektuje to, co systemd tenkrát neuměl a dneska umí?Může to tak být. Nebo mohl být i před těmi dvěma lety kopírovaný od jinud nebo tvořený na základě starých znalostí. Jinak souhlasím s tím, že jediné řešení je skutečně Apache nechat udělat graceful-stop a namísto překvapení mu na to vymezit čas a následně udělat stop. Ale to už nezávisí na systemd versus initscripts.
Což taky udělá, když se tomu dá čas. Když si zadáte "dokonči stávající požadavky a pak se vypni", tak se nemůžete divit, když se Apache před vypnutím pokusí dokončit stávající požadavky. Dostáváte přesně to, o co jste si řekl. Jasně, dokončit požadavky může trvat dlouho, zejména když máte klienty na mobilním internetu, kterým vypadlo připojení. Jestli vám to vadí, neměl jste si o to říkat.
Ani to nemusí být mobilní klienti. Ten požadavek může být třeba stahování několikagygabajtového souboru a může trvat hodiny.
Je správné mít několik úrovní ukončování:
a) splň požadavky klientů a korektně se ukonči
b) kašli na klienty a korektně se ukonči
c) ukonči se teď hned (na to stačí kill -9
)
apachectl restart
" se u vytížených serverů občas (ne moc často) stalo, že server neběžel. IIRC byl problém v tom, že "stop" se za určitých okolností tvářil, že úspěšně proběhl, přestože některý proces ještě chvíli žil, takže "start" pak selhal.
IIRC byl problém v tom, že "stop" se za určitých okolností tvářil, že úspěšně proběhl, přestože některý proces ještě chvíli žil, takže "start" pak selhal.Nevím, jak kdysi, ale pro aktuální apachectl v Debianu restart neznamená stop a start. Ale jestli to tak dřív bylo, tak si dovedu představit, že k něčemu takovému mohlo dojít. To mě netrápí - když chci Apache restartovat, tak mu pošlu SIGTERM a až to jde, runit už si ho nastartuje.