2013-06-21 3 views
0

На Mac OSX 10.8.4, я бегу:Пассажирский модуль не удается установить

sudo passenger-install-apache2-module 

, который предложил:

Your RVM wrapper scripts are too old, or some wrapper scripts are missing. Please update/regenerate them first by running: 

rvmsudo rvm get stable && rvm reload && rvmsudo rvm repair all 

If that doesn't seem to work, please run: 

rvmsudo rvm wrapper [] --no-prefix --all 

Я сделал первый бит, повторно побежал пассажира установить -apache2-module, но получил ту же проблему. Затем я сделал вторую часть. Это дало:

awk: nonterminated character class ^[]= 
source line number 1 
context is 
>>> /^[]=/ <<< 
sed: 1: "s#^[]=## 
": unbalanced brackets ([]) 
Unknown ruby interpreter string component: '[]'. 
Could not load ruby []. 

Любые предложения о том, куда я иду отсюда?

ответ

3

только запустить passenger-install-apache2-module не префикс его sudo.

команда сообщит вам, что делать, если у нее нет доступа для записи в требуемые места.

с использованием sudo потерь всех переменных окружения, которые в основном ломают то, что настроено rvm.

Если вам действительно нужны привилегии root, вы должны использовать rvmsudo, который сохраняет все необходимые переменные среды.

+0

Phusion Passenger 4.0.20 теперь проверяет, использовалось ли 'sudo' вместо 'rvmsudo', и предлагает использовать 'rvmsudo'. – Hongli

+0

О, это интересно, как это работает? – mpapis

+0

См. Https://github.com/phusion/passenger/commit/c62462cae1e31eca988ca3c7ac6da19a8b669332. '[]', Который пользователь видел, был Phusion Passenger, пытающийся напечатать пустой массив. Исправляя это, я обнаружил, что некоторые переменные среды недоступны при запуске под «sudo». Поэтому, проверяя это, я могу определить, вызвал ли пользователь «sudo» или «rvmsudo». – Hongli

Смежные вопросы