Crontab, script probleem

Pagina: 1
Acties:
  • 166 views sinds 30-01-2008
  • Reageer

  • jealma
  • Registratie: Mei 2003
  • Niet online

jealma

Jesus is Lord!

Topicstarter
(overleden)
Ik zie toevallig dit topic langskomen en heb ook een vraag over crontab, waarbij ik het eigenlijk overbodig vind om een nieuw topic te openen. Ook ubuntu (6.10) met crontabs.

Ik heb 4 scripts, om databases, homedirs, configuratie en docroot van webserver te backuppen. Alle 4 scripts hebben dezelfde owner, groep en chmod. Ze werken alle 4 als je ze handmatig gebruikt. Nu is het probleem dat het script voor de configuratie niet gedraait wordt, en de andere wel. De regel in crontab -e is exact gelijk aan die van databases, homedirs en www, maar het script wordt niet uitgevoerd. Voorheen (met een andere installatie) had ik exact hetzelfde probleem, maar toen werd het www-script niet uitgevoerd. De scripts zijn nog steeds hetzelfde.

Edit: Mijn crontab bestand ziet er zo uit:
# m h  dom mon dow   command
0 5 * * * /root/bin/crontab-scripts/database-dump
10 5 * * * /root/bin/crontab-scripts/backup-tib2e
20 5 * * * /root/bin/crontab-scripts/backup-configuration
30 5 * * * /root/bin/crontab-scripts/backup-www

[ Voor 24% gewijzigd door jealma op 10-03-2007 13:14 ]

Avalon, Fireflight, Gaither, Point of Grace, Third Day
C2D E6400 @ 3GHz - Zalman CNPS8000 - GA-P35-DS3 - Corsair 2GB ram - Asus 9400GT - OCZ Vertex 30GB
Archlinux 64-bit + Awesome


  • Pim.
  • Registratie: Mei 2001
  • Laatst online: 16-08-2025

Pim.

Aut viam inveniam, aut faciam

Beter een nieuw topic, ten eerste krijg je dan meer aandacht voor je probleem en ten tweede kaap je een ander zijn topic niet (ook al is het goede antwoord al gegeven)

"The trouble with quotes from the Internet is that you can never know if they are genuine." - Elvis Presley | Niet met me eens ? DM ME


  • JeroenE
  • Registratie: Januari 2001
  • Niet online
Weet je zeker dat het script niet wordt uitgevoerd, of kan het zijn dat er in het script wat mis gaat zodat de backup niet lukt? Je kan dat uittesten door als eerste (en laatste) in je script de datum tijd + omschrijving in een tijdelijk bestand weg te schrijven.

echo `date` start backup-configuration >> /tmp/scripts.log

Hte handigste is wellicht om dat in alle scripts te zetten zodat je kan zien of ze overlappen (ik weet niet of dat erg is, dat ligt er aan wat je doet natuurlijk).

Als ik een viertal backup-scripts zou hebben die altijd iedere dag gedraaid worden dan zou ik eerder kijken of ik daar niet gewoon 1 script van kon maken. Of desnoods een 5e die de 4 andere scripts aanroept.

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
En zou je gewoon de tekst van je crontab willen plaatsen in plaats van een screenshot (voor zover ze uberhaupt wat toevoegen aan het verhaal)? Op deze manier is er misschien over een week niks meer te zien, en afhankelijk van de gekozen layout is het niet eens te lezen, en waarom zou je een plaatje gebruiken om tekstuele informatie te plaatsen :)

  • jealma
  • Registratie: Mei 2003
  • Niet online

jealma

Jesus is Lord!

Topicstarter
(overleden)
JeroenE schreef op zaterdag 10 maart 2007 @ 07:38:
Weet je zeker dat het script niet wordt uitgevoerd, of kan het zijn dat er in het script wat mis gaat zodat de backup niet lukt? Je kan dat uittesten door als eerste (en laatste) in je script de datum tijd + omschrijving in een tijdelijk bestand weg te schrijven.

echo `date` start backup-configuration >> /tmp/scripts.log

Hte handigste is wellicht om dat in alle scripts te zetten zodat je kan zien of ze overlappen (ik weet niet of dat erg is, dat ligt er aan wat je doet natuurlijk).

Als ik een viertal backup-scripts zou hebben die altijd iedere dag gedraaid worden dan zou ik eerder kijken of ik daar niet gewoon 1 script van kon maken. Of desnoods een 5e die de 4 andere scripts aanroept.
Ik weet 100% zeker dat het script niet wordt uitgevoerd, want zodra het script start, begint er een logfile. Als de backup om de een of andere reden niet afgemaakt wordt, blijft er in ieder geval een logfile en mischien al een map met een aantal gebackupte bestanden over. Als de backup wel successvol wordt afgerond, blijft er alleen een .tar.bz2 bestand over, met de omschrijving en datum (bijvoorbeeld tib2e-backup-070310-0510.tar.bz2 voor een backup van tib2e die gemaakt is op 10-03-07 05:10).

Ik ga je tip in ieder geval proberen, door een backup te maken van het configuratiescript te maken, en dan als eerste regel zorgen dat er een datum in een logbestand wordt gezet.

