最佳答案
在初始配置之后,有些命令必须作为普通用户运行。我认为我可以使用一个单独的 shell 脚本和命令 su --login -c <command> vagrant
来完成这项工作,但是它无法从中获取用户的路径或其他环境设置。巴希尔。
例如:
#!/usr/bin/env bash
su --login -c "rbenv install 2.0.0-p353" vagrant
su --login -c "rbenv global 2.0.0-p353" vagrant
su --login -c "gem update --system" vagrant
su --login -c "yes | gem update" vagrant
su --login -c "gem install rdoc" vagrant
su --login -c "gem install rails pg" vagrant
有办法吗?也许它必须使用另一个供应工具,如 Puppet 或 Chef 来完成?我曾经想过创建另一个 shell 脚本来源于 .bashrc
,使用: file 供应器将其复制到框中,并执行类似的命令,但这看起来有点像黑客技术。
怎么做才是正确的?