Cannot use RVM-installed Ruby with sudo

∥☆過路亽.° 提交于 2019-11-27 07:03:36

Use rvmsudo command instead of sudo

Taking @calas' answer one step further, add this to your ~/.bashrc:

alias sudo=rvmsudo

This avoids the requirement of having to remember to change sudo to rvmsudo for every command (particularly annoying for copy/pasted commands).

Brandon Yarbrough

Sudo is resetting your PATH. rvm works by modifying your PATH environment variable so that the ruby you're using is a particular one, probably in your ~/.rvm/rubies directory. When you ruby ruby with sudo, sudo is not using that modified PATH, and so it will not find your rvm ruby. See this question for workarounds: sudo changes PATH - why?

@calas's answer is the answer. but If you can't achieve your goal by using rvmsudo, e.g. install the nginx using the command passenger-install-nginx-module, please just change the owner of the related folder/path. e.g.

$ chown <your_username>:<your_group> /opt -R
$ passenger-install-nginx-module
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!