12

gitlabをセットアップして、sudoを使用して別のユーザーアカウントからいくつかのgemをインストールしようとしていますが、常に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
4

5 に答える 5

16

Lainは、バンドルを別のサブディレクトリにインストールすることを提案しました。それがうまくいくと、問題は現在のディレクトリのアクセス許可にあることが明らかになりました。

実行chown -R gitlab:gitlab .すると問題は解決しました。

gitlabインストールガイドには、gem installルートとして実行されたストーリーの前にあるコマンドがあり、おそらく、gemfileまたは他のファイルのアクセス許可が変更されていました。

于 2012-12-25T17:11:48.400 に答える
10

これは、バンドルインストールを使用したruby-2.0.0-p195rvmのアクセス許可のバグです。

rvmを使用していますか?sudoでchmodを試しましたか?

chmod 755 (or 777) ~/.rvm/gems/ruby-2.0.0-p195/build_info/

于 2013-06-05T02:28:51.710 に答える
2

私は次のことを行い、物事を機能させました。

Gemfileの権限を変更しました。すなわちchmod 755 Gemfile

それから私はしましたsudo bundle install。これで動作し、すべてのgemがインストールされました。その後、次の方法でアプリを起動できますrails server

于 2018-12-27T14:00:22.523 に答える
0

Gemfile.lockコマンドを実行しているユーザーが自分の所有物であることを確認してください

于 2015-01-24T12:12:56.757 に答える
0

アレックスの答えは正しいですが、これは私にとってもうまくいきました

sudo chown -R git:git /path/to/external/volume

DigitalOceanのGitlabImageを使用しています

于 2018-10-22T07:16:35.700 に答える