Portál AbcLinuxu, 5. května 2025 23:21

Dotaz: debian + cron - co dělám špatně?

26.11.2016 18:10 marek_hb
debian + cron - co dělám špatně?
Přečteno: 936×
Odpovědět | Admin
ahoj,

asi na něco zapomínám, nebo to dělám blbě, ale -
root@debian-netbook:/home/bada# ps -A | grep cron
  457 ?        00:00:00 cron
root@debian-netbook:/home/bada# crontab -l
...
# # m h  dom mon dow   command
01 18 * * * shutdown -r
mi nefunguje a nějak nedokážu najít kombinaci která by mi fungovala :-/

distro je aktuální debian stable

prosím o nasměrování :-/

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.11.2016 18:20 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Určitě bych použil plnou cestu k shutdown, protože při běhu cronu nemusí být nastavena proměnná PATH jak čekáte.
26.11.2016 18:37 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
to jsem zkoušel - bohužel beze změny
26.11.2016 18:36 jekub
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
prosím o nasměrování

-> podivat se do logu. Nevim jak Deb, u me /var/log/cron
26.11.2016 18:41 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Nov 26 18:37:01 debian-netbook cron[455]: (root) RELOAD (crontabs/root)
Nov 26 18:37:01 debian-netbook CRON[2135]: (root) CMD (/usr/sbin/shutdown -r)
jestli dobře koukám, tak cron proběhne, příkaz sám o sobě funuje. pod cronem ne
26.11.2016 19:33 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Nevím, zda je v Debianu stejný shutdown jako v Ubuntu, ale ten v Ubuntu použije čas „+1“ (1 minuta), když nezadáte čas provedení. Pak je možné příkaz pomocí shutdown -c přerušit. Je možné, že k tomu ve vašem případě z nějakého důvodu dojde. Také bych ověřil, jaký návratový kód vlastně shutdown vrací, zda se opravdu provede úspěšně. Dejte si do toho cronu raději nějaký svůj skript, ve kterém ten shutdown zavoláte, přesměrujete si jeho výstup do souboru a zapíšete si i ten návratový kód.
26.11.2016 20:00 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Já vypínám PC pomocí www serveru kde mám stránku na vypnutí a mám tam:
if ( $_GET["akce"] == "Vypnout PC HNED" ) $output=exec("/usr/bin/sudo /sbin/shutdown -h +1 2>&1");
Samozřejmě mám sudo nastavené aby nechtělo heslo.

Asi by tam měl být přidán čas vypnutí takže tam +1 přidej uvidíš co to udělá....
k3dAR avatar 26.11.2016 21:36 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
od toho se pouziva now:
shutdown -r now
porad nemam telo, ale uz mam hlavu... nobody
26.11.2016 21:44 R
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Pouzivam namiesto toho "reboot".
27.11.2016 00:06 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Někdy není NOW to pravé ořechové když se to volá ze skriptu....(Dokončení skriptu a pod.....)

Lepší je to spozdit o nějakou chvíli.
k3dAR avatar 27.11.2016 00:16 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
a on nekdo do skriptu da restartovani pred neco co chce pak jeste provest? :)
porad nemam telo, ale uz mam hlavu... nobody
27.11.2016 15:16 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Jasně že se vypnutí dá až na konec, ale ten skript byl odněkud volán a je dobré většinou počkat aby se i ty nadřazené skripty ukončili.

Samozřejmě to nutné není a i s okamžitým vypnutím by si OS měl poradit a vše ukončit korektně....
k3dAR avatar 27.11.2016 17:32 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
to bych bral pri killovani rodicovskeho procesu, ale ne pri kompletnim rebootu systemu, mozna mi jen unika situace pri krere by to bylo vhodne, proste ve chvili kdy chci restartovat tak chci restartovat, cokoliv sem chtel provest pred restarem provedu pred restartem :)
porad nemam telo, ale uz mam hlavu... nobody
27.11.2016 05:24 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
tak nic - script "mujshutdown.sh" bez cronu funfguje, z cronu ne. Celé to dělám pod rootem, zadaná absolutní cesta, výstup prázdný...
27.11.2016 09:02 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
A návratový kód shutdown? Když ho necháte provést hned a ne až za minutu, tak funguje?
28.11.2016 08:22 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
návratový kod zjistím až večet, nefunguje nikdy - ani hned, ani po pauze. Když ho pouštím jinak než přes cron, tak dělá co má. Zkusím se podívat na ten systemd timer

