Ivan Dolnák wrote:
Ahoj,
chcel by som vas poprosit o nakopnutie spravnym smerom. Napisal som
kratky skript v Perle, ktory zo sysctl v minutovych intervaloch taha
otacky ventilatorov a hodnoty uklada do RRD databazy. Predpokladam, ze
v skripte chyba nie je. Problem mam vsak s periodickym spustanim
skriptu. Ak ho spustam manualne, vsetko funguje ako ma. Akonahle vsak
necham tuto ulohu na cron, RRD databaza sa neaktualizuje. Kde prosim
vas robim chybu?
#!/usr/local/bin/perl
use warnings;
use strict;
my $fan = 'dev.aibs.0.fan';
my @fans = ();
my $now = time();
@fans = readpipe "sysctl $fan";
for (my $i=0; $i<=2; $i++) {
my @j = split / /, $fans[$i];
$fans[$i] = $j[1]
}
system("rrdtool update cooling.rrd $now:$fans[0]:$fans[1]:$fans[2]");
*/1 * * * * root /usr/local/bin/perl
/usr/local/www/apache22/data/rra/cooling.pl>>
/usr/local/www/apache/data/rra/cron.log 2>&1
A v tom logu cron.log nejsou zadne uzitecne informace? Zadne chybove
hlaseni?
Pripadne neposle se uzivateli, pod jehoz crontabem se script spousti,
nejaky e-mail s chybovou hlaskou? (e-maily jsou dostupne napr. ve
/var/mail/)
Obvyklou chybou byva, ze v cronu neni v PATH nastavene /usr/local/bin,
takze vetsinu podobnych problemu resit pridani do crontabu
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
Mirek
--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l