Получение "Отказано в доступе" при запуске команды bundler

Мне нужно установить пакет для приложения, так что вот что я делаю (инструкции из документации приложения непосредственно):

  1. mkdir ~/.gems
  2. export GEM_HOME=~/.gems
  3. gem install bundler -v 1.10.3

Выполнив эти три инструкции, я запускаю bundler -v и получите следующее исключение:

-bash: /usr/local/bin/bundle: Permission denied

Это работает нормально, если я запускаю его как sudo. Я также понимаю, что это проблема с разрешениями, потому что root - это пользователь и группа в папке. Я думаю, вопрос в том, как я могу установить пакет без использования /usr/local папку, чтобы у меня был доступ к ней без использования рута?

[РЕДАКТИРОВАТЬ]

Когда я бегу ls -l /usr/local/bin/bundle Я вижу следующее:

-rwx------ 1 root root 495

Когда я бегу ls ld ~/.gems Я вижу следующее:

drwx------ 10 gflouis1 domain users 143 /home/gflouis1/.gems

К вашему сведению: gflouis1 - мое имя пользователя

1 ответ

Без sudo у вас нет необходимых разрешений, поэтому добавьте исполняемый бит для группы и других:

sudo chmod +x /usr/local/bin/bundle

Также вы можете изменить права root:

sudo chown root:user(yourusername) filename
Другие вопросы по тегам