同步目录

尽管可以非常容易的使用虚拟机,但是大部分人并不想通过ssh终端来编辑文件。幸运的是使用vagrant就可以不用这么做。通过使用同步文件夹,vagrant将自动同步你的文件到宿主机器。

默认情况下,Vagrant将你的项目目录(请记住,就是Vagrantfile所在的目录)与虚拟机中的/vagrant目录共享。

请注意,当你使用vagrant ssh命令进入虚拟机时,你在/home/vagrant目录下。/home/vagrant目录和同步目录/vagrant目录不是同一个目录。

如果你的终端显示有关虚拟机增强工具包的错误(guest additions),你可能需要更新你的box或者选择一个其他的box,例如hashicorp/precise64.有些用户使用vagrant-vbguest插件也解决了问题,但是这个插件并没有vagrant核心团队的正式支持。

再次运行vagrant up并且SSH到您的机器:

$ vagrant up
...
$ vagrant ssh
...
vagrant@precise64:~$ ls /vagrant
Vagrantfile

信不信由你,你在虚拟机中看到的Vagrantfile实际上就是你宿主机上的Vagrantfile。 继续并且创建一个文件来证明一下:

vagrant@precise64:~$ touch /vagrant/foo
vagrant@precise64:~$ exit
$ ls
foo Vagrantfile

哇! “foo”现在在你宿主机器上了。 如您所见,Vagrant保持文件夹的同步。

使用同步的目录,您可以继续在宿主机器上使用自己的编辑器来编辑文件,vagrant将自动把文件同步到虚拟机中。

下一步


您已成功通过虚拟机上的同步文件夹与宿主机器进行交互。 请继续阅读,了解如何通过配置来安装软件包,用户等。

你可能感兴趣的:(同步目录)