Скрипт в cron не срабатывает

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
maniaque
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-06-27 11:46:55

Скрипт в cron не срабатывает

Непрочитанное сообщение maniaque » 2009-04-27 19:31:53

Всем привет. Заранее прошу прощения, если вопрос идиотский, просто везде покопал вроде.

Есть необходимость запускать webalizer каждые 10 минут для построения статистики в нужный мне каталог, ее потом тянуть через инет с апача.

Код: Выделить всё

#!/bin/sh

for siteName in weather; # вот сюда массивом будут дописываться новые сайты
	do
	
	# задаю переменные
	tempLog=/var/tmp/$siteName.temp.log;
	log1=/var/www/$siteName.mydomain.ru/logs/access.log;
	log2=/var/www/$siteName.mydomain.ru/logs/nginx.access.log;
	folder1=/var/www/stats.mydomain.ru/www/$siteName/;
	folder2=/var/www/stats.mydomain.ru/www/$siteName/current;

	# удаляю старый временный файл, если он вдруг есть
	if [ -f $tempLog ];
	then
		rm $tempLog;
	fi

	# сливаю в кучку логи
	mergelog $log1 $log2 > $tempLog

	# проверяю существование папки folder1, если ее нет - создаю
	if [ ! -d $folder1 ];
	then
		mkdir $folder1;
	fi

	# проверяю существование папки folder2, если ее нет - создаю
	if [ ! -d $folder2 ];
	then
		mkdir $folder2;
	else
		# если такая папка уже есть, чищу ее
		rm -r $folder2/*.*;
	fi

	# апорт! т.е. фас!
	webalizer -o $folder2 -t $siteName $tempLog > /dev/null

	# разрешаю доступ к папке
	chmod -R 755 $folder1;

	# гашу временный файл
	if [ -f $tempLog ];
	then
		rm $tempLog;
	fi
done; 
В итоге, когда запускаю скрипт руками - все работает на ура. Ставлю на запуск через cron - не работает. Скрипт запускается (в логах есть), папки создает, однако ощущение такое, что webalizer на вход ничего не получает, т.е. папки пустые остаются.

Буду благодарен за любую помощь.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение hizel » 2009-04-27 19:40:41

внедрять полные пути для всех не built-in команд есть гут и карашо :pardon:
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
maniaque
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-06-27 11:46:55

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение maniaque » 2009-04-27 19:48:16

Спасибо, пошел пробовать :) Что-то говорит мне, что тут-то я и лоханулся :))

Аватара пользователя
maniaque
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-06-27 11:46:55

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение maniaque » 2009-04-27 19:52:58

Не помогло. Заменил вызов webalizer на /usr/local/bin/webalizer, но скрипт по-прежнему не отрабатывает.

Смущает меня то, что скрипт тоже выполняет команды от root, а у меня они в path явно прописаны, если webalizer работает интерактивным вызовом.

Аватара пользователя
abanamat
сержант
Сообщения: 255
Зарегистрирован: 2007-03-15 11:24:26
Откуда: Питер
Контактная информация:

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение abanamat » 2009-04-27 20:43:49

maniaque писал(а):Не помогло. Заменил вызов webalizer на /usr/local/bin/webalizer, но скрипт по-прежнему не отрабатывает.
which mergelog

Аватара пользователя
maniaque
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-06-27 11:46:55

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение maniaque » 2009-04-27 20:50:58

which mergelog
Спасибо :) Это и решило проблему, слона-то я и не заметил :) Я просто к нему целиком путь прописал. Но за which - спасибо, не знал.

Аватара пользователя
FenX
ст. прапорщик
Сообщения: 513
Зарегистрирован: 2008-04-23 17:46:53
Откуда: Moscow
Контактная информация:

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение FenX » 2009-04-28 0:26:28

вообще, самый просто вариант, чтобы в дальнейшем не напарываться:
в crontab`е прописать

Код: Выделить всё

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

Phantom
проходил мимо

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение Phantom » 2012-08-01 7:52:59

Сделал я небольшой скрипт по рандомной смене обоев рабочего стола. Занес в крон(естественно под обычным пользователем) с интервалом минута. Он срабатывает, но обои не меняются. Если скрипт просто запустить под тем же пользователем, то обои красиво меняются. Подскажите где запердуха?
Собственно сам скрипт

Код: Выделить всё

#!/bin/sh
cd ~/
PICT=$(ls Walpapers | shuf -n 1)
gsettings set org.gnome.desktop.background picture-uri "file:///home/andrew/Walpapers/$PICT"
exit 0
Запись по crontab -e

Код: Выделить всё

*/1 * * * *     /usr/bin/autowalpaper.sh
Ошибок нигде нет. :st:
По правам

Код: Выделить всё

-rwxr-xr-x 1 andrew andrew 156 2012-07-31 07:57 /usr/bin/autowalpaper.sh
Сислоги
Jul 31 07:41:01 localhost CRON[2238]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:42:01 localhost CRON[2336]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:43:01 localhost CRON[2389]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:44:01 localhost CRON[2428]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:45:01 localhost CRON[2524]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:46:01 localhost CRON[2643]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:47:01 localhost CRON[2741]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:48:01 localhost CRON[2779]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:49:01 localhost CRON[2859]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:50:01 localhost CRON[2901]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Jul 31 07:51:01 localhost CRON[2965]: (andrew) CMD (/usr/bin/autowalpaper.sh)
Думал, что рандом затыкается на одной и той же картинке, но вручную он всегда разный....

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Скрипт в cron не срабатывает

Непрочитанное сообщение FreeBSP » 2012-08-01 10:37:14

Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!