Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Подскажите, где ошибка в cron  (Прочитано 1719 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DDDstart

  • Автор темы
  • Участник
  • *
  • Сообщений: 197
  • Linux создан для сети, как птица для полета
    • Просмотр профиля
Подскажите, где ошибка в cron
« : 17 Июня 2009, 08:06:16 »
Простенький скрипт по вытаскиванию прогноза погоды рабатал у меня на altlinux`e
Сейчас запускаю его на убунте.
Сам скрипт работает без проблем.
Но когда пытаюсь его воткнуть в cron, задание не запускается.

В /etc/cron.d/meteo:
---
1 * * * * sh root /usr/local/etc/Pogoda/working/skripts/zagruz_pogody >>/tmp/cron.log 2>&1
---

Логи говорят, что :
---
./meteo: line 1: 1: command not found
---

файл meteo исполняемый права даны на root`a, сам скрипт также исполняемый права за рутом.
Знания у меня еще с altlinux остались. Сомневаюсь в синтаксисе записи. Нужно ли в /etc/cron.d/meteo прописывать команду "sh", но даже если ее убираю ошибку пишет такую же.

по "crontab -l" задание в списке есть.

Неверующие остаются неверующими только до момента своей смерти

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Подскажите, где ошибка в cron
« Ответ #1 : 17 Июня 2009, 08:20:31 »
1 * * * *   root    ( sh /usr/local/etc/Pogoda/working/skripts/zagruz_pogody >> /tmp/cron.log 2>&1 )

Может еще вот так
sh -c '<команда>'
« Последнее редактирование: 17 Июня 2009, 08:24:00 от terrible_user »
Бери больше, кидай дальше

Оффлайн DDDstart

  • Автор темы
  • Участник
  • *
  • Сообщений: 197
  • Linux создан для сети, как птица для полета
    • Просмотр профиля
Re: Подскажите, где ошибка в cron
« Ответ #2 : 17 Июня 2009, 10:53:12 »
Спасибо. Выяснил, что в таком варианте работает:
---
1 * * * * root sh -c `/usr/local/etc/Pogoda/working/skripts/zagruz_pogody`
---
но только если в /etc/cron.d/meteo запустить руками, т.е. сам cron ежеминутно ничего не запускает
Неверующие остаются неверующими только до момента своей смерти

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Подскажите, где ошибка в cron
« Ответ #3 : 17 Июня 2009, 11:07:27 »
Сделай так, и кавычки вот такие '
1 * * * * root sh -c '/usr/local/etc/Pogoda/working/skripts/zagruz_pogody >> /tmp/cron.log'и еще вот так
sudo /etc/init.d/cron restartНе реально, если так не работает то  и бегая кругами кричи караул

Да, вообще-то он и не будет каждую минуту работать, а каждый час в 01 минуту, если ежеминутно надо то ставь
*/1 * * * *
« Последнее редактирование: 17 Июня 2009, 11:13:52 от terrible_user »
Бери больше, кидай дальше

Оффлайн Frank

  • Старожил
  • *
  • Сообщений: 1799
  • Профессиональный любитель
    • Просмотр профиля
    • Народный форум Николаева
Re: Подскажите, где ошибка в cron
« Ответ #4 : 17 Июня 2009, 11:33:16 »
"./meteo: line 1: 1: command not found"
- в строке №1 вашего скрипта стоИт вызов комманды ИЗ ТЕКУЩЕЙ папки. Какая текущая папка при запуске из крона?
ПИШИТЕ ПОЛНЫЕ ПУТИ В СКРИПТАХ.

Оффлайн DDDstart

  • Автор темы
  • Участник
  • *
  • Сообщений: 197
  • Linux создан для сети, как птица для полета
    • Просмотр профиля
Re: Подскажите, где ошибка в cron
« Ответ #5 : 17 Июня 2009, 11:58:02 »
Что удивительно, работает именно с косыми кавычками, при использовании прямых одинарных кавычек, дает ошибку:
root@web:/etc/cron.d# ./meteo
./meteo: line 1: */1: No such file or directory


ВСЕМ СПАСИБО

Итоговый рабочий вариант задачи в cron получился такой:

*/1 * * * * root sh -c `/usr/local/etc/Pogoda/working/skripts/zagruz_pogody >> /tmp/cron.log`

Неверующие остаются неверующими только до момента своей смерти

 

Страница сгенерирована за 0.016 секунд. Запросов: 19.