我在我的服务器上运行了一个rails项目,我使用ssh连接服务器以启动/停止/重启rails项目与终端,如果我不关闭终端,它运行良好,但当我关闭终端时,该项目开始引发错误(但并非总是如此):
LoadError(无法加载此类文件 - devise / parameter_filter) ....
等等。
当我完成这个过程时,我发现rvm路径是变化的,
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME ruby 18168 wacom cwd DIR 252,0 4096 2108629 /app/service/wacom/releases/20131215130012 ruby 18168 wacom rtd DIR 252,0 4096 2 / ruby 18168 wacom txt REG 0,22 112181 139104 /.rvm/rubies/ruby-2.0.0-p247/bin/ruby ruby 18168 wacom mem REG 0,22 220552 1053141 /.rvm/gems/ruby-2.0.0-p247/gems/bcrypt-ruby-3.1.2/lib/bcrypt_ext.so .........
但是当我保持终端打开时,它运行良好,并且lsof结果是
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME ruby 18168 wacom cwd DIR 252,0 4096 2108629 /app/service/wacom/releases/20131215130012 ruby 18168 wacom rtd DIR 252,0 4096 2 / ruby 18168 wacom txt REG 0,22 112181 139104 /home/wacom/.rvm/rubies/ruby-2.0.0-p247/bin/ruby ruby 18168 wacom mem REG 0,22 220552 1053141 /home/wacom/.rvm/gems/ruby-2.0.0-p247/gems/bcrypt-ruby-3.1.2/lib/bcrypt_ext.so .......
我设置了[[-s“$ HOME / .rvm / scripts / rvm”]]&& 。 .bashrc上的“$ HOME / .rvm / scripts / rvm”并有源〜/ .rvm / scripts / rvm
任何人都有同样的问题或者可以帮助我吗? THX !!
答案 0 :(得分:0)
你需要使用包装器,它们将确保适当的红宝石环境,因为它是rvm 1.25:
ls `gem env gemhome`/wrappers/unicorn_rails
还检查用于处理rvm和ruby环境的示例脚本=> http://rvm.io/integration/init-d
答案 1 :(得分:0)
我发现我们的服务器系统使用了ecryptfs
,因此当用户注销时,用户dir将卸载,然后系统无法在用户目录中找到rvm路径并重定向到/.rvm!谢谢大家回答我的问题!