2010-08-25 16 views
4

Donc, je suis positif, je l'ai déjà fait un sudo bundle install en désespoir de cause, ce que je comprends maintenant est un non-non. Mais maintenant, quand je tente de lancer bundle install, je reçois l'erreur suivante:Ruby Bundler Autorisation numéro

Installing culerity (0.2.12) /Library/Ruby/Site/1.8/rubygems/installer.rb:294:in `generate_bin': You don't have write permissions into the /Library/Ruby/Gems/1.8/bin directory. (Gem::FilePermissionError) 
    from /Library/Ruby/Site/1.8/rubygems/installer.rb:196:in `install' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/source.rb:100:in `install' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/installer.rb:55:in `run' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/spec_set.rb:12:in `each' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/spec_set.rb:12:in `each' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/installer.rb:44:in `run' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/installer.rb:8:in `install' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/cli.rb:217:in `install' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/vendor/thor/task.rb:22:in `send' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/vendor/thor/task.rb:22:in `run' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/vendor/thor.rb:246:in `dispatch' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/lib/bundler/vendor/thor/base.rb:389:in `start' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.0.rc.6/bin/bundle:13 
    from /usr/bin/bundle:19:in `load' 
    from /usr/bin/bundle:19 

J'ai essayé removeing ​​tout dans ~/.bundle ~/.gem .bundle Gemfile.lock ainsi que toute référence à culerity ou capybara dans/Bibliothèque/Ruby (OSX 10.6). J'ai également vérifié pour m'assurer que les autorisations étaient correctement définies (pas la racine) sur tous mes dossiers dans ce projet. J'ai également effacé le cache de gemme.

Mon Gemfile:

source 'http://rubygems.org' 

gem 'rails', '3.0.0.rc2' 

# Bundle edge Rails instead: 
#gem 'rails', :git => 'git://github.com/rails/rails.git' 

gem 'pg' 

# Use unicorn as the web server 
# gem 'unicorn' 

# Deploy with Capistrano 
# gem 'capistrano' 

# To use debugger 
gem 'ruby-debug' 

# Bundle the extra gems: 
# gem 'bj' 
# gem 'nokogiri', '1.4.1' 
# gem 'sqlite3-ruby', :require => 'sqlite3' 
# gem 'aws-s3', :require => 'aws/s3' 

# Bundle gems for certain environments: 
# gem 'rspec', :group => :test 
# group :test do 
# gem 'webrat' 
# end 

gem 'haml', '3.0.15' 
gem 'mogli', '0.0.13' #, :path => "~/Sites/mogli" 
gem 'facebooker2', '0.0.4' 
gem 'geokit' 
gem 'acts_as_restful_list' 
gem 'hoptoad_notifier' 

group :development, :test do 
    gem "rspec-rails", '2.0.0.beta.19' 
    gem 'factory_girl_rails' 
    gem 'capybara', '0.3.9' 
    gem 'database_cleaner' 
    gem 'cucumber-rails', '0.3.2' 
    gem 'cucumber', '0.8.5' 
    gem 'spork' 
    gem 'launchy' # So you can do Then show me the page 
end 

Aussi, j'ai RVM sur mon système, mais je suis en utilisant le rubis du système pour ce projet.

Des idées sur les causes du problème d'autorisation? Sûrement, je ne suis pas coincé en utilisant sudo bundle install.

Merci.

Répondre

-3

peut-être essayer en utilisant chmod sur tout, mais on dirait que vous aurez besoin de fonctionner comme ... sudo ne sais pas pourquoi ce n'est pas une option ...

+2

Ceci est une très mauvaise suggestion. Aller et chmodding tous vos répertoires système est une mauvaise idée, il y a des raisons pour lesquelles vous devez utiliser sudo pour y accéder. – AboutRuby

0

Essayez de toucher un fichier dans le chemin particulier. Je suppose que OS X protège ces répertoires un peu plus que de la manière normale? Je pense que OS X supporte les ACL avec leur système de fichiers, peut-être que vous devez y regarder?

3

On dirait que vous utilisez le système rubis. Vous avez quelques options:

  • Utilisez sudo pour installer votre système de bundle. cela pourrait être un problème avec des gemmes en conflit provenant de différentes applications.
  • bundle utiliser pour l'installation --path bundle_dir, qui va installer les pierres précieuses dans bundle_dir
  • utilisation RVM (http://rvm.beginrescueend.com), ce programme vous permettra d'utiliser différentes versions de rubis, et différent ensembles de gemmes.