当我在SSH中时,如何将.bashrc设置为默认安装目录

时间:2015-09-19 00:37:02

标签: vagrant

这是我的VagrantFile的精简版。最后,我试图添加一个:

config.vm.provision :shell, inline: "\"\ncd /vagrant\" >> ~/.bashrc"

但是我一直遇到一个问题,因为/vagrant是一个挂载目录,当我运行vagrant up时,它说“/ vagrant不存在”。 如何将默认目录设置为我的网站的安装目录?

VagrantFile

Vagrant.configure(2) do |config|
  config.vm.box = mydev-box"
  config.vm.network "private_network", ip: "172.17.8.153"
  config.vm.hostname = "myhost.dev"

  # bootstrap
  config.vm.provision :shell, inline: "apt-get update && apt-get install -y curl software-properties-common"
  config.vm.synced_folder "./", "/var/www", owner: "www-data", group: "www-data"

  # Update required settings.
  config.vm.provision :shell, inline: "echo \"127.0.0.1 myhost.dev\" >> /etc/hosts"
  config.vm.synced_folder ".", "/vagrant/",mount_options: ["dmode=777","fmode=777"]

end

1 个答案:

答案 0 :(得分:1)

首先,问题之一是该命令(即使工作)将为root用户完成。 您可以传递privileged: false以确保它以流浪用户身份运行。您还可以指定完整文件夹,以确保更新正确的文件/home/vagrant/.bashrc

其次,使用"时,vagrant似乎会进行字符串插值,但使用''

时不会

为了使其有效,我做了以下

config.vm.provision :shell, inline: "echo 'cd /vagrant' >> /home/vagrant/.bashrc"