Если вы находитесь в производственной среде, вы, вероятно, не хотите устанавливать некоторые из ваших гемов как root, а некоторые другие гемы собираются / устанавливаются вместе с приложением Rails ...
Существует простой способ решить проблему с OP: также установите GEM_PATH и GEM_HOME
Если вы правильно установили переменные среды PATH, GEM_PATH и GEM_HOME для учетной записи root (~ / .bashrc), тогдаВы сможете заставить это работать.например, исполняемый файл единорога должен находиться в корневом каталоге PATH, а связанные с GEM env-переменные должны быть правильно установлены в том месте, где устанавливаются гемы во время «установки пакета» (например, это может быть в домашнем каталоге другого пользователя).
$ cat /root/.bashrc
export PATH=/home/josue/.rvm/gems/ruby-1.9.3-p0/bin:/home/josue/.rvm/gems/ruby-1.9.3-p0@global/bin:/home/josue/.rvm/rubies/ruby-1.9.3-p0/bin:/home/josue/.rvm/bin:$PATH
export GEM_HOME=/home/josue/.rvm/gems/ruby-1.9.3-p0/gems
export GEM_PATH=/home/josue/.rvm/gems/ruby-1.9.3-p0/gems:/home/josue/.rvm/gems/ruby-1.9.3-p0@global/gems
После запуска вы должны также коснуться файла / var / lock / subsys / $ APP_NAME и удалить этот файл после убийства единорогов, чтобы ваша система LINUX знала, что ваше приложение работает.
Этона работе у меня очень хорошо работает.
Обычно я переименовываю скрипт /etc/init.d/unicorn в имя моего приложения, если у меня запущено несколько приложений.