2015-03-04 11 views
6

Sono nuovo alla programmazione e sto provando ad ottenere i binari installati sul mio terminale. Ho seguito le istruzioni di un amico, installando gli strumenti della riga di comando xcode, homebrew, git, rbenv, ruby-build, ruby ​​gems, ruby ​​e postgres. Ma ogni volta, provo $ gem install rails, ottengo il seguente:Errore di autorizzazione durante il tentativo di installazione di guide (OSX)

Russell-Silvers-MacBook-Pro:~ Russell_Silver$ gem install rails 
ERROR: While executing gem ... (Errno::EACCES) 
    Permission denied @ rb_sysopen - /Users/Russell_Silver/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/rails-4.2.0/README.md 

Ciò è particolarmente frustrante perché quando corro $ lista gemma, si dice che ho rotaie 3.2.18. Il che è peculiare, perché quando eseguo $ rails v $, mi dice che ho Rails 4.2.0.

Quando provo ad utilizzare le rotaie rails my new_app

Errno::EACCES: Permission denied @ rb_sysopen - /Users/Russell_Silver/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/rails-4.2.0/README.md 
An error occurred while installing rails (4.2.0), and Bundler cannot continue. 
Make sure that `gem install rails -v '4.2.0'` succeeds before bundling. 
     run bundle exec spring binstub --all 
/Users/Russell_Silver/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/bundler-1.8.3/lib/bundler/shared_helpers.rb:83: warning: Insecure world writable dir /Users/Russell_Silver in PATH, mode 040707 
bundler: command not found: spring 
Install missing gem executables with `bundle install` 
Russell-Silvers-MacBook-Pro:~ Russell_Silver$ bundle install 
/Users/Russell_Silver/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/bundler-1.8.3/lib/bundler/vendor/thor/shell/basic.rb:355: warning: Insecure world writable dir /Users/Russell_Silver in PATH, mode 040707 
Could not locate Gemfile or .bundle/ directory 

Questo è davvero frustrante, soprattutto per qualcuno di nuovo alla programmazione come me, quindi sono in cerca di aiuto da qualcuno che potrebbe sapere che cosa è sbagliato.

+0

Come hai installato 'rbenv'? Se hai usato 'sudo' con l'installazione, questo potrebbe essere il comportamento previsto. – kobaltz

+0

Ho usato HomeBrew $ brew install rbenv Qualche idea su come risolverlo? – rsilver

+1

Si potrebbe provare 'sudo chown -R Russell_Silver ~/.rbenv'. Questo diventerà proprietario della directory. – kobaltz

risposta

34

L'installazione rbenv non è stata installata correttamente poiché disponeva di privilegi elevati che non hanno consentito l'accesso in scrittura all'account utente a ~/.rbenv.

Eseguire il seguente comando al fine di prendere di proprietà della directory:

sudo chown -R Russell_Silver ~/.rbenv 

Nota che alcuni utenti potrebbero avere una directory diversa rbenv, per esempio /usr/local/var/rbenv. Questo prenderebbe il posto di ~/.rbenv nel comando precedente.

+0

Ho avuto lo stesso problema. L'esecuzione del comando precedente lo ha risolto. Molte grazie! – Toontje

+0

Ho risolto anche il mio problema ricorrente. Grazie gentilmente – VerticalGrain