vagrant 入门第三篇

Vagrant 入门 - 同步目录(synced folders)

原文地址

尽管可以非常轻松的启动一台虚拟机,但很少有人希望通过 SSH 使用基于终端的编辑器来编辑文件。幸运的是,借助 Vagrant 你不需要这样做。通过使用同步目录,Vagrant 会自动同步 guest 机器上的文件。

默认情况下,Vagrant 将你的项目的目录(即 Vagrantfile 的目录)共享到 guest 中的 /vagrant 目录。

注意,当使用 vagrant ssh 目录进入机器时,默认进入 /home/vagrant 目录。/home/vagrant 是与同步的 /vagrant 目录不同的目录。

如果终端报错,提示不兼容 guest additions(或没有 guest additions),那么可能需要更新 box 或选择不同的 box,如 hashicorp/precise64。一些用户成功使用了 vagrant-vbguest 插件,但它并未得到 Vagrant 核心团队的正式支持。

再次运行 vagrant up 启动 vagrant,然后通过 vagrant ssh 进入机器:

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

不管你信不信,你在虚拟机中看到的 Vagrantfile 文件实际上是你宿主机上的同一个文件。下面证明一下:

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

现在,“foo”文件会出现在你的宿主机上。你可以看到,Vagrant 保证了这个目录的同步。

通过同步目录,你可以继续使用宿主机上你自己的编辑器,对宿主机中文件的改动会自动同步到 guest 机器中。

原文地址:https://www.cnblogs.com/liuwei-xd/p/11020275.html