Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Запуск скриптов в Crontab
 
Вот написал скриптик:
a=echo "select sysdate from dual | sqlplus -s imja/parol@server"
вручную стартует на ура, через крон - возвращает пустой результат. Подскажите, в чем может быть проблема?
 
Чего-нибудь с правами или с путями к sqlplus (в смысле /usr/sbin/sqlplus или где он там лежит)
 
Вот набрал: ls -l sqlplus. Получил:

-rwxr-x--x 1 oracle oinstall .....

Вроде права на выполнение у всех есть. Пробовал запускать в кроне и от root и от oracle, все одно не работает, а вручную..., ну хоть бы чихнул, чтоб я знал где искать.
 
а может крон chroot делает? (хотя бред, по-моему)
 
переменные окружения в скрипте прописал?
 
Попробуй strace
 
А если в конце строки скрипта прописать перенаправление в файл? Например > /var/log/scriptlog.txt. Попробуй. В Кроне он же КУДА_ТО должен выдавать результаты? Когда ты врукопашную задаёшь - выход валится в консоль. А когда стартует в кроне - то (по идее должен в /var/log/messages). Поиграйся также дескрипторами 1 и 2.
 
Вот вариант:
Вторая строка
echo $a > /var/log/scriptlog.txt.
И КСТАТИ! Ты не забыл в начале скрипта прописать путь к шеллу? Вида #! /bin/sh. Ну и права дать на исполнение самого скрипта? chmod +x scriptname. Хотя... Если ты говоришь, что запускается вручную....
 
Попробуйте вариант с утилитой run-parts. То есть кладете свой скрипт в папку, и прописываете ее в рутовском кронтабе.
 
Всем огромное спасибо!!! Фокус был в том, чтобы экспортировать переменные скрипта. Хотя непонятно, почему ему не хватило их простого объявления.
Страницы: 1
Читают тему