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 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

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

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 3
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

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

    npm balíčky @redhat-cloud-services byly kompromitovány.

    Ladislav Hagara | Komentářů: 5
    1.6. 22:22 | Bezpečnostní upozornění

    Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.

    Ladislav Hagara | Komentářů: 0
    1.6. 19:22 | IT novinky

    Nvidia na své konferenci NVIDIA GTC Taipei 2026 představila řadu novinek. Společně s Microsoftem představili superčip NVIDIA RTX Spark (až 6 144 jader GPU, 20 jader CPU, 1 petaflop AI výkonu v FP4 a 128 GB jednotné paměti). První notebooky a stolní počítače s tímto čipem od Nvidie místo Intelu nebo AMD by se měly na trh dostat na podzim letošního roku.

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


    Dotaz: Systemd spuštění více skriptů

    16.9.2024 09:08 sanoch | skóre: 7
    Systemd spuštění více skriptů
    Přečteno: 701×
    Zdravím dámy a pánové.

    Nedaří se mi spouštět více skriptů po startu systému. Zřejmě mám špatně zapsaný /etc/systemd/system/my-application.service. Prostě začínám a nerozumím dobře manuálu. Ještě je asi problém v tom, že jeden ze skriptů se musí spustit pod rootem.

    Můžete mi prosím poradit jak na to? Předem děkuji. Zdraví Richard

    Můj zápis:

    [Unit] Description=My Application Auto Start After=network.target

    [Service] ExecStart=/home/nas/skript 1 Restart=always User=nas Group=nas

    [Service] ExecStart=/home/nas/skript 2 (tento potřebuje sudo) Restart=always User=root Group=root

    [Install] WantedBy=multi-user.target

    Odpovědi

    16.9.2024 11:48 Vtipnéř | skóre: 39 | blog: Vtipnéřův blog | Brno
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Zdravím všechny.

    Vlastní service pro systemd jsem nikdy nevytvářel, ale to vícenásobné použití "ExecStart" mi přijde podezřelé. Zkuste se mrknout na tenhle dotaz. A má tam být ta mezera za "/home/nas/skript"? Takhle se totiž pouští stejný skript s různými parametry.

    Chybové hlášení by taky neškodilo.

    Jirka
    Opening Windows is better than washing them. Clearing Windows (e.g. erasing or deleting) is even much better.
    16.9.2024 12:34 sanoch | skóre: 7
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Děkuji za reakci.

    Ne ta mezera je nedůslednost, dejme tomu "/home/nas/./skript1.sh"

    Ten dotaz jsem našel, ale pořád nerozumím.

    Nepotřebuji stejný skript s různými parametry. Potřebuji spustit dva různé skripty po spuštění systému, ideálně čekat až se dokončí první (ten lze spustit jen jako root) a pak spustit druhý. Ten druhý mi samostatně funguje jak má, jen jak připíšu ten první tak se to blokne.

    my-application.service - My Application Auto Start Loaded: bad-setting (Reason: Unit my-application.service has a bad unit file setting.) Active: failed (Result: exit-code) since Mon 2024-09-16 12:26:27 CEST; 3min 41s ago Main PID: 2101 (code=exited, status=15) CPU: 34min 25.053s
    MakeIranBombedAgain❗ avatar 16.9.2024 12:45 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů

    pro vodlaďování mužeš zkusit zavolat přikaz systemd-analyze:

    systemd-analyze verify my-application.service

    noa z vypisu budeš asi víc moudřejší než z tohodlenc hlášení chybovýho :D ;D

    MakeIranBombedAgain❗ avatar 16.9.2024 12:29 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů

    to se mi ňák jakože nezdá že by v jedný unitě mohlo bejt víc [service] sekcí než jenom právě jedna :O :O

    víc skriptů mužeš v 'ExecStart' pustit unitou jenom když má nastavenej 'Type' pouze na 'oneshot' hele. Pokud si typ nespecifikoval (a to si nespecifikoval) tak defaultní typ je 'simple'. Nicmeně ani todlecto by asi jako tvuj problém neřešilo.

    Mohl by si využít 'execStartPre' nebo 'execStartPost' hele na spuštění před nebo po startu skriptu v 'ExecStart' pokud ti nevadí že voba skripty poběžej pod tim samým uživatelem. Pokud to va, nóó tak asi rozdělit do dvou unit a možná si jednu druhou vyžádat páč předpokládám že ten vobyčejnej skript je na tom rootovským zavislej :O ;D


    to rootovskou pomenujem třeba sanochova.service a napišem do ni

    [Unit]
    Description=Sanochuv skript s rootem
    After=network.target
    
    [Service]
    ExecStart=/home/nas/skript1
    Restart=always
    User=root
    Group=root
    
    [Install]
    WantedBy=multi-user.target 
    

    noa pak druhou nějakou službu, která už pod tim rootem nepoběží

    [Unit]
    Description=Sanochuv obycejnej skript
    After=network.target sanochova.service
    Requires=sanochova.service
    
    [Service]
    ExecStart=/home/nas/skript2
    Restart=always
    User=nas
    Group=nas
    
    [Install]
    WantedBy=multi-user.target 
    

    eště mě napadá možnost udělat tu service 'forking' a spustit jeden skript druhým ale to se prej v systemd nedoporučuje ikdyž to je prej uplně běžná linuxová praxe :D

    16.9.2024 13:09 sanoch | skóre: 7
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Ale kam to zapsat, pokud je zapíšu pod sebe do "/etc/systemd/system/my-application.service" tak to vyhodí

    × my-application.service - My Application Auto Start Loaded: bad-setting (Reason: Unit my-application.service has a bad unit file se> Active: failed (Result: exit-code) since Mon 2024-09-16 12:26:27 CEST; 3min 41s> Main PID: 2101 (code=exited, status=15) CPU: 34min 25.053s

    netuším jak se dostat k textu za odrážkou.

    Nemá to být náhodou v samostatných adresářích?

    např: "/etc/systemd/system/my-application.service1" "/etc/systemd/system/my-application.service2"
    MakeIranBombedAgain❗ avatar 16.9.2024 14:10 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů

    žádný složšky, normálně jenom jako *.service soubory ve '/etc/systemd/system'.

    dej sem vystup tamtoho 'systemd-analyze verify', to by mělo víc podrobnějc vypsat jakou máš v tý unitě chybu :O :O

    netuším jak se dostat k textu za odrážkou.

    tim 'textem za odrážkou' myslíš co :O :O

    16.9.2024 14:14 sanoch | skóre: 7
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    odrážka "> "

    systemd-analyze verify nevyplivne nic

    Asi by nevadilo spouštět to vše pod rootem.

    Pokud to bude jednodušší.

    MakeIranBombedAgain❗ avatar 16.9.2024 14:53 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    systemd-analyze verify nevyplivne nic

    příde mi dost nepravděpodobný by to současně nadávalo na 'bad unit file' a současně systemd-analyze nic nevyplivlo :O :O zkontroluj pro jistotu jestli tim necháváš analyzovat správnej soubor :O :O

    16.9.2024 20:29 tttttttttttt
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Když výstup nebude na terminál, odrážka se nepoužije.
    sudo systemctl status my-service.service | cat
    Jde to i jinak (argumentem), tohle si líp pamatuju.
    16.9.2024 14:54 sanoch | skóre: 7
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    sudo systemd-analyze verify my-application.service
    MakeIranBombedAgain❗ avatar 16.9.2024 15:49 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů

    zkus tu službu zastavit, udělat daemon-reload jestli si to už neudělal a znova zkusit spustit :O :O

    ....nejspíš to bere ten starej soubor *.service kterej ale už nevodpovídá současnýmu, dycky když se poeditujou už existujicí *.service soubory tak se pak musej znova načíst :O :O

    sudo systemctl stop my-application.service
    sudo systemctl daemon-reload
    sudo systemctl start my-application.service
    
    16.9.2024 17:21 sanoch | skóre: 7
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    To jsem samozřejmě udělal, ale verify mlčí a pořád to hlásí výše uvedenou chybu.

    Nemá se to zapsat náhodou do:

    /etc/systemd/system/skript1.service

    a druhý

    /etc/systemd/system/skript2.service

    Takto jsem to pochopil z tvé poslední odpovědi.

    Jinak moc díky za trpělivost s neználkem. Cesta k vědění je po padesátce již trnitá. Zbytky mozku již nejsou tak rychlé.

    Budu moc vděčný, když mi pomůžeš toto vyřešit.

    Richard

    MakeIranBombedAgain❗ avatar 19.9.2024 00:25 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Nemá se to zapsat náhodou do: /etc/systemd/system/skript1.service a druhý /etc/systemd/system/skript2.service

    název toho *.service souboru se nemusí shodovat s názvem spouštěnýho skriptu, ten název si mužeš zvolit jakejkoliv

    jinak mi asi jako rozumíš správně, v tý minulý odpovědi (hele) jsem to tak myslela - rozdělit do dvouch různejch *.service souborů :D ;D

    16.9.2024 20:00 tttttttttttt
    Rozbalit Rozbalit vše Re: Systemd spuštění více skriptů
    Viz ExecStart= v dokumentaci.

    Unless Type= is oneshot, exactly one command must be given. When Type=oneshot is used, zero or more commands may be specified.

    A pak koukni na sekci Command lines.

    Myslím, že chceš tohle:
    [Unit] 
    Description=My Application Auto Start 
    After=network-online.target 
    
    [Service] 
    Type=oneshot
    ExecStart=/home/nas/skript 1
    ExecStartPost=!/home/nas/skript 2
    Restart=always
    User=nas
    Group=nas 
    
    [Install]
    WantedBy=multi-user.target 
    
    Type nastav podle toho, jestli je to služba nebo jednorázový skript.

    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.