Toon posts:

Cron No such file terwijl bestand wel bestaat

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een probleem.
Ik heb een script gemaakt dat in de map /home/frank/ staat met de naam backupscript. Om het uit te voeren doe ik dus gewoon /home/frank/backupscript en dan werkt het script perfect.

Nu wil ik dit script elke dag runnen rond een uur of 1 's nachts. Dus ik crontab -e en daar de volgende regel toegevoegd.
1 15 * * * /home/frank/backupscript

Krijg ik deze foutmelding:
/home/frank/backupscript: line 9: ntpdate: command not found
About to execute 'mkisofs -R -J /var/www/html/Bratstats/ | builtin_dd of=/dev/cdrom1 obs=32k seek=0'
:-( unable to execute mkisofs: No such file or directory
:-( write failed: Input/output error

Hoe kan het dat het script prima werkt als je het gewoon vanaf de commandline uitvoert en zodra je het in een cronjob zet het niet meer werkt?

  • xantos
  • Registratie: Juni 1999
  • Niet online
voer je dit uit met hetzelfde user-account?
Misschien moet je de inhoud van je backupscript eens posten hier..

[ Voor 45% gewijzigd door xantos op 07-08-2004 15:38 ]


Verwijderd

Topicstarter
Ik voer dit uit als zijnde root, maar dat is cron toch ook??

Voor de volledigheid, het script.
code:
1
2
3
4
5
ntpdate ntp.xs4all.nl
wait

/home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs -use-the-force-luke -R -J -Z /dev/cdrom1 /var/www/html/Bratstats/
wait

  • Kees
  • Registratie: Juni 1999
  • Laatst online: 18-02 12:35

Kees

Serveradmin / BOFH / DoC
path staat waarschijnlijk niet goed, gebruik volledige pathnamen in je script, of PATH="dirs:${PATH}"

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


  • xantos
  • Registratie: Juni 1999
  • Niet online
met 'whereis ntpdate' kun je kijken waar het bestand echt staat. Dan vervolgens inderdaad het volledige path gebruiken of je PATH variable goed zetten.

Verwijderd

Topicstarter
Maar het gaat vooral om deze regel die niet wil.
/home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs -use-the-force-luke -R -J -Z /dev/cdrom1 /var/www/html/Bratstats/

Die ntpdate werkt inderdaad nu

  • frim
  • Registratie: Augustus 2001
  • Niet online
dat growisofs is waarschijnlijk ook een script dat mkisofs oproept. He tscript wordt gestart in een subshell en omdat je je nieuwe PATH niet hebt ge-export wordt deze niet doorgegeven. Probeer dus "export PATH" toe te voegen aan je script of iets als

PATH="dirs:${PATH}" /home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs -use-the-force-luke -R -J -Z /dev/cdrom1 /var/www/html/Bratstats/

Verwijderd

Topicstarter
Dus als ik dit in mijn script zet (letterlijk zo?? ik snap niet echt wat de bedoeling is namelijk)
code:
1
PATH="dirs:${PATH}" /home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs -use-the-force-luke -R -J -Z /dev/cdrom1 /var/www/html/Bratstats/


Dan zou het moeten werken??
Want er gebeurt namelijk vrij weinig.

  • Kees
  • Registratie: Juni 1999
  • Laatst online: 18-02 12:35

Kees

Serveradmin / BOFH / DoC
kijk even waar mkisofs en ntpdate staan (welke dirs) en doe dan iets alla
code:
1
2
3
export PATH="/dir/van/ntpdate:/dir/van/mkisofs:${PATH}"
ntpdate ...
/home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs ....

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


Verwijderd

Topicstarter
Het script is nu zo, maar dit werkt helemaal niet.
code:
1
2
3
export PATH="/home/installatie/mkisofs-1.11.3/"

/home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs -use-the-force-luke -R -J -Z /dev/cdrom1 /var/www/html/Bratstats/


Ik doe waarschijnlijk iets verkeerd met dat path

Verwijderd

Verwijderd schreef op 07 augustus 2004 @ 17:24:
Het script is nu zo, maar dit werkt helemaal niet.
code:
1
2
3
export PATH="/home/installatie/mkisofs-1.11.3/"

/home/installatie/dvd+rw-tools-5.20.4.10.8/growisofs blabla


Ik doe waarschijnlijk iets verkeerd met dat path
Ja nu heb je alleen die dir in je path staan. Je moet dus doen:
code:
1
export PATH="/home/installatie/mkisofs-1.11.3/:${PATH}"

vergeet dus niet de ":${PATH}", anders staan /bin /usr/bin etc niet meer in je path.

[ Voor 9% gewijzigd door Verwijderd op 07-08-2004 17:29 ]


Verwijderd

Topicstarter
Mensen de oplossing, tenminste zoals het nu bij mij lijkt te werken.

Laat het script zoals het is, het bestand 'mkisofs' staat in de dir /usr/local/bin. Voeg aan de cron de volgende regel toe en het werkt allemaal prima.

code:
1
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin


Nu zoekt hij ook deze mappen na en vindt hij het bestand wel.

Bedankt voor de tips met path toen kwam ik op het juiste spoor.
Pagina: 1