/ 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 , Michal Papis  [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/ruby-1.9.3-p194@global/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/ruby-1.9.3-p194@global" 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/ruby-1.9.3-p194@global" 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/ruby-1.9.3-p194@global/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" 

如何解决此问题?

确保所有变量都设置正确,尤其是PATHGEM_PATH ,您可以使用此代码为您设置环境:

 source /usr/local/rvm/environments/ruby-1.9.3-p194 

chef-solr运行之前将其添加到服务中

我的问题很相似,我的答案也是如此:

我的问题是

 Permission denied - /usr/local/rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper 

ruby_noexec_wrapper在ruby-1.9.3-p194@global不在列出的路径中

我的解决方案是

 source /usr/local/rvm/environments/ruby-1.9.3-p194@global 

我赞成使用mpapis,因为他的答案对于找到我的答案至关重要。 随意支持他而不是我。 只需添加一个额外的答案,尝试并帮助任何有类似问题的人。

答案与厨师无关,但将来可能有所帮助。

我有一个类似的问题,但因为我正在按照教程在RVM中设置精简版。 我通过使用RVM生成的包装器来修复瘦服务

 /home/thin/.rvm/bin/bootup_thin 

因此在init脚本中更改了行

 DAEMON=/home/thin/.rvm/gems/ree-1.8.7-2012.02/bin/thin 

 DAEMON=/home/thin/.rvm/bin/bootup_thin 

在RVM包装器上发布RVM和瘦,root与本地用户

我尝试了所有这些答案,都失败了。 但我找到了解决这个问题的另一种方法,可能会有所帮助:

 gem install rubygems-bundler 

您还可以从noexec库中找到答案

我在我的mac上安装ruby 2.0后遇到了这个问题。 部分原因是我安装了最新的rvm

 rvm get stable 

然后我开始收到此错误。 也许我在此之后运行了一些’gem原始’。

无论如何,对我来说,这是有效的。 警告! 如果按照我的方式继续操作,那么有问题的ruby的gem将被完全删除并重建。 也许你想要一个新的备份? 但这就是锤子。

 # 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 ruby-1.9.3-p194@aura-rover-config # do I need to do this? Can't 'member bundle # now it all works 

有趣的部分是,我在已安装的gem中制作的所有小黑客,那些被吹走的东西。 做备份