2011-02-27 33 views
6

我在通過Capistrano的Passenger上部署我的應用程序時出現問題。在Gemfile.lock上拒絕的權限

我似乎無法擺脫權限被拒絕 -/bundler/definition.rb /path/to/app/Gemfile.lock。有沒有人有過這個?

我已經嘗試chmoding和chowning文件,但沒有幫助。

有其他人有問題嗎?

回溯是

/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler/definition.rb 184 in `initialize' 
/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler/definition.rb 184 in `open' 
/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler/definition.rb 184 in `lock' 
/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler/environment.rb 39 in `lock' 
/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler/runtime.rb 35 in `setup' 
/usr/local/rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler.rb 100 in `setup' 

UPDATE:後查看以下鏈接 - here,我設法通過捆綁上開發,然後recommiting的Gemfile.lock的來解決該問題。

+0

面對完全相同的異常。你是否設法將錯誤擺脫? – xecutioner

+0

嘗試在本地重新運行bundle安裝,並在再次部署之前重新提交Gemfile.lock。爲我工作 –

+0

我升級了服務器中的捆綁器版本,錯誤消失了。謝謝。 – xecutioner

回答

6

嘗試刪除Gemfile.lock並在您的服務器上運行bundle install

+0

嗨凱文,我已經嘗試過,但不幸的是沒有喜悅。什麼用戶/組做Passenger訪問文件?我作爲根源ssh'ed。這可能與此有關嗎? –

+1

要回答這個問題,請從文檔中找到:「Rails應用程序作爲文件'config/environment.rb'的所有者啓動,Rack應用程序作爲文件'config.ru'的所有者啓動。因此,如果'/ home/webapps/foo/config/environment.rb'由'joe'擁有,那麼Phusion Passenger也會以'joe'啓動相應的Rails應用程序。「 –

+0

工作就像一個魅力,即時通訊也運行乘客 – Francois

0

這是值得檢查鎖文件的所有者。在我運行'sudo bundle install'的時候進入了這個環境,因爲我一直在爲所有用戶安裝gemfiles。後來快速的「chown」,一切都被排序。