Vagrant provisioning命令不会向〜/ .profile添加别名

时间:2017-02-13 01:09:19

标签: bash vagrant vagrantfile vagrant-provision

我有一个运行trusty64的相当普通的Vagrant设置。它由单个shell文件配置。其中,它分别包含python3pythonpip3pip的别名:

echo "Writing aliases to profile:"
echo "alias python=\"python3\"" >> ~/.profile
echo "alias pip=pip3" >> ~/.profile
. ~/.profile

出于某种神秘的原因,这些行永远不会进入~/.profile。没有任何错误信息,也没有任何其他骚动,只是没有任何反应。这是凌晨2点,我很确定我做错了什么,我只是无法弄清楚它是什么。

1 个答案:

答案 0 :(得分:2)

我很确定你用“

”之类的东西来调用配置器
config.vm.provision "shell", path: "bootstrap.sh"

这很好但是它作为root用户执行,所以所有的行都只为这个用户添加。您想使用privileged选项

  

privileged(boolean) - 指定是否执行shell脚本   作为特权用户(sudo)。默认情况下,这是" true"。

config.vm.provision "shell", path: "bootstrap.sh", privileged: "false"

将作为您的流浪者用户执行,并将行添加到/home/vagrant/.profile文件