我在 Ubuntu 10.04 机器上的单个用户帐户下的机器上安装了 RVM,我想让这台机器的其他用户访问相同的安装。
有办法吗?
最佳答案
在二进制 ruby 的情况下,应该可以只移动 RVM。
检查不可移动的 ruby
你可以用
找到有没有不能移动的 rubyrvm all --verbose do rvm config-get configure_args | grep -v -- '--enable-load-relative'
在我的例子中是(只有少数):
jruby-1.7.3: jruby 1.7.3 (1.9.3p385) 2013-02-21 dac429b on OpenJDK 64-Bit Server VM 1.7.0_21-b02 [linux-amd64]
rbx-head: rubinius 2.0.0.rc1 (1.8.7 bed7e913 yyyy-mm-dd JI) [x86_64-unknown-linux-gnu]
ruby-1.8.7-p374: ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
'--prefix=/home/mpapis/.rvm/rubies/ruby-1.8.7-p374' '--disable-install-doc' '--enable-shared' 'CC=ccache gcc' 'CFLAGS=-O3 -O2 -fno-tree-dce -fno-optimize-sibling-calls'
ruby-1.9.3-p448: ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux]
'--prefix=/home/mpapis/.rvm/rubies/ruby-1.9.3-p448' '--disable-install-doc' '--enable-shared' 'CC=ccache gcc'
ruby-2.0.0-p247: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
对于那些带有标志的 ruby ,您需要删除它们或在移动 RVM 后重新安装,在本例中为:1.8.7
和 1.9.3
。
移动RVM
它应该像这样简单:
sudo mv ~/.rvm /usr/local/rvm
__rvm_switch /usr/local/rvm
模拟安装(生成系统安装的shell初始化入口:
rvmsudo rvm get stable --auto-dotfiles
现在,对于每个应该能够使用 RVM 的用户,将他们添加到 rvm
组:
rvmsudo rvm group add rvm $USER
为每个用用户名替换 $USER
的用户重复此操作。
重新安装不可移动的 ruby
对于在第一步运行中发现的 ruby :
rvm reinstall ruby-1.8.7-p374,ruby-1.9.3-p448
清洁
首先安装 RVM 的用户帐户会有旧的初始化代码,您可以通过以下方式找到它:
grep -n rvm ~/.profile ~/.bashrc ~/.bash_profile ~/.bash_login ~/.zshenv ~/.zprofile ~/.zshrc ~/.zlogin
这将显示包含 RVM 的行,在您喜欢的编辑器中打开此文件并将其删除。
关于ruby - 如何全局使用单用户的 RVM 安装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17528950/