Fórum Root.cz
Hlavní témata => Software => Téma založeno: ZAJDAN 27. 09. 2018, 08:50:01
-
Ahoj....
v crontabu jsem si na cron.daily nastavil čas na 19(sedmá hodina večerní), ale teď zjišťuji, že se to provedlo v sedmou hodinu raní.
Po čem bych se měl pátrat?
díky
-
Ahoj....
v crontabu jsem si na cron.daily nastavil čas na 19(sedmá hodina večerní), ale teď zjišťuji, že se to provedlo v sedmou hodinu raní.
Po čem bych se měl pátrat?
díky
Po tom, jestli má server správně čas.
19 hodin je sedmá hodina večerní i v USA (když už někdo používá 24hodinový formát), a cron taky jede 24hodinově.
-
toto se někdy hodí
https://crontab.guru/every-weekday (https://crontab.guru/every-weekday)
ale ukazuje to pro nějaký americký lokální čas, aby vás to nemátlo
-
Po tom, jestli má server správně čas.
19 hodin je sedmá hodina večerní i v USA (když už někdo používá 24hodinový formát), a cron taky jede 24hodinově.
server má seřízený čas přes NTP:
supervisor# date
Thu Sep 27 09:03:13 CEST 2018
crontab:
1 19 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
-
Nemáte nainstalovaný anacron? Ten příkaz v crontab se pak provede, ale skončí na test a cron.daily spouští anacron, když uzná za vhodné.
-
Nemáte nainstalovaný anacron? Ten příkaz v crontab se pak provede, ale skončí na test a cron.daily spouští anacron, když uzná za vhodné.
je nainstalovaný
# dpkg -s anacron
Package: anacron
Status: install ok installed
to znamená, že jen kvůli anacronu se na to cron vyprdne?
-
to znamená, že jen kvůli anacronu se na to cron vyprdne?
Možná by to chtělo konečně použít tu kouli na krku a nastudovat si význam operátoru || a toho kódu, co je před ním. ::) ::) ::)
-
to znamená, že jen kvůli anacronu se na to cron vyprdne?
Cron to spustí, ale první část toho příkazu je test -x /usr/sbin/anacron, tedy jestli je anacron nainstalovaný. Pokud je, druhá část (run-parts /etc/cron.daily) se nespustí, protože to dělá anacron, když uzná za vhodné. Anacron na rozdíl od cronu zaručuje spuštění i u systémů, které nějakou dobu dne neběží/spí/restartují se/…, proto se na úlohy typu cron.daily (jednou denně v nedefinovaný čas) používá. Pokud chcete něco konkrétního spouštět jednou denně v určitý čas, tak to nepatří do cron.daily, ale cron.d.
-
Cron to spustí, ale první část toho příkazu je test -x /usr/sbin/anacron, tedy jestli je anacron nainstalovaný. Pokud je, druhá část (run-parts /etc/cron.daily) se nespustí, protože to dělá anacron, když uzná za vhodné. Anacron na rozdíl od cronu zaručuje spuštění i u systémů, které nějakou dobu dne neběží/spí/restartují se/…, proto se na úlohy typu cron.daily (jednou denně v nedefinovaný čas) používá. Pokud chcete něco konkrétního spouštět jednou denně v určitý čas, tak to nepatří do cron.daily, ale cron.d.
operátor || (nebo) mi v crontabu nebyl jasný, ale díky za objasnění....provede se prostě první "podmínka"
z cron.daily si všechno přesunu jinam a na každou úlohu si vytvořím extra zápis, protože já chci konkrétní čas a ne až se anacronu zachce
přišlo mi jen zvláštní, že se to spustilo v 07:01 ...proč to anacron nespustil třeba 09:41 ...pak bych se rychleji dotrasoval k principu fungovaní cron vs anacron, ale ta náhoda, že namísto 19:01 ...07:01 mě vytvořila podezdření, že je něco divně
moc díky za objasnění
-
operátor || (nebo) mi v crontabu nebyl jasný, ale díky za objasnění....provede se prostě první "podmínka"
z cron.daily si všechno přesunu jinam a na každou úlohu si vytvořím extra zápis, protože já chci konkrétní čas a ne až se anacronu zachce
Pokud je to trvale běžící stroj, je logičtější a účelnější anacron odinstalovat, ten je jak bylo výše řečeno určen pro stroje, které kus dnes či i několik dnů neběží.
-
Pokud je to trvale běžící stroj, je logičtější a účelnější anacron odinstalovat, ten je jak bylo výše řečeno určen pro stroje, které kus dnes či i několik dnů neběží.
dík za doporučení