繁体   English   中英

在linux上安装gem的权限错误

[英]Permission errors installing gems on linux

好像只有root才能使用ruby gems(?)

$ gem list

*** LOCAL GEMS ***

$ gem install json
ERROR:  While executing gem ... (Errno::EACCES)
Permission denied - /var/lib/gems/1.9.1

我没有宝石,不能安装任何...

$ sudo gem install json
[sudo] password for bill: 
Building native extensions.  This could take a while...
Successfully installed json-1.8.0
1 gem installed
Installing ri documentation for json-1.8.0...
Installing RDoc documentation for json-1.8.0...

$ sudo gem list

*** LOCAL GEMS ***

json (1.8.0)                    

Root可以安装和查看gem

$ gem list

*** LOCAL GEMS ***

但我的用户看不到他们......

有没有办法让非root用户在linux上使用gem?

- 解决方案 -

感谢您的评论建议我检查/var/lib/gems/1.9.1权限

我已经检查了它们,但在路上错过了/ var / lib / gems

/var/lib/gems# ls -al
total 12
drwxr-x---  3 root root 4096 Oct  3 09:13 .
drwxr-xr-x 59 root root 4096 Oct  3 09:13 ..
drwxr-xr-x  6 root root 4096 Oct  3 09:13 1.9.1

chmod o+rx /var/lib/gems/

我现在可以使用那里已安装的宝石了

不,你不应该尝试rvm或rbenv因为它们都很可怕。 chruby非常轻巧,是最糟糕的情况。

答案是你应该需要sudo来安装系统范围的宝石。 将GEM_HOME设置为〜/ .gems或/path/to/app/.gems以安装每个用户或每个应用程序的gem

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM