Как в ОС UBUNTU инициировать работу контроллеров ( сервисов, отдельных php-скриптов или целых бандлов) Symfony2?
Надо дёргать не контроллеры, а сервисы.
symfony.com/doc/current/cookbook/console/console_c...
symfony.com/doc/current/components/console/introdu...
То есть по крону запускаем команды$ php app/console my-command <options> <arguments>
Которая в свою очередь дёрнет сервис, где и будет вся магия.
Аналогично и в контроллере, дергаем сервис и отдаём Response.
По первому вам уже ответили - используйте сервисный слой. По второму - используйте MQ (например rabbitmq). В этом случае ваша джоба будет периодически собирать новые имейлы и добавлять их в очередь на обработку. Далее обработчики будут брать задачу из очереди и парсить мэйлы. Ну и т.д. Обработчиками могут быть команды симфони и у них может быть доступ к сервисному слою опять же.