Я получаю тот же setuid(): Operation not permitted
работает npm install
с НПМ 1.4.21 на Ubuntu 14.10. Я устанавливаю другую программу (OOjs UI, а не набор приложений Ember), у которой есть плагин для ворчания, который также требует phantomjs.
Я думаю, что происходит, если у вас нет фантомов на вашем пути или у вас неправильная версия, тогда установщик npm phantomjs пытается установить фактический двоичный файл phantomjs 35+ MB, а также его обертку узлов 5MB. Что-то пытается стать root, чтобы выполнить установку, и этот вызов setuid(0)
завершился с ошибкой. Но:
- НПМ установки phantomjs не сообщает красную ошибку НПМ, несмотря на умирающих с крахом
- при повторном запуске НПМ он считает phantomjs установлен OK; возможно, это только проверка того, что оболочка существует.
Если у вас уже есть версия phantomjs на вашем пути, то она может выглядеть как работа, несмотря на неудачную установку. Убедитесь, что у вас есть версия phantomjs, которую хочет ваша программа, если не устанавливать эту версию phantomjs отдельно.
Не могли бы вы установить его с помощью флага '--lvelvel verbose'? –
@AllanKimmerJensen: Спасибо, он работает. – Rajavelu
Это не имеет смысла, это должно дать только более подробную ошибку. Похоже, ваши права были неправильными, и теперь они верны. –