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 01:00 | Komunita

    Debian dnes slaví 32 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

    Ladislav Hagara | Komentářů: 10
    15.8. 17:44 | IT novinky

    Policisté zadrželi odsouzeného drogového dealera Tomáše Jiřikovského, který daroval ministerstvu spravedlnosti za tehdejšího ministra Pavla Blažka (ODS) bitcoiny v miliardové hodnotě, a zajistili i darovanou kryproměnu. Zadržení Jiřikovského může být podle ministerstva důležité k rozuzlení kauzy, která vypukla koncem května a vedla ke konci Blažka. Zajištění daru podle úřadu potvrzuje závěry dříve publikovaných právních

    … více »
    Ladislav Hagara | Komentářů: 6
    15.8. 13:44 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa jedná o možném převzetí podílu ve výrobci čipů Intel. Agentuře Bloomberg to řekly zdroje obeznámené se situací. Akcie Intelu v reakci na tuto zprávu výrazně posílily. Trump minulý týden označil Tana za konfliktní osobu, a to kvůli jeho vazbám na čínské společnosti, čímž vyvolal nejistotu ohledně dlouholetého úsilí Intelu o obrat v hospodaření. Po pondělní schůzce však prezident o šéfovi Intelu hovořil příznivě.

    Ladislav Hagara | Komentářů: 3
    15.8. 05:44 | IT novinky

    Společnost Purism stojící za linuxovými telefony a počítači Librem má nově v nabídce postkvantový šifrátor Librem PQC Encryptor.

    Ladislav Hagara | Komentářů: 10
    14.8. 18:00 | Nová verze

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    14.8. 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 26
    14.8. 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 1
    14.8. 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    13.8. 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 5
    13.8. 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (19%)
     (4%)
     (5%)
     (2%)
     (1%)
     (1%)
     (17%)
    Celkem 403 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Spusteni skriptu po startu systemu

    8.6.2009 17:00 Ondrej Kudlak
    Spusteni skriptu po startu systemu
    Přečteno: 698×

    Dobry den, mam nasledujic skript, ktery je umisten v adresari ~/scripts/

    #!/bin/bash
    
    while true; do
        date >> output.txt
        echo "Writing date to file (`date`)"
        sleep 1
    done
    

    Chci, aby se tento skript spustil hned po spusteni, aby se spustil v mem domovskem adresari a aby jeho vystup byl presmerovan do souboru redir.txt

    Pouzivam distribuci Arch Linux a proto jsem do souboru /etc/rc.local zapsal toto:

    #!/bin/bash
    #
    # /etc/rc.local: Local multi-user startup script.
    #
    
    cd ~/
    ~/scripts/script.sh > redir.txt
    

    Nyni kdyz restaruji pc, jedine co se stane je, ze se vytvori soubor redir.txt v adresari / a navic je prazdny. Co jsem prosim udelal spatne, ze tento postup nefunguje, tak jak bych potreboval?

    Odpovědi

    Tarmaq avatar 8.6.2009 17:17 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    rekl bych ze chyba bude v tom, ze pouzivas ~/
    zkus do toho /etc/rc.local zapsat toto:
    /home/kudlak/scripts/script.sh > /home/kudlak/redir.txt
    
    Don't panic!
    Prcek avatar 8.6.2009 17:22 Prcek | skóre: 43 | Jindřichův Hradec / Brno
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    V tom chyba být nemůže, to je regulérní zápis adresáře. Spíš bych to viděl na to, že ten skript sice pořád chrlí řádek textu, ale přesměrování jeho standardního výstupu do souboru redir.txt je jednorázová záležitost. Ale nejsem expert na BASH, takže kdo ví, ať odpoví :-).
    Člověk je takový, jak vypadá... A já vypadám jako pravá, nefalšovaná děvka!!!
    Prcek avatar 8.6.2009 17:26 Prcek | skóre: 43 | Jindřichův Hradec / Brno
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    Aha, tak jsi měl asi přeci jen pravdu - ten zápis domovského adresáře se v tomhle případě bude spouštět pod rootem a v domovské složce roota /root zřejmě není ten skript přítomen. To ale bude muset potvrdit tazatel, jinak je to spekulace :-).
    Člověk je takový, jak vypadá... A já vypadám jako pravá, nefalšovaná děvka!!!
    Tarmaq avatar 8.6.2009 17:28 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    presne tak jsem to prave myslel ;]
    Don't panic!
    Fuky avatar 8.6.2009 21:42 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu

    Předně nepoužívej ~, ale absolutní cesty, navíc ber v potaz, že se init skripty vykonávají pod uživatelem root. A dále, že jsi dal do /etc/rc.local nikdy nekončící skript a zároveň čekáš na jeho dokončení tj. až se Ti ho povede spustit, tak zůstaneš při bootování viset, protože se bude čekat na jeho dokončení

    Jinak Tvůj problém lze vyřešit pomocí crontab v režii uživatele:

    $ crontab -e
    */1 * * * * /home/ondra/scripts/script.sh
    

    A skript.sh očesat na:

    date >> output.txt
    echo "Writing date to file (`date`)" > redir.txt
    

    Nyní se Ti hned po startu systému bude 1x za minutu volat Tvůj skript a není třeba, aby visel v nekonečné smyčce. ;-)

    Pokud chceš řešit jiný problém a tohle byl pouze Tvůj testík, tak nám rovnou nastiň co potřebuješ vyřešit, lépe se pak odpovídá...

    9.6.2009 00:24 Ondrej Kudlak
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu

    Dekuji za reakce, pomohlo tam dat vsude absolutni cesty. S tim zacyklenim pri bootu nemate pravdu, skript se rozbehne, zapisuje do souboru redir.txt i output.txt a system normalne nabehne. Jedine s cim mam jeste problem je soubor output.txt. Ten se totiz tvori v adresari / a tam ho nechci. Jde nejak urcit, kde se tento soubor vytvori aniz bych to musel upravovat primo ve skriptu (nechci do nej cpat absolutni cesty).

    Jinak co se tyce ucelu skriptu, je to toto samozrejme je maly testik, "pravy" skript je napsany v pythonu a v nekonecne smycce provadi urcite akce - scanuje adresy v lokalni siti a dela statistiky. Reseni pres cron nevidim jako prilis realne, jelikoz spoustet ho jednou za minutu je malo - za ten cas se uz mohlo provest x obratek cyklu a zde plati, ze cim vice, time lepe.

    9.6.2009 06:57 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    Asi jste měl na mysli redir.txt? No tak když tam nechcete cpát absolutní cesty, můžete napsat relativní. Interpretr je v tu chvíli ve working directory /, tak můžete napsat > ./home/user/blah/logy/foo.txt ;) Nebo to spusťte pod uživatelem přes sudo omg. Normální lidé jinak absolutní cesty píší, ale dávají se třeba do konfiguračního souboru, aby nebyl nutno zasahovat do zdrojáku.
    9.6.2009 07:44 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    Jo už jsem ten output.txt našel :) Tak ten by měl vznikat v ~/ když jste se do něj přepnul, nevím proč to tak není.
    9.6.2009 07:47 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu
    Patrně jste od té doby něco změnil, protože předtím se vám redir.txt vytvářel také v / kdežto teď už vám to prý snad funguje?? Předchozí chování by svědčilo o tom že ~ mohlo být nastavené i na /, raději si to pro kontrolu vypište pomocí echo ~ a pwd.
    Fuky avatar 9.6.2009 07:33 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Spusteni skriptu po startu systemu

    S tim zacyklenim pri bootu nemate pravdu, skript se rozbehne, zapisuje do souboru redir.txt i output.txt a system normalne nabehne.

    Tomu se mi nechce věřit, v tom případě by v Archlinuxu /etc/rc.local fungoval jinak než na Debianu. U mě se s ním pracuje takhle (viz /etc/init.d/rc.local):

    do_start() {
            if [ -x /etc/rc.local ]; then
                    [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)"
                    /etc/rc.local
                    ES=$?
                    [ "$VERBOSE" != no ] && log_end_msg $ES
                    return $ES
            fi
    }
    

    Tj. čeká se na jeho dokončení a vrací se návratová hodnota, takže pokud spustím nekonečnou smyčku na popředí, tak se bude čekat na její dokončení a boot/start služby nebude nikdy dokončen.

    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.