Avatar billede Slettet bruger
27. april 2002 - 18:52 Der er 8 kommentarer og
2 løsninger

Cronjob driller

Jeg skal have flg. prog til at kører:

#!/usr/local/bin/bash
#
# Create backup of all databases in mysql
#

set $(date)
/usr/local/bin/mysqldump --opt --all-databases --user=root --password= > /var/www/backup/db_full_$6-$2-$3.sql
gzip --best "/var/www/backup/db_full_$6-$2-$3.sql"

i et cron job men hvad skal der stå i cron??

"programmet" ligger i /var/www/
check evt. for fejl...
PLz help!
Avatar billede Slettet bruger
27. april 2002 - 18:53 #1
Det er RødHætte 7.2
Avatar billede scz Nybegynder
27. april 2002 - 19:16 #2
Hvor tit skal det køre det script?
Avatar billede Slettet bruger
27. april 2002 - 19:18 #3
1 gang om dagen..
Avatar billede tson Nybegynder
27. april 2002 - 19:19 #4
crontab er liniebaseret, altså en linie = en entry.
For brugeres personlige crontab er formattet

a b c d e kommando

  field          allowed values
  -----          --------------
a  minute        0-59
b  hour          0-23
c  day of month  1-31
d  month          1-12 (or names, see below)
e  day of week    0-7 (0 or 7 is Sun, or use names)

Dvs, en entry afvikles når tidsangivelsen for en entry matcher det aktulle tidspunkt. Hvis du f.eks. vil afvikle dit job kl. 4:15 hver nat skriver du:

15 4 * * * /var/www/ditScript.sh

* matcher alle værdier, så scriptet afvikles altså kl. 4:15 uanset dag, måned eller ugedag.

Hvis du bruger den centrale crontab /etc/crontab er der et ekstra felt mellem tidsangivelsen og kommandoen, som angiver brugeren kommandoen skal afvikles af. Altså f.eks.

a b c d e root kommando

Hvis du vil bruge din egen brugers eller en speciel brugers crontab, så gør sådan her:

export EDITOR=emacs # eller hvilken editor du nu foretrækker, vim er default.
crontab -e # Ret din crontab og gem og exit

crontab -l # viser din crontab
Avatar billede scz Nybegynder
27. april 2002 - 19:25 #5
skriv "crontab -e"
og tryk på "insert"
for at skrive denne linje
0 0 * * * /var/www/hvad_dit_script_hedder
Avatar billede Slettet bruger
27. april 2002 - 19:34 #6
ehh hvor kan jeg se om opgaven er blevet udførdt??
Avatar billede scz Nybegynder
27. april 2002 - 19:40 #7
Når du har gemt den. Så bliver det script udført hved dag kl 00:00
Hvis dit script virker, så bliver det udført.

Jeg kan sq ikke huske om crontab har en log...
Avatar billede tson Nybegynder
27. april 2002 - 19:41 #8
crontab -l viser din crontab (med mindre du altså bruger /etc/crontab). Hvis du mener om hvordan du kan se om dit script er blevet afviklet på det pågældende tidspunkt er der flere svar:

Hvis dit program skriver til skærmen normalt (altså til standard out eller standard error), så vil cron sende outputtet i en mail til den bruger cronjobbet er afviklet af. Du kan tjekke den lokale mailbox med 'pine', eller mere lowlevel ved at skrive 'less $MAIL'

Hvis du synes det er irriterende kan du omdirrigere outputtet ved at skrive >~/logfil.txt 2>&1

Så kan du se outputtet i logfilen istedetfor at få mails. Så kan du se på datostemplet eller indholdet af filen om dit script er blevet kørt.
Avatar billede Slettet bruger
27. april 2002 - 19:45 #9
Date: Wed, 27 Mar 2002 23:55:01 +0100
From: Cron Daemon <root@localhost.localdomain>
To: root@localhost.localdomain
Subject: Cron <root@localhost> /usr/bin/mrtg /etc/mrtg/mrtg.cfg

ERROR: CFG Error in "workdir", line 0: Working directory /var/www/html/mrtg does not exist

hmm der er hvist en fejl i..
Avatar billede scz Nybegynder
27. april 2002 - 19:47 #10
well opret det dir, ved at skrive

mkdir /var/www/html/mrtg
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester