J'essaie de configurer gitlab et d'installer ainsi quelques pierres précieuses à partir d'un autre compte d'utilisateur utilisant Sudo, .__, mais je reçois constamment l'erreur Permission denied
.
Sudo -u gitlab -H bundle install --deployment --without development test postgres
> Using ... ( a lot of successful gems there )
> Using pygments.rb (0.3.2) from https://github.com/gitlabhq/pygments.rb.git (at master)
> Errno::EACCES: Permission denied - pygments.rb-0.3.2.gem
> An error occurred while installing pygments.rb (0.3.2), and Bundler cannot continue.
> Make sure that `gem install pygments.rb -v '0.3.2'` succeeds before bundling.\
Sudo -u gitlab -H gem install pygments.rb -v '0.3.2'
> Successfully installed pygments.rb-0.3.2
> 1 gem installed
> Installing ri documentation for pygments.rb-0.3.2...
> Installing RDoc documentation for pygments.rb-0.3.2...
# no matter how many times I run this command, I always get the same output
# as if the gem installation doesn't stick
# I've tried to chmod
chmod 777 -R /usr/local/lib/Ruby
# then Again
Sudo -u gitlab -H bundle install --deployment --without development test postgres
# same result, Errno::EACCES: Permission denied - pygments.rb-0.3.2.gem
Lain a suggéré d'essayer d'installer les ensembles dans un autre sous-répertoire. Lorsque cela a fonctionné, il est devenu clair que le problème concernait les autorisations dans le répertoire actuel.
L'exécution de chown -R gitlab:gitlab .
a résolu le problème.
Dans le guide d'installation de gitlab, il y a une commande gem install
précédant notre histoire qui a été exécutée en tant que root et probablement le gemfile
ou un autre fichier dont les autorisations ont été modifiées pendant cette opération.
Il s'agit d'un bogue d'autorisations dans Ruby-2.0.0-p195 rvm avec l'installation en bundle.
utilisez-vous rvm? avez-vous essayé chmod avec sudo?
chmod 755 (or 777) ~/.rvm/gems/Ruby-2.0.0-p195/build_info/
Assurez-vous que votre Gemfile.lock
appartient à l'utilisateur qui exécute la commande
Bien que la réponse d'Alex soit correcte, cela a également fonctionné pour moi.
Sudo chown -R git:git /path/to/external/volume
J'utilise Gitlab Image de Digital Ocean
J'ai fait ce qui suit et j'ai fait fonctionner les choses.
J'ai changé la permission pour le Gemfile. c'est-à-dire chmod 755 Gemfile
Puis j'ai fait un Sudo bundle install
. Cela a fonctionné et toutes les pierres précieuses ont été installées. Je pourrais alors démarrer mon application par Rails server