Het is overigens niet erg als de scripts elkaar overlappen; de gegevens hebben niet iets met elkaar te maken en mogen ook in een andere volgorde of zelfs tegelijkertijd worden gebackupped.
blaataaps schreef op zaterdag 10 maart 2007 @ 09:10:
En zou je gewoon de tekst van je crontab willen plaatsen in plaats van een screenshot (voor zover ze uberhaupt wat toevoegen aan het verhaal)? Op deze manier is er misschien over een week niks meer te zien, en afhankelijk van de gekozen layout is het niet eens te lezen, en waarom zou je een plaatje gebruiken om tekstuele informatie te plaatsen :)
Aangepast :)

[ Voor 12% gewijzigd door jealma op 10-03-2007 13:23 ]

Avalon, Fireflight, Gaither, Point of Grace, Third Day
C2D E6400 @ 3GHz - Zalman CNPS8000 - GA-P35-DS3 - Corsair 2GB ram - Asus 9400GT - OCZ Vertex 30GB
Archlinux 64-bit + Awesome


  • jealma
  • Registratie: Mei 2003
  • Niet online

jealma

Jesus is Lord!

Topicstarter
(overleden)
Ik heb het script in crontab laten staan en zo aangepast dat het begint met een regel naar een logfile te schrijven. Conclusie: het script wordt niet gerunned.

Iemand die een idee heeft? Het script heeft dezelfde owner, groep en chmod, staat in dezelfde map als de andere cron-scripts en de entry klopt ook. Toch wordt het script niet gerunned. Ik ga nog even proberen om het script er twee keer in te zetten, kijken of er dan wel iets gebeurd.

Avalon, Fireflight, Gaither, Point of Grace, Third Day
C2D E6400 @ 3GHz - Zalman CNPS8000 - GA-P35-DS3 - Corsair 2GB ram - Asus 9400GT - OCZ Vertex 30GB
Archlinux 64-bit + Awesome


  • alx
  • Registratie: Maart 2002
  • Niet online

alx

In je crontab kan ik geen fout vinden, dus
- draait de cron daemon wel
- staat de tijd wel goed ingesteld
- zijn de scripts wel executable, en de dirs ernaartoe ook (hoewel root)
- beginnen de scripts wel met #/bin/sh (of #/bin/bash)
- is de target (log)locatie schrijfbaar, zowel evt mount als dir perm

Allemaal duhh gevallen, maar wel voorwaarden.

Wellicht ten overvloedde: mijn crontab entries zijn altijd van de vorm
exec /dir/cmd >> file.log 2>&1

  • jealma
  • Registratie: Mei 2003
  • Niet online

jealma

Jesus is Lord!

Topicstarter
(overleden)
simulacrum schreef op zondag 11 maart 2007 @ 21:39:
In je crontab kan ik geen fout vinden, dus
- draait de cron daemon wel ja, andere scripts draaien wel
- staat de tijd wel goed ingesteld ja, andere scripts worden exact op tijd uitgevoerd
- zijn de scripts wel executable, en de dirs ernaartoe ook (hoewel root) ja
- beginnen de scripts wel met #/bin/sh (of #/bin/bash) nee, #!/bin/bash
- is de target (log)locatie schrijfbaar, zowel evt mount als dir perm ja

Allemaal duhh gevallen, maar wel voorwaarden.

Wellicht ten overvloedde: mijn crontab entries zijn altijd van de vorm
exec /dir/cmd >> file.log 2>&1
In mijn logfiles staat altijd al hoe output naar een logbestand moet worden gestuurd, waarom zou ik dan in de crontab nog ">> file.log" moeten toevoegen? En wat doet "2>&1" en "exec"? Die dingen zou ik dan namelijk nog kunnen proberen.

Avalon, Fireflight, Gaither, Point of Grace, Third Day
C2D E6400 @ 3GHz - Zalman CNPS8000 - GA-P35-DS3 - Corsair 2GB ram - Asus 9400GT - OCZ Vertex 30GB
Archlinux 64-bit + Awesome


  • igmar
  • Registratie: April 2000
  • Laatst online: 31-01 23:50

igmar

ISO20022

jealma schreef op vrijdag 09 maart 2007 @ 22:37:
# m h  dom mon dow   command
0 5 * * * /root/bin/crontab-scripts/database-dump
10 5 * * * /root/bin/crontab-scripts/backup-tib2e
20 5 * * * /root/bin/crontab-scripts/backup-configuration
30 5 * * * /root/bin/crontab-scripts/backup-www

Hou je er ook rekening mee dat cron je environment behoorlijk inperkt ? Je kan er dus niet vanuitgaan dat je dezelfde environment variabelen hebt als in je shell.

  • imdos
  • Registratie: Maart 2000
  • Laatst online: 02-02 11:52

imdos

I use FreeNAS and Ubuntu

En als laatste, controleer of er niet nog eventuele niet leesbare karakters achter je commando's staan.

Ik weet niet of je vi als crontab-editor gebruikt, maar die zou moeten aangeven waar je regel eind is!

pvoutput. Waarom makkelijk doen, als het ook moeilijk kan! Every solution has a new problem

Pagina: 1