abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 4
    včera 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 4
    včera 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    21.5. 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    21.5. 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1685 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: systemd: jak restartovat service z podřízeného procesu

    15.5.2014 23:44 JanM | skóre: 28
    systemd: jak restartovat service z podřízeného procesu
    Přečteno: 329×
    dobrý večer,

    scanbd.service spouští /usr/sbin/scanbd démona, který čeká na stlačení gombíku na skeneru a pak spustí nějaký skript.

    Bohužel démon není ještě moc odladěn a stane se, že další stlačení gombíku už ignoruje (vůbec si ho nevšimne). Pomůže, když scanbd.service restartuji.

    To se však běžnému uživateli těžko vysvětluje, takže dočasným řešením by mohlo být restartovat scanbd.service po každém stlačení gombíku v rámci spouštěného skriptu.

    Potíž je ovšem s tím, že restart service unit zabije i všechny podřízené procesy v rámci téže cgroups (tuším). V mém případě čeká na timeout, protože skript nedoběhl.

    Potřeboval bych tedy ukončit /usr/sbin/scanbd démona, ale ponechat běžet skript do jeho konce.

    K tomuto účelu by mělo sloužit KillMode=process, jenže bez valného efektu:

    Před stlačením gombíku:
    # systemd-cgls /system.slice/scanbd.service
    /system.slice/scanbd.service:
    └─3014 /usr/sbin/scanbd -f
    Po stlačení gombíku:
    # systemd-cgls /system.slice/scanbd.service
    /system.slice/scanbd.service:                                                                                                                                                                                               
    ├─3014 /usr/sbin/scanbd -f                                                                                                                                                                                                  
    ├─6651 /bin/bash /etc/scanbd/mk_cs9000f.sh                                                                                                                                                                                  
    └─6689 sleep 60
    A když teď ve vedlejším terminálu (tedy ani ne v rámci podřízeného skriptu) zkusím
    systemctl restart scanbd.service
    , tak to počká na doběhnutí skriptu (sleep 60) a teprve pak restartuje /usr/sbin/scanbd.

    Poradí někdo, jak to udělat správným způsobem v rámci systemd?

    Alternativně by asi šlo by napsat wrapper, spustit jej ze skriptu a zbavit rodičovského procesu, a po skončení rodičovského procesu (bash -c) restartovat service unit? Avšak jak na to?

    Řešení dotazu:


    Odpovědi

    16.5.2014 11:18 marek
    Rozbalit Rozbalit vše Re: systemd: jak restartovat service z podřízeného procesu

    Alternativni, hnusne reseni je pomoci at.

    Marek
    16.5.2014 11:21 JanM | skóre: 28
    Rozbalit Rozbalit vše Re: systemd: jak restartovat service z podřízeného procesu
    Zatím to řeším
    "kill -9 $scanbd_pid && systemctl restart scanbd.service"
    , což kupodivu funguje i v rámci skriptu mk_cs9000f.sh, který to přežije a dokončí, co má dělat.

    Jen budu muset nějak kontrolovat, aby se při nějaké chybce ve skriptu nehromadily nedokončené procesy.
    16.5.2014 18:17 Sten
    Rozbalit Rozbalit vše Re: systemd: jak restartovat service z podřízeného procesu
    kill -9 nedoporučuju dávat do něčeho, co má být běžně používané, protože to může rozbít všechna možná data, která ten proces zrovna používal.
    16.5.2014 18:20 Sten
    Rozbalit Rozbalit vše Re: systemd: jak restartovat service z podřízeného procesu
    nohup systemctl restart scanbd.service &

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.