RubyGems les erreurs d'installation, à la fois lors de l'utilisation de 'sudo' et de ne pas utiliser sudo

J'ai un ordinateur sur lequel est installé Ubuntu Hardy, qui dispose de son propre RubyGems paquet. Malheureusement, cette version de RubyGems (1.1.1) est trop vieux pour faire quelque chose d'utile, j'ai donc décidé de mettre à jour manuellement RubyGems à la version actuelle (1.3.6). La partie s'est bien passé, et si je ne gem -v, je reçois 1.3.6 qui est prévu. Le problème, c'est quand j'essaie de faire: sudo gem install rack, il retourne cette erreur:

ERROR:  While executing gem ... (Errno::EACCES)
Permission denied - /home/username/.gem

Habituellement, lorsque je installer des gems en tant que root, il sait installer dans /usr/lib/ruby/gems, alors pourquoi est-il vérifier mon répertoire home? Une autre bizarrerie, c'est quand je ne gem install rack (pas en tant que root), il est dit:

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/lib/ruby/gems/1.8 directory.

qui est l'endroit où je veux aller. J'ai déjà essayé de compensation source_caches, en essayant différentes versions de RubyGems (1.3.5), de forcer l'installation en /usr/lib avec -i en vain. Toutes les idées sur pourquoi RubyGems est l'insistance sur la vérification de mes /home répertoire lors de l'installation en tant que root?

OriginalL'auteur Kenny Peng | 2010-04-21