2015-12-05 3 views
0

Я пытаюсь запустить рубиновую программу, которая является частью проекта RoR из .procmailrc. В командной строке вся строка .procmailrc действие работает отлично, но когда сообщение электронной почты в реальном обрабатываются через Procmail я получаю следующее сообщение об ошибке:Weirdness с запуском программы ruby-on-rails от procmail

/bin/sh: line 1: 12625 File size limit exceeded(core dumped) /usr/bin/rails r test.rb 

test.rb является только простым скриптом, который копирует из STDIN к временному файлу.

Мой .procmailrc является

:0: $HOME/alerts.lock 
* ^X-mailer: X-System Alert Info 
| cd /usr/local/src/Alert; /usr/bin/rails r ./test.rb 

Кто-нибудь есть какие-либо идеи, что происходит?

EDIT: Следует отметить, что замена /usr/bin/rails r ./test.rb на .procmailrc с помощью программы perl, выполняющей то же самое (как test.rb).

+0

http://serverfault.com/questions/429352/file-size-limit-exceeded-in-bash/429369#429369%3a предлагает некоторые возможные подсказки. Изучение основного файла и/или отслеживание системных вызовов должно, по крайней мере, помочь определить, где 'rails' создает огромный файл. – tripleee

ответ

0

Кажется, что, как и во всех других вопросах, связанных с «Ограничением размера файла», это был действительно большой файл. Что бросил меня в том, что

  1. Я бегу 64-разрядной Fedora и думал, что максимальный размер файла 2G не распространяется на 64-битных ОС, и
  2. Размер файла виновника не было даже более 1G !!

Обнаружено это, изменив строку действия рецепта .procmailrc, чтобы запустить ту же программу из другого проекта RoR, и это сработало. Короче говоря, в итоге он оказался файлом development.log в каталоге журнала/каталога проекта. Как я сказал в 2. выше, файл был только 192M, но как только я опорожнил его, начал работать рецепт .procmailrc.