سؤال

عند محاولة تثبيت الأحجار الكريمة باستخدام RVM ، أحصل على هذا الخطأ

$ rvm gem install sproutcore
ERROR:  While executing gem ... (Errno::EACCES)
Permission denied - /home/tee/.gem/specs

لكنه يقول على موقع RVM أنه يجب ألا تستخدم Sudo ، لذا لست متأكدًا من الخطأ في الإعداد الخاص بي

عندما أكتب $ gem_home ، يوضح أن الدليل يشير إلى RVM Dir

$GEM_HOME
bash: /home/tee/.rvm/gems/ruby-1.8.7-p302: is a directory

أي أفكار ما أفعله خطأ؟

هل كانت مفيدة؟

المحلول

هناك مشكلة إذن مع مجلد .gem الخاص بك. تأكد من أن المالك هو مستخدمك الحالي.

sudo chown -R tee /home/tee/.gem

إذا لم ينجح ، قم بإزالة مجلد .gem. يتم إنشاؤه تلقائيًا عند تحديث ذاكرة التخزين المؤقت GEM.

أيضا ، تأكد من أنك لم تستخدم sudo مع RVM.

نصائح أخرى

كانت لدي نفس المشكله. أنا أعيد هذا الأمر

مصدر $ $ ~/.rvm/scripts/rvm

من نافذة طرفية جديدة (كما هو مقترح عند تثبيت RVM وربما يتم التغاضي عنها عندما كنت أقوم بتثبيت RVM) ويبدو أن الأمور على ما يرام بعد ذلك

http://rvm.io/set/gem/

أو فقط

$ rvm <ruby_version>
$ gem install sproutcode

هذا يجب أن يعمل بالتأكيد.

ربما لا تكون الطريقة الصحيحة لفعل الأشياء ، لكنني وجدت أن استخدام RVMSUDO حل المشكلة ، على سبيل المثال

RVMSUDO GEM تثبيت القضبان

كنت أواجه نفس المشكلة لأنه تم تثبيت RVM على مستوى العالم ، في/usr/local/rvm ، لذلك لم يكن لديه إذن لتثبيت GEMS في دليل Ruby.

يتمثل الحل البديل في استخدام تثبيت المستخدم المفرد ، وسيؤدي ذلك إلى تثبيت RVM في Home DirectTory (~/.rvm) بحيث يكون لها جميع الأذونات اللازمة لتثبيت الأحجار الكريمة والأحجار الكريمة.

إذا كنت تريد معرفة الموضوع بشكل أفضل قراءة https://rvm.io/rvm/install . سترى أن تثبيت المستخدم الفردي هو الموصى به.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top