/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
crontab spørgsmål
Fra : Lars P. Magnussen


Dato : 14-03-06 23:45

Jeg har oprettet et script under en bruger med begrænsede rettigheder, og
derefter oprettet en crontab fra den bruger.
Satte i første omgang et tidspunkt ca. 5 min fremme for at teste, men det
starter tilsyneladende ikke.
Scriptet kører udmærket hvis startet fra kommandolinien for den pågældende
bruger
Debian Sarge, nogen ideer ??

Mvh
Lars P. Magnussen



 
 
Ukendt (14-03-2006)
Kommentar
Fra : Ukendt


Dato : 14-03-06 23:48

"Lars P. Magnussen" wrote:
>
> Jeg har oprettet et script under en bruger med begrænsede rettigheder, og
> derefter oprettet en crontab fra den bruger.
> Satte i første omgang et tidspunkt ca. 5 min fremme for at teste, men det
> starter tilsyneladende ikke.

De jobs man sætter op med crontab er periodiske jobs. Hvis et
job kun skal udføres en enkelt gang skal du i stedet have fat i
at kommandoen. De to er ret forskellige, og det er heller ikke
samme dæmon, der står for afvikling af jobene.

> Scriptet kører udmærket hvis startet fra kommandolinien for den pågældende
> bruger
> Debian Sarge, nogen ideer ??

Det ville være en god idé, hvis du fortalte os, hvad du har
prøvet, og hvad resultatet var.

--
Kasper Dupont -- Rigtige mænd skriver deres egne backupprogrammer
#define _(_)"d.%.4s%."_"2s" /* This is my new email address */
char*_="@2kaspner"_()"%03"_("4s%.")"t\n";printf(_+11,_+6,_,6,_+2,_+7,_+6);

Lars P. Magnussen (15-03-2006)
Kommentar
Fra : Lars P. Magnussen


Dato : 15-03-06 00:44

> De jobs man sætter op med crontab er periodiske jobs.
>
Det er også meningen at det skal være et job, som kører en gang i døgnet.
Derfor oprettede jeg kl. ca 23:00 et crontab sådan her
05 23 * * * /home/bruger/job/scriptnavn
Bare for at se at det virker, for senere at tilrette tidspunktet.
Så burde jeg vel have set i logfilerne fra jobbet at det kørte, men det
gjorde det tilsyneladende ikke

Mvh
Lars P. Magnussen




Ukendt (15-03-2006)
Kommentar
Fra : Ukendt


Dato : 15-03-06 07:45

"Lars P. Magnussen" wrote:
>
> > De jobs man sætter op med crontab er periodiske jobs.
> >
> Det er også meningen at det skal være et job, som kører en gang i døgnet.
> Derfor oprettede jeg kl. ca 23:00 et crontab sådan her
> 05 23 * * * /home/bruger/job/scriptnavn

Hvilken kommando brugte du til at oprette den?
Hvad står der i scriptet?

> Bare for at se at det virker, for senere at tilrette tidspunktet.
> Så burde jeg vel have set i logfilerne fra jobbet at det kørte, men det
> gjorde det tilsyneladende ikke

Er der en /var/log/cron fil? Hvad står der i den?

--
Kasper Dupont -- Rigtige mænd skriver deres egne backupprogrammer
#define _(_)"d.%.4s%."_"2s" /* This is my new email address */
char*_="@2kaspner"_()"%03"_("4s%.")"t\n";printf(_+11,_+6,_,6,_+2,_+7,_+6);

Lars P. Magnussen (15-03-2006)
Kommentar
Fra : Lars P. Magnussen


Dato : 15-03-06 09:29

> Hvilken kommando brugte du til at oprette den?
>
crontab -e
logget ind som den bruger med begrænsede rettigheder, som det skal køres
under

# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.LZceVd/crontab installed on Wed Mar 15 08:56:19 2006)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
59 8 * * * /home/avadmin/job/McAfeeReplicate

Har lige prøvet igen her til morgen (uden held med cron ovenfor),
men fra kommandolinien, OK.

> Hvad står der i scriptet?
>
Det er rimelig langt, men starter under alle omstændigheder med at skrive en
overskrift til et par log filer lokalt. Så derfor kan jeg se at det slet
ikke kommer i gang.
I øvrigt, skal der inde i scriptet cd'es til directory for scriptet ?
Det gør jeg nemlig ikke. Går ud fra at udgangspunktet er stien i crontab ?

> Er der en /var/log/cron fil? Hvad står der i den?
>
Næh, ikke så vidt jeg kan se, men det ville jo nok være en god ide, men er
tilsyneladende ikke med i en Sarge standardopsætning.

Iøvrigt har jeg et par andre crontabs kørende ok (root og fetchmail)

Mvh
Lars P. Magnussen



Thomas S. Iversen (15-03-2006)
Kommentar
Fra : Thomas S. Iversen


Dato : 15-03-06 10:50

Lars P. Magnussen <nix_spam_lpm@magnatek.nejtak> skrev 2006-03-15:
>> Hvilken kommando brugte du til at oprette den?
>>
> crontab -e
> logget ind som den bruger med begrænsede rettigheder, som det skal køres
> under
>
> # DO NOT EDIT THIS FILE - edit the master and reinstall.
> # (/tmp/crontab.LZceVd/crontab installed on Wed Mar 15 08:56:19 2006)
> # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
> 59 8 * * * /home/avadmin/job/McAfeeReplicate

