O bower ESUDO não pode ser executado com o sudo

43

Recebo o seguinte erro quando executo o bower:

bower ESUDO Cannot be run with sudo

O problema é que eu não estou correndo com cara de sudo. O comando que eu executo é:

bower install foo

ou

bower search cats

Estou logado como root em um servidor Ubuntu 12.04, mas não estou usando o sudo. O que da? Como obtenho o bower trabalhando?

Lothar_Grimpsenbacher
fonte
Por favor, considere atualizar a resposta aceita.
Binyomin Trager

Respostas:

74

Eu tive o mesmo problema. Tudo que você precisa fazer é adicionar --allow-rootao seu comando.

Veja esta edição.

Binyomin Trager
fonte
22

Isso não funcionará se for um script que alguém escreveu que está reclamando (como se usasse o Docker, por exemplo).

Nesse caso, você deve garantir que o seguinte comando seja executado antes do bower:

# echo '{ "allow_root": true }' > /root/.bowerrc

Veja aqui uma explicação mais detalhada: https://stackoverflow.com/questions/25672924/run-bower-from-root-user-its-possible-how

DMCoding
fonte
No meu caso, eu tive que fazer o echo '{ "allow_root": true }' > ~/.bowerrcque é provavelmente mais flexível.
Johannes Brodwall 1/08
5

O problema era que, embora o caramanchão não funcione com o sudo, ele também não funcionará se você estiver conectado como root. Você precisa criar um usuário e fazer login com ele para fazê-lo funcionar.

Lothar_Grimpsenbacher
fonte
2

Use a --allow-rootbandeira:

sudo bower --allow-root <comand> 
Miguel Cardenas
fonte