Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

275
Visualizações
¿Cómo ejecutar comandos como otro usuario durante el aprovisionamiento en Vagrant?

Vagrant ejecuta mis scripts como root durante la provisión. Pero me gustaría ejecutar, durante el tiempo de aprovisionamiento, algunos comandos como otro usuario. Así es como lo estoy haciendo en este momento:

 su - devops -c "git clone git://github.com/sstephenson/rbenv.git .rbenv" su - devops -c "echo 'export PATH=\"$HOME/.rbenv/bin:$PATH\"' >> ~/.bash_profile" su - devops -c "echo 'eval "$(rbenv init -)"' >> ~/.bash_profile" su - devops -c "git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build" su - devops -c "echo 'export PATH=\"$HOME/.rbenv/plugins/ruby-build/bin:$PATH\"' >> ~/.bash_profile" su - devops -c "source ~/.bash_profile"

Pero me gustaría hacer esto más agradable, algo como esto:

 #become devops user here git clone git://github.com/sstephenson/rbenv.git .rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(rbenv init -)"' >> ~/.bash_profile git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile # back to the root user here

Es posible ? ¡Gracias!

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

al ejecutar el aprovisionamiento, es cierto que vagrant se ejecutará como root de forma predeterminada, puede cambiar este comportamiento haciendo el aprovisionamiento como

 config.vm.provision "shell", privileged: false blablabla

vagabundo luego usará el usuario definido como config.ssh.username , si no está configurado, su usuario vagabundo por defecto

Si tiene varios usuarios en su sistema y todavía quiere usar otro usuario, lo que haría sería escribir un script y ejecutarlo como su -l newuser -c "path to shell script"

over 4 years ago · Santiago Trujillo Relatório

0

Si desea tener la secuencia de comandos en línea con el resto, puede usar una secuencia de comandos como la siguiente.

 sudo -u devops /bin/sh <<\DEVOPS_BLOCK # Become devops user here id whoami # Back to the root user here DEVOPS_BLOCK
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda