abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 0
    dnes 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    včera 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 2
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (7%)
     (14%)
     (16%)
    Celkem 139 hlasů
     Komentářů: 10, poslední dnes 17:35
    Rozcestník

    Dotaz: Debian 10 (systemd): provedení skriptu při vypínání

    3.10.2019 00:08 GeBu | skóre: 27 | blog: zápisky
    Debian 10 (systemd): provedení skriptu při vypínání
    Přečteno: 732×
    Ahojte, sice ve fóru podobné dotazy jsou, ale ještě v době před systemd. Poradíte někdo, jaká se nyní v Debianu tj. Debian 10, zařídí, aby skript pozdržel vypnutí (pomocí tlačítka) dokud něco neprovede?

    Při normálním spuštění mi skrip funguje: * Napřed killne nahrávání mp3. * Pak nahraný soubor uploaduje na web.

    Skript jsem uložil do cesty "/lib/systemd/system-shutdown/" podle systemd-halt.service, ale to mi nejede.

    Pro jistotu opakuji, že se jedná o vypnutí pomocí tlačítka počítače - konkrétně je to NUC.

    Chtěl bych, aby zařízení zapnutím začalo automaticky nahrávat (to funguje) a při stisku tlačítka nahrávání ukončilo, soubor nahrálo na web a vypnulo se.

    Odpovědi

    3.10.2019 00:26 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Daj ten .conf ktory riesi vypinanie pre SystemD.

    Uz sa mi stalo, ze tusim databaza, ze as vypne najneskor v 1.5 minute, potom v 4. minute a potom som nechcel cakat, tak som to natvrdo vypol.
    3.10.2019 09:13 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Já to potřebuji obráceně. Prostě se to vypne a soubor mi to nenahraje. Máš na mysli toto: https://manpages.debian.org/testing/systemd/systemd-system.conf.5.en.html ?
    3.10.2019 15:23 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Myslel som Tvoje .service (pisal som to vtedy v mobile).
    3.10.2019 17:15 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Snad si rozumíme. Níže je výpis /lib/systemd/system/systemd-halt.service ale do něho jsem nehrabal. Nenastavoval jsem nic, protože v jeho manpages je uvedeno:

    Immediately before executing the actual system halt/poweroff/reboot/kexec systemd-shutdown will run all executables in /lib/systemd/system-shutdown/ and pass one arguments to them: either "halt", "poweroff", "reboot" or "kexec", depending on the chosen action. All executables in this directory are executed in parallel, and execution of the action is not continued before all executables finished. Takže svůj skript jsem uložil do /lib/systemd/system-shutdown/

    Výpis /lib/systemd/system/systemd-halt.service:

    # SPDX-License-Identifier: LGPL-2.1+ # # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version.

    [Unit] Description=Halt Documentation=man:systemd-halt.service(8) DefaultDependencies=no Requires=shutdown.target umount.target final.target After=shutdown.target umount.target final.target

    [Service] Type=oneshot ExecStart=/bin/systemctl --force halt
    3.10.2019 18:54 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Ako spustas sluzbu?

    Sak u sprav ako deamon. Spusti sa a pri ukonceni - tj. dostani signalu napr. SIGUSR2, zastavi, uploadne na internet a sa vypne.

    Nerob zvlast spustanie a zvlast vypnutie. Urob ze sa zaplne a bezi do vypnutia. Ak sa bude vypinat - ukonci, uploadne a sam seba proces ukonci.

    Vypinanie nechaj vypinanim, don nepotrebujes sahat.
    k3dAR avatar 3.10.2019 19:10 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    predpokladal ze chtel vypis "Takže svůj skript jsem uložil do /lib/systemd/system-shutdown/"

    me jen napada, kdyz ctu "will run all executables in /lib/systemd/system-shutdown/"
    zda si tomu "tvemu skriptu" nastavil executable atribut:
    sudo chmod a+x /lib/systemd/system-shutdown/tvujskript
    porad nemam telo, ale uz mam hlavu... nobody
    3.10.2019 19:23 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Nenastavi to nahodou? Resp. ci sa na to nespolieha. Resp. vyhodi chybu.

    systemct enable XXXXX.service
    k3dAR avatar 3.10.2019 19:50 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    ona to ale neni service, ale je to skript kterej paralelne vola systemd service s toho adresare ale (dle infa vejs ci man) resi prave a pouze ty co tam jsou zpustitelne...
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 3.10.2019 19:53 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    edit: kterej je paralelne volan z systemd servise z toho adresare...
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 3.10.2019 20:15 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    zkusil sem a ne, systemd-halt.service nenastavi atribut executable skriptum v /lib/systemd/system-shutdown/
    kdyz nenastavim ja, tak to ignrouje, kdyz ho nastavim ja tak se pusti, ale (a v tom bude asi tazatel mit zakladni problem), neni to vhodne pro jeho potreby, protoze to opravdu (jak se i pise v man) "Immediately before executing the actual system halt/poweroff/reboot/kexec", tzn. v tu chvili uz jsou killnute procesy (coz by mu nevadilo ze uz je nahravani mp3 killnute), je schozena sit a jsou odpojene vsechny filesystemy...
    porad nemam telo, ale uz mam hlavu... nobody
    3.10.2019 21:21 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Díky. Killnuté procesy mi nevadí - naopak to nahrávání potřebuji killnout a první příkaz je právě killnutí toho nahrávání. Ale to, že nejede síť je problém, protože druhý příkaz má nahraný soubor MP3 pomocí sftp nahrát na úložiště.
    3.10.2019 21:52 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Na začátek skriptu jsem přidal cat /proc/cpuinfo >> ahoj.txt a neprovede se ani toto. Při ručním spuštění ano.
    k3dAR avatar 3.10.2019 22:07 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    pri rucnim spusteni se to ulozi do aktualniho adreasare kde ses, pri spusteni pres sluzbu by se to (v pripade ze se to opravdu spusti) ulozilo nekam-nevim-kam-kde-systemd-je :-) zkontroloval si ze to ma atribut eXecutable (x?
    ls -l /lib/systemd/system-shutdown/tvujscript
    melo by pred souborem sobrazit "-rwxr-xr-x" (dulezite jsou ty x) pokud ne, pridej jak sem psal, pokud jo, zkus do skriptu pridat radek "sleep 30" a uvidis zda se pri vypnuti 30s zastavi a bude cekat...
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 3.10.2019 22:10 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    a pro jistotu, jak kopirujes pres sftp ten soubor? pokud jinak, nez nasledujici, zkus tak:
    scp /cesta/soubor.mp3 uzivatel@server:/cesta/
    samozrejme musis mit na NUC ssh privatni klic v /root/.ssh/id_rsa a na serveru z paru verejnej klic pridanej jako radek v /home/uzivatel/.ssh/authorized_keys
    porad nemam telo, ale uz mam hlavu... nobody
    3.10.2019 23:12 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Klíče tam mám a scp mi server nebere. Chce jen sftp. Ale ve skriptu mi to funguje.
    3.10.2019 23:08 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Práva v pořádku.
    k3dAR avatar 3.10.2019 22:02 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    tak beru zpet, sit dostupna je(pretim sem to spatne bral z ukonceneho ssh spojeni), filesystem pripojen je(pretim sem vychazel z hlassek na obrazovce ze odpojen all filesystem), tzn. zkopirovat soubor z /cesta/soubor pres sftp (resp. overil sem pres scp) jit "musi"...
    porad nemam telo, ale uz mam hlavu... nobody
    3.10.2019 19:34 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Pod rootem jsem ten skript zkoušel spouštět přímo v tom umístění /lib/systemd/system-shutdown/, abych zjistil, jestli dělá co má. A funguje mi.
    k3dAR avatar 3.10.2019 19:49 k3dAR | skóre: 62
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    pokud pod rootem pustis: "sh skript" nebo "bash skript" tak nemusi mit executable priznak a presto se pusti...
    porad nemam telo, ale uz mam hlavu... nobody
    3.10.2019 23:29 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Vydal jsem se novým směrem - přes jednotku. V cestě /etc/systemd/system/nahoru.service jsem vytvořil jednotku:

    [Unit]

    Description=Nahoru

    DefaultDependencies=no

    Before=shutdown.target halt.target

    RequiresMountsFor=/home

    [Service]

    Type=oneshot

    ExecStart=/root/nahoru.sh

    [Install]

    WantedBy=halt.target shutdown.target

    A tu uvedl do chodu:

    systemctl daemon-reload

    systemctl enable nahoru.service

    Při stisku tlačítka se skript provede samotný skript mám správně, ale PC se nevypne. Síť ale spadne a už se na něho nedostanu.

    Ve výpise "systemctl | grep nahoru" je uvedeno: ● nahoru.service loaded failed failed Nahoru
    4.10.2019 00:03 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Chyba byla v tom Type=oneshot. Bylo tam potřeba dát Type=simple.
    4.10.2019 12:32 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Tak jsem se uprostřed noci unáhlil. Sice už se ten skript zřejmě spouští, ale vypínání na něho nepočká a tak se nahraje jen 300 kB a v noci jsem to zkoušel jen na krátké nahrávce.
    4.10.2019 13:50 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Tady řešil někdo podobný problém jako ty. A doporučili mu podívat se do dokumentace systemd na parametry ExecStop= a ExecStopPost=
    4.10.2019 21:19 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    V tuto chvílí to vzdávám. Připojím se na ten stroj vzdáleně a skript spustím a pak PC vypnu. Už jsem tomu věnoval moc času a pořád jsem se nedostal moc daleko. Zatím mám pocit, že ty návody jdou různými cestami a nejsem z toho schopen udělat závěr pro sebe.
    4.10.2019 13:57 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Co tak este pridat zavislost na internete?
    4.10.2019 23:22 LarryL | skóre: 27
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Řešil jsem něco podobného a zjistil jsem, že dávat "vypínací" script do /lib/systemd/system-shutdown/ je blbé, protože ten script je "mrzáček", který toho nemá moc k dispozici, protože systemd před tím vše killne. Nejspolehlivější je vytvořit službu systemD a do ní uvést závislosti. Pro mě nebylo praktické dělat z toho službu (potřeboval jsem to jako normální script), ale zjistil jsem, že existuje příkaz pro jednorázové spuštění služby pomocí:

    systemd-run

    Ať už to uděláš přes systemd-run nebo klasickou službou, tak prozkoumej tyto možnosti, co z toho se pro tvůj script bude hodit: After=network.target

    Type=forking

    Type=simple

    ExecStop=

    TimeoutStopSec=

    KillMode=none
    5.10.2019 08:42 LarryL | skóre: 27
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Ještě jsem zapomněl na důležitý parametr --user při vytváření služby, který zajistí vytvoření dočasné služby běžným uživatelem. Použití:

    systemd-run --user command args

    systemctl --user enable service
    5.10.2019 04:51 noob
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Zanedlouho se to bude dat resit i jinak/lepe. https://blogs.gnome.org/benzea/2019/10/01/gnome-3-34-is-now-managed-using-systemd/
    5.10.2019 08:29 LarryL | skóre: 27
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Nějak se nechytám. Který příkaz z toho článku bude přinášet zásadní změnu "vypínacích" scriptů pro uživatele Gnome? Co když někdo nepoužívá Gnome?
    5.10.2019 10:36 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    Vsimol som si, ze ked stlacis tlacidlo vypnut vo XFCE, tak ti nevypne pc, ale da ti menu s ponukami na vypnutie, uspanie, odhlasenie.

    Skus ist tou cestou, ze odchytit to stisknutie.

    Tu mas, ako na tej najnizsej urovne funguje v linuxe zachytenie stlaceneho tlacidla (low user-space): http://linuxos.sk/clanok/ako-na-konfiguraciu-hernych-ovladacov-2/
    Josef Kufner avatar 5.10.2019 12:52 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání
    To se řeší pomocí inhibitor locku, kterým se Systemd zabrání vypnutí. Je to úplně jiný problém, než tazatel řeší. Unit soubor se správnými závislostmi, jak se řeší výše, je správný přístup, jen tam má něco špatně.
    Hello world ! Segmentation fault (core dumped)
    5.10.2019 13:19 debian+
    Rozbalit Rozbalit vše Re: Debian 10 (systemd): provedení skriptu při vypínání

    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.