/usr/bin/env ruby_noexec_wrapper не работает без файла или каталога
Когда я пытаюсь запустить chef-solr как службу, он не выполняет следующую ошибку
# service chef-solr start
Starting chef-solr: /usr/bin/env: ruby_noexec_wrapper: No such file or directory
[FAILED]
Но когда я запускаю его вручную из командной строки, он успешно работает
# chef-solr -d -c /etc/chef/solr.rb -L /var/log/chef/solr.log -P /var/run/chef/solr.pid
# echo $?
0
# ps -ef | grep chef
root 2691 1 12 04:19 ? 00:00:01 java -Xmx256M -Xms256M -Dsolr.data.dir=/var/lib/chef/solr/data -Dsolr.solr.home=/var/lib/chef/solr/home -jar /var/lib/chef/solr/jetty/start.jar
Вот моя информация о rvm
# rvm info
ruby-1.9.3-p194:
system:
uname: "Linux Console 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux"
bash: "/bin/bash => GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)"
zsh: " => not installed"
rvm:
version: "rvm 1.15.6 (stable) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]"
updated: "7 hours 1 minute 51 seconds ago"
ruby:
interpreter: "ruby"
version: "1.9.3p194"
date: "2012-04-20"
platform: "x86_64-linux"
patchlevel: "2012-04-20 revision 35410"
full_version: "ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]"
homes:
gem: "/usr/local/rvm/gems/ruby-1.9.3-p194"
ruby: "/usr/local/rvm/rubies/ruby-1.9.3-p194"
binaries:
ruby: "/usr/local/rvm/rubies/ruby-1.9.3-p194/bin/ruby"
irb: "/usr/local/rvm/rubies/ruby-1.9.3-p194/bin/irb"
gem: "/usr/local/rvm/rubies/ruby-1.9.3-p194/bin/gem"
rake: "/usr/local/rvm/gems/ruby-1.9.3-p194/bin/rake"
environment:
PATH: "/usr/local/rvm/gems/ruby-1.9.3-p194/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-1.9.3-p194/bin:/usr/local/rvm/bin:/usr/lib64/qt-3.3/bin:/usr/java/default/bin:/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/usr/bin:/root/bin"
GEM_HOME: "/usr/local/rvm/gems/ruby-1.9.3-p194"
GEM_PATH: "/usr/local/rvm/gems/ruby-1.9.3-p194:/usr/local/rvm/gems/[email protected]"
MY_RUBY_HOME: "/usr/local/rvm/rubies/ruby-1.9.3-p194"
IRBRC: "/usr/local/rvm/rubies/ruby-1.9.3-p194/.irbrc"
RUBYOPT: ""
gemset: ""
Вот соответствующие переменные среды
declare -x GEM_HOME="/usr/local/rvm/gems/ruby-1.9.3-p194"
declare -x GEM_PATH="/usr/local/rvm/gems/ruby-1.9.3-p194:/usr/local/rvm/gems/[email protected]"
declare -x IRBRC="/usr/local/rvm/rubies/ruby-1.9.3-p194/.irbrc"
declare -x MY_RUBY_HOME="/usr/local/rvm/rubies/ruby-1.9.3-p194"
declare -x PATH="/usr/local/rvm/gems/ruby-1.9.3-p194/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-1.9.3-p194/bin:/usr/local/rvm/bin:/usr/lib64/qt-3.3/bin:/usr/java/default/bin:/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/usr/bin:/root/bin"
declare -x RUBY_VERSION="ruby-1.9.3-p194"
Как решить эту проблему?
Ответы
Ответ 1
убедитесь, что все переменные установлены правильно, особенно PATH
и GEM_PATH
, вы можете использовать этот код для настройки среды для вас:
source /usr/local/rvm/environments/ruby-1.9.3-p194
добавить его в службу до запуска chef-solr
Ответ 2
Моя проблема была похожей, и мой ответ тоже был:
Моя проблема была
Permission denied - /usr/local/rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper
ruby_noexec_wrapper находился в [email protected]
не в указанном пути
Мое решение было
source /usr/local/rvm/environments/[email protected]
Я поддержал mpapis, потому что его ответ был критическим в поиске моего. Не стесняйтесь повышать его, а не меня. Просто добавьте дополнительный ответ, чтобы попытаться помочь кому-либо с аналогичной проблемой.
Ответ 3
Ответ не связан с шеф-поваром, но может помочь в будущем.
У меня была аналогичная проблема, но поскольку я следил за учебником по настройке тонких в RVM. Я исправил использование обертки, созданной RVM для тонкого обслуживания
/home/thin/.rvm/bin/bootup_thin
поэтому изменилась строка в init script
DAEMON=/home/thin/.rvm/gems/ree-1.8.7-2012.02/bin/thin
к
DAEMON=/home/thin/.rvm/bin/bootup_thin
Сообщение об обертках RVM RVM и тонкий, корневой и локальный пользователь
Ответ 4
Я пробую все эти ответы, все провалилось. Но я нашел другой способ решить эту проблему, может быть полезно:
gem install rubygems-bundler
Вы также можете найти ответ от noexec library
Ответ 5
У меня возникла проблема после установки ruby 2.0 на моем mac. В частности, я установил последнюю версию rvm
rvm get stable
Затем я начал получать эту ошибку. Возможно, после этого я запустил какой-то "гемсет".
В любом случае, для меня это сработало. ПРЕДУПРЕЖДЕНИЕ! Если вы поступите так, как я сделал, ваши гемзеты для рубина, о которых идет речь, будут полностью удалены и перестроены. Может быть, вам нужна новая резервная копия? Но это молот.
# WARNING!!! THIS RECIPE IS POTENTIALLY DESTRUCTIVE!
rvm remove ruby-1.9.3-p194 # this will remove the gemsets for this version as well
rvm install ruby-1.9.3-p194 # time for coffee
rvm use ruby-1.9.3-p194
rvm gemset create aura-rover-config # my gemset name
rvm use [email protected] # do I need to do this? Can't 'member
bundle
# now it all works
Интересной частью этого было все маленькие хаки, которые я сделал в своих установленных гемзетах, и они сдулись. СДЕЛАЙТЕ РЕЗЕРВНОЕ КОПИРОВАНИЕ