我一個完整的noob部署Rails的生產環境,和我看到Capistrano的退出並出現以下錯誤:「cap aborted!」 - Capistrano在嘗試chown /tmp/passenger.RWBkftW/時中止Rails部署。與fileutils.rb
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as [email protected]: passenger-config exit status: 1
passenger-config stdout: *** Cleaning stale instance directory /tmp/passenger.RWBkftW
/home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `chown': Operation not permitted @ rb_file_chown - /tmp/passenger.RWBkftW/. (Errno::EPERM)
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `block in remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `open'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:93:in `cleanup'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:49:in `block in list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `each'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/utils.rb:53:in `select_passenger_instance'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/restart_app_command.rb:44:in `run'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/main.rb:75:in `run!'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/bin/passenger-config:37:in `<top (required)>'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `load'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `<main>'
passenger-config stderr: Nothing written
SSHKit::Command::Failed: passenger-config exit status: 1
passenger-config stdout: *** Cleaning stale instance directory /tmp/passenger.RWBkftW
/home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `chown': Operation not permitted @ rb_file_chown - /tmp/passenger.RWBkftW/. (Errno::EPERM)
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `block in remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `open'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:93:in `cleanup'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:49:in `block in list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `each'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/utils.rb:53:in `select_passenger_instance'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/restart_app_command.rb:44:in `run'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/main.rb:75:in `run!'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/bin/passenger-config:37:in `<top (required)>'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `load'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `<main>'
passenger-config stderr: Nothing written
Tasks: TOP => passenger:restart
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing as [email protected]: passenger-config exit status: 1
passenger-config stdout: *** Cleaning stale instance directory /tmp/passenger.RWBkftW
/home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `chown': Operation not permitted @ rb_file_chown - /tmp/passenger.RWBkftW/. (Errno::EPERM)
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:726:in `block in remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `open'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/2.2.0/fileutils.rb:720:in `remove_entry_secure'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:93:in `cleanup'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:49:in `block in list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `each'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/admin_tools/instance_registry.rb:42:in `list'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/utils.rb:53:in `select_passenger_instance'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/restart_app_command.rb:44:in `run'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/lib/phusion_passenger/config/main.rb:75:in `run!'
from /home/deploy/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/passenger-5.0.7/bin/passenger-config:37:in `<top (required)>'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `load'
from /home/deploy/.rbenv/versions/2.2.1/bin/passenger-config:23:in `<main>'
passenger-config stderr: Nothing written
[[email protected] rally_app]$
這個問題似乎有什麼東西做的Phusion乘客的配置和也許是部署用戶的權限,但我不知道如何繼續。
在此先感謝您的幫助。
更新:錯誤似乎是,乘客在/ tmp/root用戶,但隨後試圖清理/刪除作爲由乘客承擔,因爲「部署」中的「部署」用戶創建文件擁有environments.rb。
在/ tmp /迪爾斯樣子:
4 drwxr-xr-x. 4 root root 4096 May 20 14:15 passenger.Jy8mOoq/
4 drwxr-xr-x. 4 root root 4096 May 5 07:14 passenger.jZAgQb1/
4 drwxr-xr-x. 4 root root 4096 May 7 07:13 passenger.M9fxTPM/
4 drwxr-xr-x. 4 root root 4096 May 6 13:12 passenger.RWBkftW/
我不認爲這是與乘客的問題;我的'部署'用戶的權限似乎更可能是一個問題。我按照Capistrano的說明設置了部署用戶here
乘客運行無論用戶擁有environment.rb,在我的情況下,已經是用戶'部署'。 – CryptoPiggy