Üdv!
Egy centos7-en vettem észre, hogy a cron-ból egy adott feladat mintha nem futna le.
Ha újraindítom a cron-t (systemctl restart crond), akkor működik. A crond be van kapcsolva (enabled):
~# systemctl status crond
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since k 2016-07-12 08:53:29 CEST; 1min 9s ago
Main PID: 2098 (crond)
CGroup: /system.slice/crond.service
└─2098 /usr/sbin/crond -n
júl 12 08:53:29 server systemd[1]: Started Command Scheduler.
júl 12 08:53:29 server systemd[1]: Starting Command Scheduler...
júl 12 08:53:29 server crond[2098]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 75% if used.)
júl 12 08:53:29 server crond[2098]: (CRON) INFO (running with inotify support)
júl 12 08:53:29 server crond[2098]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
Találkozott valaki már hasonlóval esetleg?
Hozzászólások
Nekem jók vele a tapasztalataim, de van különbség a /etc/crontab és a userenkénti cron beállítások között. Melyiket használod?
1. Mutatsz egy "crontab -l"-t titkos adatok nélkül?
2. cron-nak van logja, benne van minden.
3. Ha a parancsnak van a végén > /dev/null, akkor azt vedd le.
Bovebb info? Hogy allitottad be? Milyen job ez, mikor kellene futnia? Nekem minden CentOS7-es gepen mukodik a cron.
---
Apple iMac 27"
áéíóöőúüű
Bocs, valóban némi infó lemaradt. De semmi extra:
# /etc/cron.d/myjob_cron
# Run the jobs
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
01 * * * * root ( /home/user/import/import param1 param2 param3 )
Átmenetileg beállítottam hogy irogassa a cron logjába:
( echo "Run task..."; /home/user/import/import param1 param2 param3 )
Lehet hogy nincs összefüggés, de mintha akkor tapasztalható, amikor áramszünet van és a szerver újraindul (újból bekapcsolják).
Az jutott eszembe, hogy az adott task (myjob_cron) esetleg beragad, nem fejeződik be. Ez okozhat ilyen jelenséget?
Na ezt most megfigyelem! Ha megint van ilyen, akkor a process listában megnézem, hogy ott van-e a task.
Elvileg a cron nem futtatja újra a processzt ha még fut, hiába jön el az ideje. Ez lehet a baj...
Szerintem az import scriptbe rakj egy START és STOP jelzőt (echo "START" > ...), hogy lásd mikor indul és áll le. Vagy még jobb a tesztelés idejére egy levélküldés: Import STARTED, Import STOPPED. Napi 2x24 levél már jó teszt...
Lehet, hogy nem fut le egy óra alatt? :(
A futással nincs gond, max. leszakad a hálózatról (átmenetileg - sajnos volt már ilyen) és ezért állhat le. :(
Elvileg a cron nem futtatja újra a processzt ha még fut, hiába jön el az ideje. Ez lehet a baj...
Ez biztos? Centos7 es Ubuntu 14.04 alatti cron simman elinditja akarhany peldanyban.
+1
centos6-on is. Nalunk naponta fut az egyik es ha nem tunik fel, hoyg nem futott le, akkor masnap ujra. Volt, amikor 10 script futott ugyanabbol (mert tiz napig nem tunt fel)
--
http://www.micros~1
Rekurzió: lásd rekurzió.
Ön nyert, valóban. Scripten belül kell csekkolni: var/lock