У меня есть задание cron для запуска скрипта Ruby, который отлично работает в командной строке (от пользователя пользователя), но cron терпит неудачу, потому что он не может найти рубиновый камень TMail. Я вручную установил камень tmail в свой файл ~/.gems/dir, указанный моим скриптом ~/.bashrc, как suggested от Nate.Вызов Rubygem tmail из Dreamhost CRONjob
При вызове вручную из командной строки (на Deadpool сервере)
./home/user/site.com/appdir/testbalances.sh
работает отлично, но из CRONTAB сети -interface (та же команда), я получаю журнал почты:
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in
gem_original_require': no such file to load -- tmail (LoadError) from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in
требуют» от afschriftmonito г/statement_monitor.rb: 7
Строки 6 и 7 из файла afschriftmonitor/statement_monitor.rb: 7 являются
требуют 'RubyGems' требуют 'tmail'
It кажется, что CRON работает с другого сервера или игнорирует файл ~/.bashrc? Как я могу это исправить? Кажется, что у Dreamhost есть определенная проблема, потому что сценарий работает нормально на моем Mac, и, как сказано, отлично от моей учетной записи оболочки Dreamhost. Я озадачен.
Хорошее предложение, я попробовал его и добавил .bashrc в bashscript, который вызывает вызов ruby. Не помогло :-( –
На самом деле это было. Было замешательство в отношении сервера, на котором он работал в Dreamhost, что привело к смешанным сигналам, но этот ответ решил оригинальную проблему. Спасибо за ваши комментарии по моему ответу! –