Задание Cron не может запустить его. Какой синтаксис использовать для crontab? - PullRequest
0 голосов
/ 01 мая 2011

Я пытаюсь заставить работать рельсы с CRON.Все примеры, которые я нахожу, направляют меня к другим инструментам rails, плагинам, гемам и т. Д., Что хорошо, но я действительно просто хочу использовать CRON, несмотря ни на что.Я могу выполнить свою работу хорошо со следующим, но когда я попробовал cron, мне не повезло (просто, кажется, ничего не делает).Я хочу запускать его каждые 3 минуты (для тестирования).

/usr/bin/env ruby ~/Dropbox/98_2011/webs/apps238/swapper/script/runner /home/durrantm/Dropbox/98_2011/webs/apps238/swapper/app/controllers/scheduled_emails_controller.rb

Я нахожусь в Linux Ubuntu.

Мой PATH имеет:

/var/lib/gems/1.8/bin:/home/durrantm/.rvm/gems/ruby-1.8.7-p302/bin:/home/durrantm/.rvm/gems/ruby-1.8.7-p302@global/bin:/home/durrantm/.rvm/rubies/ruby-1.8.7-p302/bin:/home/durrantm/.rvm/bin:/home/durrantm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/pgsql/bin

Ответы [ 3 ]

1 голос
/ 01 мая 2011

Задания Cron не загружают среду пользователя.Попробуйте добавить RAILS_ENV = production перед вашей командой в crontab или в любой среде, которая вам нужна.

Пример:

RAILS_ENV=production
*/3 * * * * /your/command/here

ИЛИ, если вы хотите убедиться, что у вас есть полная среда вашего пользователя, выполнитекоманда в оболочке входа в систему:

*/3 * * * * bash --login -c '/your/command/here'
1 голос
/ 01 мая 2011

Избавьтесь от символа расширения home dir (замените ~ на / home / user / etc / etc), и вы будете в хорошей форме (вполне вероятно, что расширение cron ~ не соответствует вашим пользователям).

Если другие части синтаксиса мешают, есть простой графический интерфейс.

http://gnome -schedule.sourceforge.net /

sudo apt-get install gnome-schedule

Вам все равно придется исправить путь к вашему rb-файлу.

0 голосов
/ 01 мая 2011

1 - возможно, у вас нет прав. попробуйте запустить crontab -e от имени пользователя root

2 - почему бы не записать файл журнала для устранения проблемы:

* / 3 * * * * / your / command / here >> / path / to / logfile

...