我有一个管理员用户,负责处理重要事务,还有一个标准用户,负责处理日常任务,包括前端开发。在管理员用户上,我可以安装 Brew、RVM、Middleman 等。但在标准用户上,我计划使用 Middleman 进行开发,但由于权限问题,我无法安装。
有办法解决这个问题吗?
如果我尝试这样做:$ sudo gem install middleman 我会得到这个:JoelCipriano 不在 sudoers 文件中。此事件将被报告。
如果我尝试这个:gem install middleman 我会得到这个:错误:执行 gem ... (Gem::FilePermissionError) 时您没有对 /Library/Ruby/Gems/1.8 目录的写权限。
答案1
您已经在系统模式下安装了 rvm,因此 rvm 将所有 gem 安装定向到系统文件夹,该文件夹需要管理权限。
您需要完全删除 rvm,然后重新安装用户模式下的 rvm(不确定如何操作,我只是从阅读中知道这是可行的。)或安装 rbenv。这两种方法都会将您的 ruby 环境(以及 gem)放在不需要管理权限的主目录中。
请注意,RVM 和 Rbenv 不能很好地协同工作。在任何情况下都不要同时安装两者。(我曾经在意外安装了两者后不得不擦除我的 iMac。)
Homebrew 以系统为中心,您可能无法在用户模式下安装 rvm/rbenv。我建议改用开发人员提供的常规安装指南。