Vagrant
выполняет мои сценарии как root
во время предоставления. Но я хотел бы выполнить в течение времени подготовки некоторые команды в качестве другого пользователя. Это, как я делаю в данный момент:Как выполнять команды как другой пользователь во время подготовки к Vagrant?
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"
Но я хотел бы сделать это лучше, что-то вроде этого:
#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
Возможно ли это? Спасибо!
не видел настройки привилегированных: ложных, спасибо за это. –