nebo možná zkusím vytáhnout cron a jádro z testingu a uvidím
28.11.2016 11:17 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
nefunguje nikdy - ani hned, ani po pauze
To znamená, že reboot neproběhne ani v případě, kdy z cronu spustíte shutdown -r now? Pokud na tom počítači používáte systemd, použil bych k restartu jeho příkaz systemctl reboot. Když se mu budete pokoušet systém restartovat pod rukama, nemusí to dopadnout dobře (nebo vůbec). Nemyslím si, že by byl problém v cronu nebo jádru. Spíš tam bude něco jako SElinux, systemd nebo něco takového a se shutdown -r buď neprovede, nebo dojde k jeho přerušení, protože prostředí, ve kterém je spuštěn příkaz z cronu je jiné, než když to spustíte jako přihlášený uživatel.
28.11.2016 12:49 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Jj, reboot z cronu neprobehne at zadam prikaz jakkoli. Pri rucnim spustenim ok. A zkusil rano i treba jen echo 123 a taky nic. Proste z cronu nic nespustim a nevim proc
28.11.2016 13:13 jekub
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
echo 123 odesle mail (zapis na stdout)

zkuste

echo 123 > /tmp/crontest

Pri problemech s cronem pouzivam

date >> /home/......./cron.log

nebo ciste

date

(kontrola mailu)

28.11.2016 20:08 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
echo 123 by vám normálně mělo poslat e-mail, ale musíte to mít správně nakonfigurované. Spíš si nechte něco zapsat do souboru. Je to divné, že by cron nic nespouštěl, v logu přece byl vidět výpis příkazu. Každopádně pokud by vám nefungoval ani ten zápis do souboru, zjistěte, zda vám cron vůbec běží. A vyzkoušel bych také systémový cron místo uživatelského (pozor na to, že má jiný formát, je tam navíc uživatel, pod kterým se má příkaz spustit).
26.11.2016 19:08 ET
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
obcas blbne cron, kdyz neni na konci prazdny radek
27.11.2016 05:24 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
taky jsem zkoušel - bez vlivu
26.11.2016 20:57 NN
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud je to /etc/crontab, tak chybi jmeno uzivatele(root), pokud je to user cron tak na shutdown nebudes mit pravo..
26.11.2016 21:26 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Podle dotazu i výpisu v komentářích je to uživatelský cron uživatele root.
26.11.2016 22:51 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin

Vlákno bylo přesunuto do samostatné diskuse.

27.11.2016 08:52 JMP | skóre: 30
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
hmm, u mne restart proběhl po oné defaultní prodlevě... (editoval jsem přímo crontab roota)

# cat /etc/issue Debian GNU/Linux 8 \n \l

# uname -a Linux atom 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux

# crontab -l 40 8 * * * /sbin/shutdown -r
Pavel 'TIGER' Růžička avatar 27.11.2016 09:15 Pavel 'TIGER' Růžička | skóre: 54
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
V Jessie jsem měl problém v cronu s jakýmkoliv parametrem za příkazem. Proto jsem všechno dával do skriptů a ty muslely mít práva pro spuštění pod uživatelam, který jej přidává do cronu. Také se mi crontab neprovedl, pokud jsem script nepřidal pomocí crontab -e A poslední věcí byl nepořádek v příkazech pro restart a vypnutí, bylo moc variant, některé fungovaly jiné už ne, avšak nejspolehlivější bylo je provádět přes systemctl reboot.
Josef Kufner avatar 30.11.2016 12:04 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Cron posílá e-maily s výstupem programů, které spouští. Podívej se do /var/mail, najdeš tam chybovou hlášku. A nastav si správně poštu.

Občas bývá problém s nastavením prostředí v cronu, stačí na začátek crontabu přidat něco jako:
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Hello world ! Segmentation fault (core dumped)
30.11.2016 18:27 marek_hb
Rozbalit Rozbalit vše Re: debian + cron - co dělám špatně?
dík moc - po doplnění SHELL a PATH začal cron fungovat

ještě jednou dík

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.