При общесистемной установке RVM, от какого пользователя вы запускаете пакетную установку как? - PullRequest
1 голос
/ 06 апреля 2011

У меня есть общесистемная установка RVM на сервере.Я стреляю в темноте, когда дело касается бега bundle install.Я не знаю, должен ли я запускать его от имени того же пользователя, что и приложение Rails, или от имени пользователя root.Сейчас я делаю su -, чтобы перейти в корневой каталог, а затем cd'ing в корневой каталог Rails и запускаю bundle install.Не уверен, что это правильный путь.Любая помощь?

Ответы [ 3 ]

4 голосов
/ 06 апреля 2011

В документации разработчика указано, что не делайте этого от имени пользователя root:

http://gembundler.com/man/bundle-install.1.html

Цитата:

Никогда не используйте sudo bundle install.Это связано с тем, что в качестве текущего пользователя необходимо выполнить несколько других шагов при установке пакета:

1) Обновление вашего Gemfile.lock
2) Обновление вашего поставщика / кэша, если необходимо
3) Проверкачастные git-репозитории с использованием SSH-ключей вашего пользователя

Особенно актуально для RVM:

http://rvm.beginrescueend.com/rubies/rubygems/

Цитируется:

НЕиспользуйте sudo ...

для работы с гемами RVM.Когда вы выполняете команду sudo, вы запускаете команды от имени пользователя root, другой пользователь в другой оболочке и, следовательно, все настройки, выполненные для вас RVM, игнорируются, пока команда выполняется под командой sudo (такие как GEM_HOME и т. Д.).Итак, повторяю, как только вы выполняете sudo, вы работаете как пользователь корневой системы, который очистит вашу среду, а также любые файлы, которые она создает, не сможет быть изменен вашим пользователем и приведет к странным вещам.(Вы начнете думать, что у кого-то есть кукла вуду вашего приложения ...)

3 голосов
/ 04 мая 2011

комплект - это умно. если ваши драгоценные камни находятся в / usr / local или / opt или где-либо еще и у вас нет прав доступа, он сделает это:

bundle install

<~/code/project> $ bundle install
Fetching https://github.com/plataformatec/simple_form.git
remote: Counting objects: 3275, done.
remote: Compressing objects: 100% (1225/1225), done.
remote: Total 3275 (delta 2289), reused 2836 (delta 1950)
Receiving objects: 100% (3275/3275), 369.42 KiB | 608 KiB/s, done.
Resolving deltas: 100% (2289/2289), done.
Fetching source index for http://rubygems.org/
Enter your password to install the bundled RubyGems to your system:
...

обратите внимание на последнюю строку там ... bundle запускает sudo для вас только на том, что требует root.

0 голосов
/ 06 апреля 2011

Как пользователь владеет и запускает приложение ruby.

...