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 20:55 | Nová verze

    Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 15:55 | Pozvánky

    Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 1
    včera 15:44 | IT novinky Ladislav Hagara | Komentářů: 2
    včera 13:55 | Komunita

    Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.

    Ladislav Hagara | Komentářů: 9
    28.4. 23:33 | Nová verze

    Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    28.4. 17:22 | Zajímavý projekt

    TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.

    Ladislav Hagara | Komentářů: 0
    28.4. 17:00 | Nová verze

    Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.

    Ladislav Hagara | Komentářů: 5
    27.4. 21:33 | Nová verze Ladislav Hagara | Komentářů: 0
    26.4. 23:00 | Komunita

    V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (9%)
     (21%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 485 hlasů
     Komentářů: 18, poslední 17.4. 12:41
    Rozcestník

    Cron @reboot

    29.3.2006 15:39 | Přečteno: 2791× | Tak todleto musí pobavit všechny Linuxáky

    Kdysi dávno (před více než pěti lety) jsem hledal způsob, jak spustit nějaký příkaz po restartu systému jako běžný uživatel - ne root. Nic čistého jsem nenašel a tak jsem dal do cronu "každých 10 minut kontroluj, jestli běží proces a kdyžtak ho nahoď". Pak jsem se stal rootem a naučil se psát rc scripty, ale teď se dívám do manuálu od cronu a co nevidím:

    [...]
           Instead of the first five fields,  one  of  eight  special
           strings may appear:
    
                  string         meaning
                  ------         -------
                  @reboot        Run once, at startup.
    [...]
    

    To řeší hned dva problémy. Jednak uživatel nepotřebuje být rootem, aby se dostal k této "službě" a druhak to řeší můj problém s Debianem. Ten totož neobsahuje (aspoň co já vím) žádný evivalent něčeho jako je /etc/rc.local, kam ve své Fedoře dávám všechno, co mi nestojí za psaní rc scriptu.

    Teď jenom doufám, že jsem neobjevil kolo. :-)

           

    Hodnocení: 67 %

            špatnédobré        

    Anketa

    Věděli jste, že cron umí @reboot?
     (27 %)
     (64 %)
     (9 %)
    Celkem 90 hlasů

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

    Komentáře

    Vložit další komentář

    29.3.2006 16:25 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Cron @reboot
    Nikdy jsem to moc nepotřeboval, rc.local byl můj kamarád. Ale jednou jsem narazil na to, že bylo potřeba něco (fetchmail) pustit pod jinym uživatelem. Zeptal jsem se kamaráda, jaká je nejjednodušší metoda (a čekal jsem desetiřádkový zvěrstvo v bashi) a odpovědí mi bylo man cron. Od tý doby to spokojeně používám.
    Fill avatar 29.3.2006 17:09 Fill | skóre: 19 | blog: Fill | Třebíč
    Rozbalit Rozbalit vše Re: Cron @reboot
    Dík za tip !

    Hned mě napadá 10 způsobů jak to využít...
    29.3.2006 17:31 ---- | skóre: 23 | blog: -
    Rozbalit Rozbalit vše Re: Cron @reboot
    29.3.2006 20:11 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Cron @reboot
    Opraveno url ...
    When your hammer is C++, everything begins to look like a thumb.
    29.3.2006 23:24 xxxxxxxx | skóre: 16 | blog: mrtvy blog | v nebi
    Rozbalit Rozbalit vše Re: Cron @reboot
    nějak jsem to nepochopil. ten parametr @reboot znamena, ze to spusti po spusteni programu/systemu ktery se zrestartoval? k cemu by to bylo dobry? asi sem to fakt nepochopil :-(
    xvasek avatar 30.3.2006 08:25 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Cron @reboot
    Když jsi třeba non-root, máš perfektní HTTP server v Perlu a potřebuješ ho nahodit po spuštění systému (na nějakém vysokém portu, samozřejmě) a nemáš přístup na roota daného stroje.

    Taky se tím dají provést všechny ty jednoduché nastavení, na které bys v Debianu psal rc skript - třeba stty pro modem, korekce nastavení hlasitosti na zvukovce, vypnutí zvuku u TV karty, který se mi při bootu občas z nějakého důvodu zapne, nastavení DSCP u odchozích paketů pro D-Link ADSL modemy...

    No pokud to nepotřebuješ (což se může klidně stát :), tak ti to nenutím. :-)
    30.3.2006 10:53 xxxxxxxx | skóre: 16 | blog: mrtvy blog | v nebi
    Rozbalit Rozbalit vše Re: Cron @reboot
    30.3.2006 08:33 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Cron @reboot
    Asi by bylo přesnější neprezentovat to jako standardní vlastnost cronu, ale jako rozšíření jedné jeho konkrétní implementace…

    Navíc se dokumentace nezmiňuje, jak crond pozná, že byl opravdu spuštěn v rámci inicializačních skriptů po startu systému a ne ručně později. To mi připadá dost důležité.

    30.3.2006 13:44 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Cron @reboot
    Navíc se dokumentace nezmiňuje, jak crond pozná, že byl opravdu spuštěn v rámci inicializačních skriptů po startu systému a ne ručně později. To mi připadá dost důležité.
    Na implementaciu som sa nepozeral, ale nepise si to crond niekde do /var/... ?
    Proste vykona danu akciu, pokial doteraz (v ramci beziaceho systemu) vykonana nebola
    Project Satan infects Calculon with Werecar virus
    xvasek avatar 30.3.2006 14:29 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Cron @reboot
    Jestli je to rozšíření nevím a nechce se mi to hledat, automaticky to asi používat nebudu. Co se týká detekce startu, tak jsem zkoušel RTFS. :-) Vždy při spuštění cronu se spustí fce run_reboot_jobs(db), a v té stojí:
    run_reboot_jobs(db)
            cron_db *db;
    {
            register user           *u;
            register entry          *e;
        int rbfd;
    #ifdef DEBIAN
    #define REBOOT_FILE "/var/run/crond.reboot"
            /* Run on actual reboot, rather than cron restart */
            if (access(REBOOT_FILE, F_OK) == 0) {
                    /* File exists, return */
                    log_it("CRON", getpid(),"INFO",
                           "Skipping @reboot jobs -- not system startup");
                    return;
            }
            /* Create the file */
            if ((rbfd = creat(REBOOT_FILE, S_IRUSR&S_IWUSR)) < 0) {
                    /* Bad news, bail out */
                    log_it("CRON",getpid(),"DEATH","Can't create reboot check file")
    ;
                    exit(0);
            } else {
                    close(rbfd);
                    log_it("CRON", getpid(),"INFO", "Running @reboot jobs");
            }
    
    
            Debug(DMISC, ("[%d], Debian running reboot jobs\n",getpid()));
    
    #endif
            Debug(DMISC, ("[%d], vixie running reboot jobs\n", getpid()));
            for (u = db->head;  u != NULL;  u = u->next) {
                    for (e = u->crontab;  e != NULL;  e = e->next) {
                            if (e->flags & WHEN_REBOOT) {
                                    job_add(e, u);
                            }
                    }
            }
            (void) job_runqueue();
    }
    
    Z toho mi vychází, že pokud cron není v Debianu, tak spustí reboot jobs vždycky a pokud je, tak si to hlídá vytvořením souboru /var/run/crond.reboot, který mu zřejmě debianí rc.init někde smaže. Tato modicikace je součástí debianího diffu. Taky je možné, že si to na jiných systémech hlídá jinak podobně.

    Založit nové vláknoNahoru

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