J'ai installé ruby sur mon ubuntu 16.04.
$which ruby
/usr/bin/ruby
$ruby -v
ruby 2.3.0p0 (2015-12-25) [x86_64-linux-gnu]
$gem install bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /var/lib/gems/2.3.0 directory.
Toute aide sera fortement appréciée!
rubygems
gem-bundler
Derek
la source
la source
Réponses:
Vous devez d'abord désinstaller le ruby installé par Ubuntu avec quelque chose comme
sudo apt-get remove ruby
.Ensuite, réinstallez ruby en utilisant rbenv et ruby-build en fonction de leurs documents:
La dernière étape consiste à installer Bundler:
Alors profitez-en!
Derek
la source
vim-gnome
par exemple). Je suppose que je préférerais savoir pourquoi, en premier lieu, il faut écrire/var/lib/...
pour une installation utilisateur ... Ai-je fait unesudo gem install
quand je n'en ai pas besoin?Ctrl+Alt+F1
et exécutez les commandes suivantes (désinstalle et installe à nouveau Cinnamon):sudo apt purge cinnamon && sudo apt install cinnamon
rbenv install -l
pour une liste de toutes les versions disponibles puisrbenv install 2.5.1
pour la version 2.5.1 ou ce que vous voudrez.Si vous souhaitez utiliser la distribution Ruby au lieu de rb-env / rvm, vous pouvez configurer un
GEM_HOME
pour votre utilisateur actuel. Commencez par créer un répertoire pour stocker les gemmes Ruby pour votre utilisateur:Ensuite, mettez à jour votre shell pour utiliser ce répertoire pour
GEM_HOME
et pour mettre à jour votrePATH
variable pour inclure le répertoire bin de Ruby gem.(Cette dernière ligne rechargera les variables d'environnement dans votre shell actuel.)
Vous devriez maintenant pouvoir installer des gemmes Ruby sous votre utilisateur à l'aide de la
gem
commande. J'ai pu le faire fonctionner avec Ruby 2.5.1 sous Ubuntu 18.04. Si vous utilisez un shell qui n'est pas Bash, vous devrez modifier le script de démarrage de ce shell au lieu debashrc
.la source
(Janvier 2019) Pour installer Ruby à l'aide du script Rbenv, procédez comme suit:
1. Tout d'abord, mettez à jour l'index des packages et installez les packages requis pour que l'outil ruby-build puisse générer Ruby à partir des sources:
2. Ensuite, exécutez la commande curl suivante pour installer à la fois rbenv et ruby-build:
3. Ajoutez $ HOME / .rbenv / bin au PATH système.
Si vous utilisez Bash, exécutez:
Si vous utilisez Zsh exécutez:
4. Installez la dernière version stable de Ruby et définissez-la comme version par défaut avec:
5. Vérifiez que Ruby a été correctement installé en imprimant le numéro de version:
SOURCE: Comment installer Ruby sur Ubuntu 18.04
EDIT: Installez rubygems:
la source
.zshrc
changements que j'ai faits à la main) et cela a parfaitement fonctionné. De la même façon que vous avez ajouté comment installerrubygems
, je vous suggère d' ajouter peut - être comment mettre à jour plus tard , la version Ruby installée (je devine que vous avez juste lesrbenv install
etrbenv global
commandes à nouveau et peut - êtrerbenv uninstall
élaguer versions obsolètes)Plutôt que de changer de propriétaire, ce qui pourrait verrouiller d'autres utilisateurs locaux, ou - un jour - votre propre serveur / déploiement-choses Ruby ... fonctionnant sous un autre utilisateur ...
Je préférerais simplement étendre les droits de ce dossier particulier à ... eh bien, tout le monde:
(J'ai également rencontré votre erreur. C'est donc assez vérifié.)
la source
Essayez d'utiliser
chown -R
sur levar/lib/gems
répertoire, en attribuant la propriété à l'utilisateur [rubyusername
] dans cet exemple, l'utilisateur qui va installer et développer avec des gemmes.Cela modifie tout de manière récursive dans le répertoire gems . Pour plus de sécurité sur les systèmes multi-utilisateurs, vous pouvez également créer un groupe, plutôt que de chown le nom d'utilisateur ruby individuel, et ajouter des utilisateurs à ce groupe.
la source
En s'appuyant sur la réponse de Derek ci-dessus, il n'est généralement pas recommandé d'utiliser l'instance Ruby fournie par le système pour votre propre travail de développement, car les outils système peuvent dépendre de la version ou de l'emplacement particulier de l'installation de Ruby. Semblable à cette réponse pour Mac OSX , vous voudrez suivre les instructions de derek sur l'utilisation de quelque chose comme rbenv ( RVM est une alternative similaire) pour installer votre propre instance Ruby.
Cependant, il n'est pas nécessaire de désinstaller la version système de Ruby, les instructions d'installation de rbenv fournissent un mécanisme pour s'assurer que l'instance de Ruby disponible dans votre shell est l'instance de rbenv, pas l'instance du système. C'est le
ligne dans la réponse de Derek.
la source
J'ai rencontré la même erreur dans les actions GitHub. L'ajout a
sudo
résolu le problème.la source
Réinstaller Compass a fonctionné pour moi. C'est une magie!
la source
Ubuntu 20.04:
Option 1 - configurer un répertoire d'installation de gem pour votre compte utilisateur
Pour bash (pour zsh, nous utiliserions
.zshrc
bien sûr)Option 2 - utiliser Snap
Désinstallez apt-version (
ruby-full
) et réinstallez-le avecsnap
la source