使用rbenv不适用于sudo?

Bla*_*man 7 ruby ubuntu rbenv

任何使用的命令sudo似乎都不适用于RBenv.

我正在尝试安装ActiveRecord,它说我没有写权限,所以当我尝试这个时:

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions into the /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1 directory.
Run Code Online (Sandbox Code Playgroud)

它说:

sudo: gem: command not found
Run Code Online (Sandbox Code Playgroud)

我怎么能绕过这个?

the*_*Man 12

rbenv和RVM等工具背后的想法是您不需要使用sudo,因为您的整个 Ruby环境都存在于您自己的工作区中作为沙箱.

RVM允许多用户配置,尽管它最初是为单个用户设计的.

就我所见过或读过而言,rbenv仅为单用户.在sudo使用rbenv时,您在任何时候都不需要使用操作或更改Ruby环境.如果你这样做,那就错了.如果你试图使用sudo,你会搞砸了.您可能无法立即找到,但最终会弹出一些内容,您需要将文件的所有权更改回给您.

在Linux和Mac OS上,您可以使用以下方法轻松完成:

sudo chown -R <your_user_name>:<your_group> ~/.rbenv
Run Code Online (Sandbox Code Playgroud)

您必须运行它,sudo因为只有超级用户才能更改root拥有的文件的所有权.sudo升级您的权限以允许您更改这些内容.