Jeg kan ikke lide at der står DO NOT EDIT THIS FILE når du skriver crontab -e!

Skriver jeg crontab -e hos min zensonic bruger får jeg en fin lille editor
op med følgende indhold (een lang linie, sorry for formatteringen):

0,15,30,45 * * * * cd /home/zensonic/ ; sh ./.handle_bogofilter_misjudgements.sh -vpn

Ser jeg derimod på hvad der rent faktisk bliver kørt af cron ser filen ud som:

zensonic@www:/var/spool/cron$ sudo cat /var/spool/cron/crontabs/zensonic
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.VfOEFG/crontab installed on Tue May 3 09:23:12 2005)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
0,15,30,45 * * * * cd /home/zensonic/ ; sh ./.handle_bogofilter_misjudgements.sh -vpn

> Har lige prøvet igen her til morgen (uden held med cron ovenfor),
> men fra kommandolinien, OK.

Har du læst mail som den bruger der skal køre jobbet. Cron sender en mail
med outputtet fra cron jobbet. Hvis der er noget. Hvis der ikke er noget,
bliver der ikke sendt nogen mail.

> I øvrigt, skal der inde i scriptet cd'es til directory for scriptet ?

Ja det skal der.

Thomas

--

Lars P. Magnussen (15-03-2006)
Kommentar
Fra : Lars P. Magnussen


Dato : 15-03-06 11:49

> Jeg kan ikke lide at der står DO NOT EDIT THIS FILE når du skriver
> crontab -e!
>
Det gør der heller ikke. Jeg får den specielle editor.
Teksten er fra selve filen i /var/cron/crontabs/

>
> Har du læst mail som den bruger der skal køre jobbet. Cron sender en mail
> med outputtet fra cron jobbet.
>
Rigtig god ide. Og der kunne jeg så se svaret på mit spørgsmål nedenfor

>> I øvrigt, skal der inde i scriptet cd'es til directory for scriptet ?
>
> Ja det skal der.

Stien manglede, og efter indsætning af en simpel linie kører det.
Ja, ja, jeg har en del at lære endnu mht. script skrivning

Mvh
Lars P. Magnussen



Tomas (15-03-2006)
Kommentar
Fra : Tomas


Dato : 15-03-06 17:43

On Tue, 14 Mar 2006 23:44:51 +0100, Lars P. Magnussen wrote:

> Jeg har oprettet et script under en bruger med begrænsede rettigheder, og
> derefter oprettet en crontab fra den bruger.
> Satte i første omgang et tidspunkt ca. 5 min fremme for at teste, men det
> starter tilsyneladende ikke.
> Scriptet kører udmærket hvis startet fra kommandolinien for den pågældende
> bruger
> Debian Sarge, nogen ideer ??
>
Min oplevelse med cron er at problemer _næsten_ altid skyldes at path /
working directory er forskellig for brugeren og for cron.


Tomas

Thorbjørn Ravn Ander~ (15-03-2006)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 15-03-06 22:51

"Lars P. Magnussen" <larspm_nix_spam@magnatek.dk.nejtak> writes:

> Scriptet kører udmærket hvis startet fra kommandolinien for den pågældende
> bruger
> Debian Sarge, nogen ideer ??

Angiv fuldt navn for script og de programmer der kaldes fra scriptet
som ikke ligger i $PATH (som også skal sættes i scriptet).

PATH er meget begrænset når man er på de kanter.
--
Thorbjørn Ravn Andersen


Ukendt (16-03-2006)
Kommentar
Fra : Ukendt


Dato : 16-03-06 08:36

Thorbjørn Ravn Andersen wrote:
>
> Angiv fuldt navn for script og de programmer der kaldes fra scriptet
> som ikke ligger i $PATH (som også skal sættes i scriptet).
>
> PATH er meget begrænset når man er på de kanter.

Det er nok en god idé at starte scriptet med noget i retning af:

export PATH=/bin:/sbin:/usr/bin:/usr/sbin

Ved at sætte PATH i scriptet undgår man for det første at
resultatet afhænger af, hvad der tilfældigvis er i PATH på
forhånd. Og ovenstående indeholder de fleste af de kommandoer,
man sædvanligvis bruger i scripts.

--
Kasper Dupont -- Rigtige mænd skriver deres egne backupprogrammer
#define _(_)"d.%.4s%."_"2s" /* This is my new email address */
char*_="@2kaspner"_()"%03"_("4s%.")"t\n";printf(_+11,_+6,_,6,_+2,_+7,_+6);

Kent Friis (16-03-2006)
Kommentar
Fra : Kent Friis


Dato : 16-03-06 19:36

Den Thu, 16 Mar 2006 08:36:24 +0100 skrev Kasper Dupont:
> Thorbjørn Ravn Andersen wrote:
>>
>> Angiv fuldt navn for script og de programmer der kaldes fra scriptet
>> som ikke ligger i $PATH (som også skal sættes i scriptet).
>>
>> PATH er meget begrænset når man er på de kanter.
>
> Det er nok en god idé at starte scriptet med noget i retning af:
>
> export PATH=/bin:/sbin:/usr/bin:/usr/sbin
>
> Ved at sætte PATH i scriptet undgår man for det første at
> resultatet afhænger af, hvad der tilfældigvis er i PATH på
> forhånd. Og ovenstående indeholder de fleste af de kommandoer,
> man sædvanligvis bruger i scripts.

Du glemte /usr/local/bin.

Mvh
Kent
--
Hard work may pay off in the long run, but laziness pays off right now.

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste