Máirín Duffy a Brian Smith v článku pro Fedora Magazine ukazují použití LLM pro diagnostiku systému (Fedora Linuxu) přes Model Context Protocol od firmy Anthropic. I ukázkové výstupy v samotném článku obsahují AI vygenerované nesmysly, např. doporučení přeinstalovat balíček pomocí správce balíčků APT z Debianu místo DNF nativního na Fedoře.
Projekt D7VK dospěl do verze 1.0. Jedná se o fork DXVK implementující překlad volání Direct3D 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Byla vydána nová verze 2025.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) zveřejnil Národní politiku koordinovaného zveřejňování zranitelností (pdf), jejímž cílem je nejen zvyšování bezpečnosti produktů informačních a komunikačních technologií (ICT), ale také ochrana objevitelů zranitelností před negativními právními dopady. Součástí je rovněž vytvoření „koordinátora pro účely CVD“, jímž je podle nového zákona o kybernetické … více »
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.12. Přehled novinek i s náhledy a videi v oficiálním oznámení.
Společnost System76 vydala Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC. Videoukázky na YouTube.
Byla vydána verze 1.92.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.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2024. Oceněni byli Andy Wingo, jeden ze správců GNU Guile, Alx Sa za příspěvky do Gimpu a Govdirectory jako společensky prospěšný projekt.
Bylo vydáno Eclipse IDE 2025-12 aneb Eclipse 4.38. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
U příležitosti oslav osmi let prací na debianím balíčku vyšlo GPXSee 15.6. Nová verze přináší především podporu pro geotagované MP4 soubory, včetně GoPro videí. Kdo nechce čekat, až nová verze dorazí do jeho distribuce, nalezne zdrojové kódy na GitHubu.
ps, který slouží k výpisu (stavu) běžících procesů, a program kill sloužící k posílání signálů procesům.ps je příkaz sloužící k výpisu informací o právě běžících procesech v systému. Název vychází z anglického process status, což znamená stav procesu.
Spustíte-li ps jen tak (bez argumentů), vypíše pouze procesy, které mají stejný ovládací terminál jako daná instance ps a zároveň stejné efektivní UID.
$ ps PID TTY TIME CMD 6091 pts/5 00:00:06 bash 29766 pts/5 00:00:00 ps
S přepínačem -a vypíše všechny procesy, které mají řídící terminál. Přepínač -A potom vypíše procesy úplně všechny, zrovna tak jako jeho ekvivalent -e. Podrobnější seznam procesů (s více informacemi) program vypíše, předáte-li mu přepínač -f. Pokud je vám i tohle málo, zkuste přidat ještě -l.
# vypíše detailní seznam všech procesů ps -ef # ještě detailnější seznam… ps -elf
Chcete-li vypsat seznam procesů pro dané skupiny či uživatele, potom vám poslouží přepínače -G a -U.
# vypíše seznam procesů skupiny „home“ ps -G home # vypíše detailní seznam procesů uživatele „dave“ ps -flU dave
ps umožňuje sestavení vlastního formátu výpisu informací pomocí přepínače -o, tak to zkusme:
# vypíše seznam všech procesů a od každého procesu # UID, PID, využití RAM (RSS) a název příkazu (CMD) ps -Ao "uid pid rss cmd" # pokud se vám nelíbí hlavička, kterou ps na začátku # vypisuje, zadejte vlastní popisky ps -Ao "uid=Uživatel pid=Proces rss=RAM cmd=Příkaz" # pokud váš popisek obsahuje mezery, zadejte -o vícekrát ps -A -o "user=Uživatelské jméno" -o pid="Číslo procesu (PID)"
Kompletní seznam informací, které si můžete nechat vypsat, a jejich zkratky naleznete v manuálu. Můžete si nechat vypsat pouze zadaná UID:
ps -fl 1 2 F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD 4 S root 1 0 0 80 0 – 974 ? 03:35 ? 0:00 init [3] 1 S root 2 0 0 80 0 – 0 ? 03:35 ? 0:00 [kthreadd]
Doteď jsem popisoval verzi dle standardu, ovšem na GNU/Linuxu se obvykle setkáte s verzí z balíku procps a BSD systémy mají také vlastní implementaci. Tyto implementace obsahují ještě další vymoženosti. Například podporují několik „přepínačů“, které nezačínají znakem „-“.
# vypíše seznam všech procesů (s více informacemi než -ef, ale méně než -el) ps axu # zajistí, aby se vypsal kompletní název příkazu i s argumenty ps axuww # přepínač „f“ slouží s výpisu stromu procesů ps faxu
Příkaz ps se často používá v kombinaci s programem grep. Tato kombinace totiž umožňuje rychle zjistit, zda na systému běží určitý proces.
ps ax | grep lighttpd
Podobný příkaz na Windows je tasklist, případně v PowerShellu je přímo alias ps, který volá Get-Process.
kill je nástroj sloužící k poslání signálu daným PID. Název programu je anglické slovo, které znamená „zabít“ (proces). V tomto kontextu je to myšleno jako „nuceně ukončit“ proces, což dělá pouze jeden ze signálů, které kill může vyslat.
Signály jsou prostředek k jednoduché komunikaci mezi procesy na unixových systémech. Každému procesu lze poslat signál, přičemž máme-li dostatečné oprávnění, proces na něj zareaguje. Pomocí signálů lze proces ukončit, pozastavit, přerušit, atd. Ovšem signál může vyvolat i jinou akci – programátoři mají možnost signály ve svých programech obsluhovat nebo ignorovat. Například když programu přijde signál 15 (tj. TERM – ukončit), tak lze naprogramovat to, aby se nejdříve uložila načatá práce a teprve potom se program ukončil.
Jak jsem naznačil, signály mají přiřazená čísla i názvy. Signály jsme si kdysi pojmenovali nejen proto, abychom si nemuseli pamatovat čísla, ale také proto, že čísla se na různých systémech mohou lišit. Vyjmenujeme a popíšeme si několik používanějších signálů.
| Číslo | Název | Zjednodušený popis |
| 1 | HUP (Hangup) | Tento signál proces obdrží tehdy, když je uzavřen jeho řídící terminál. |
| 2 | INT (Interrupt) | Toto je signál, který proces obdrží, když běží v terminálu a uživatel stiskne Ctrl+C. Obvykle ukončí proces. |
| 3 | QUIT | Ukončí proces a zapíše stav paměti, se kterou program pracoval (tzv. core dump). |
| 4 | ILL (Illegal instruction) | Tento signál posílá operační systém, když proces vyvolá neznámou instrukci. |
| 8 | FPE (Floating point exception) | Tímto signálem jádro trestá programy, které se snaží dělit nulou, atp. |
| 9 | KILL (Kill) | „Zabije“ proces (okamžitě). Nelze obejít. |
| 10 | USR1 (User-defined) | Uživatelsky definovaný signál. |
| 11 | SEGV (Segmentation fault) | Obvykle posílá operační systém programům, které chybně pracují s pamětí. |
| 15 | TERM (Terminate) | Ukončí proces. |
| 19 | STOP | Zastaví proces. Nelze obejít. |
| 20 | TSTP (Terminal stop) | Zastaví proces, ale lze obejít. Tento signál proces obdrží, když běží interaktivně v shellu a uživatel stiskne Ctrl+Z. |
| 18 | CONT (Continue) | Obnoví běh procesu po obdržení některého ze dvou předchozích signálů. |
Názvy signálů vždy začínají řetězcem „SIG“ (jako signál), takže chceme-li ukončit proces signálem, tak říkáme, že mu posíláme SIGTERM.
Nyní k samotnému programu kill. Spustíme-li jej s přepínačem „-l“, vypíše všechny signály podporované danou implementací.
$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
Zadáme-li přepínači „-l“ jako argument celé nezáporné číslo, vrátí nám odpovídající název signálu. Zadáme-li jako argument název signálu (bez „SIG“), vrátí nám odpovídající číslo.
$ kill -l 1 HUP $ kill -l TRAP 5
Když programu předáme přepínač -s s číslem nebo názvem signálu a za něj přidáme jedno nebo více PID, kill pošle daným PID daný signál. Totéž se stane, když místo přepínače -s zadáme číslo nebo název signálu rovnou za pomlčku.
# pošle signál SIGHUP procesu s PID 1 (tj. init) kill -s HUP 1 # totéž kill -HUP 1 # totéž kill -1 1
Podobná, ale nestandardní utilita killall (z balíku psmisc) slouží k témuž účelu jako kill, ale místo PID jí předáváme název programu, kterému chceme poslat signál. Pozor, běží-li více instancí programu, signál se pošle všem, ke kterým máme příslušná oprávnění.
# zabije všechny instance programu "firefox" killall -s 9 firefox
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
.
Jen bych, pro nás pohodlné, dodal, že existuje také zajímavá utilita jménem htop (http://htop.sourceforge.net/), která tyto akce včetně spousty voleb, vyhledávání a podobně umožňuje velice příjemně a přehledně provádět v GUI vytvořeném obdobně jako u Midnight Commanderu, tedy GUI běžícím v terminálu a tudíž není třeba žádné rozšiřující grafické prostředí (KDE, Gnome, atd.). Osobně si ji vždy instaluji po nové instalaci Linuxu, protože je to velice pohodlné na ovládání a třeba v OpenSuse je myslím dokonce v základních repozitářích.
+1
ps -A | grep lighttpd
Já zas někdy používám
ps axu | grep proceskdyž chci vidět i jméno uživatele, s jehož právy proces běží.
pgrep?
Tímto signálem jádro trestá programy, které se snaží dělit nulou, atp.:)
pstree nebo ps fax.
pgrep -P X
ps) podívat a dát v ní vyhledat "PPID"? Nebylo by to jednodušší a rychlejší než psát dotaz?