Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Uprava crontabu cez skript  (Přečteno 3345 krát)

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Uprava crontabu cez skript
« kdy: 23 Ledna 2008, 14:08:37 »
Zdravim kazdeho,
Mam taky mali problem, potreboval by som upravit crontab, alebo nahrat celkom novy cez skript.
Skript by mal byt spusteny root-om a mal by sa upravit crontab uzivatela. Vie niekdo ako na to?
Standardne to editujem crontab -e

Pavelp

  • Host
Re: Uprava crontabu cez skript
« Odpověď #1 kdy: 23 Ledna 2008, 14:16:52 »
Resit jinak, je to prilis nebezpecne. Od toho je cron, aby spoustel ulohy kdy ma. Kdyz si bude pod sebou modifikovat zidlicku, muze se stat, ze si u ni urizne nohu a padne na *censored* a s nim cela masina. Tohle programator nedela.


Jozef Mlich

  • Návštěvník
  • Příspěvků: 62
    • /~xmlich02/
Re: Uprava crontabu cez skript
« Odpověď #2 kdy: 23 Ledna 2008, 15:16:21 »
nasel jsem ve svych skriptech nejaky priklad:
Kód: [Vybrat]
cront=`crontab -l | grep -v stats_dev | grep -v "#"`
crontab=`echo -e "$cront \n*/5 * * * *  /usr/local/bin/stats_dev"`
echo "$crontab" | crontab -

1) do promenne $cront precte crontab krome radku obsahujicich "stats_dev"
2) do $crontab se zapise $cront (puvodni crontab) + novy radek s pozadovanymi udaji
3) ulozi se to

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #3 kdy: 23 Ledna 2008, 15:17:30 »
To ano, ja len potrebujem donho pridat jeden zaznam.
Inu moznost nemam.

Ten skript este dnes vyskusam, dik

LS

  • Závislák
  • ***
  • Příspěvků: 3849
    • http://linux.euweb.cz
Re: Uprava crontabu cez skript
« Odpověď #4 kdy: 23 Ledna 2008, 15:37:06 »
Pridat zaznam do cronu se rovna pridani jednoho radku do textoveho souboru. Souhlasim s Pavlemp ze je to nebezpecne, ale nerozumim, v cem je technicky problem?

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #5 kdy: 23 Ledna 2008, 15:42:57 »
Ak by som vedel ale kde je ten textovy subor.
Ide o to ze niekde daleko je jeden pocitac s ubuntu 7.10
Tem mi kazdy den v urcitom case sprsvi to ze sa pripoji na net, stiahne jeden skript ak tam je a potom sa odpoji.
Stiahnuty skript spusti iny skript ktory spusta rootovsky cron v urcitom case.
K pocitacu nemozem, na dialku pristup nie je atd...
Takze toto je moja jedina moznost.
Samozrejme pred tym ako to tam dam naostro tak to cele odskusam...

Pavelp

  • Host
Re: Uprava crontabu cez skript
« Odpověď #6 kdy: 23 Ledna 2008, 19:42:27 »
Nevidim do toho az tak dokonale, ale nedelate to opacne ? Nemel byste cronem testovat existenci toho souboru a kdyz existuje, provest nejake akce ? Zmodifikujete nejaky  pomocny soubor, zapiste do nej 1 , nebo 0  a ten skript si ho nacte a podle nej se zachova, trebas exit 0, takze opetovne volani cronem nic nezpusobi. Ale nemodifikujte skript.


 
« Poslední změna: 23 Ledna 2008, 19:44:39 od Pavelp »

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #7 kdy: 24 Ledna 2008, 01:03:45 »
Nie takto to ma byt. ten skript stahuje presne pre taketo pripady ked treba nieco napravit..

LS

  • Závislák
  • ***
  • Příspěvků: 3849
    • http://linux.euweb.cz
Re: Uprava crontabu cez skript
« Odpověď #8 kdy: 24 Ledna 2008, 08:41:19 »
komu neni rady,...  ;D

soubory ktere chcete upravovat jsou /etc/cron*

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #9 kdy: 24 Ledna 2008, 10:46:31 »
nie
mam tam:
cron.d
cron.hourly
cron.dayly
cron.weekly

cron.d - je adresar anacronu a nie cronu

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #10 kdy: 24 Ledna 2008, 10:48:21 »
nasiel som crontab v adresary /var/spool/   ;D

LS

  • Závislák
  • ***
  • Příspěvků: 3849
    • http://linux.euweb.cz
Re: Uprava crontabu cez skript
« Odpověď #11 kdy: 24 Ledna 2008, 12:19:34 »
viz. man cron

psal jsem /etc/cron*, takze samozrejme take /etc/crontab, /etc/cron.d/*, /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly atd. !

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #12 kdy: 24 Ledna 2008, 13:29:17 »
hej, ale to je anacron :)

LS

  • Závislák
  • ***
  • Příspěvků: 3849
    • http://linux.euweb.cz
Re: Uprava crontabu cez skript
« Odpověď #13 kdy: 24 Ledna 2008, 14:53:05 »
Soubor /etc/crontab je definice pro cron. Schvalne se do toho souboru podivejte. Pokud (stejne jako ja) nechcete, aby se hodinove, denni, tydenni a mesicni skripty spoustely pres anacron ale aby byly nadale obsluhovany klasickym cronem, prislusnym zpusobem si (stejne jako ja) soubor /etc/crontab upravte.

kkaarreell

  • Stálý člen
  • **
  • Příspěvků: 1072
Re: Uprava crontabu cez skript
« Odpověď #14 kdy: 24 Ledna 2008, 15:27:32 »
Tak tak, podle manualove stranky je konfiguracni soubor pro anacron /etc/anacrontab.

Na systemech debian ci red hat jsou adresare /etc/cron.{daily,weekly,monthly} vyuzivany i cronem, ne jen anacronem. Rozdil je samozrejme ve zpusobu jejich fungovani.

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #15 kdy: 12 Května 2010, 14:39:42 »
Takze toto by fungovalo:

Kód: [Vybrat]
cront=`crontab -l | grep -v stats_dev | grep -v "#"`
crontab=`echo -e "$cront \n*05 * * * *  echo skuska >>subor.txt"`
echo "$crontab" | crontab -

Ale vysledok je asy takyto:
V crontabe mi to na koniec predosleho riadku prida "^M" (bez uvodzoviek :))
a vysledny subor ma nazov "subor.txt?"

Vie s tym niekto poradit?
Jenda sa o ubuntu 8.04

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #16 kdy: 14 Května 2010, 12:55:59 »
Nikto nic?  ???

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Uprava crontabu cez skript
« Odpověď #17 kdy: 19 Května 2010, 10:06:43 »
Mozno mi bude vediet niekto pomoct.
Chcem pouzit toto:

Kód: [Vybrat]
]
cront=`crontab -l | grep -v stats_dev | grep -v "#"`
crontab=`echo -e "$cront \n*05 * * * *  echo skuska >>subor.txt"`
echo "$crontab" | crontab -

avsak skript sa bude spustat pod rootom a portebujem aby to upravilo crontab urciteho uzivatela. Je to mozne?

 

Provoz zaštiťuje spolek OpenAlt.