Vagrant: 同步文件夹不会在centos 7中自动共享

创建于 2016-09-18  ·  3评论  ·  资料来源: hashicorp/vagrant

如果这不是发布此内容的正确位置,请告知。 谢谢

在大力搜索网络后,我仍然无法让同步的文件夹在 CentOS7 上工作。 我已经得到了
开箱即用地在 Ubuntu 上工作。 我所有的生产服务器都是 CentOS。 Ubuntu 用于测试。 我想
例如,在我的主机箱上编辑源代码并在客户机 Sinatra 上运行它。

来自两者的片段,带有“vagrant up”
centos/7
==> default: Rsyncing folder: /home/lewisb/src/ruby-dev/web-dev/ => /vagrant
ubuntu/wily64
==> default: Mounting shared folders... default: /vagrant => /home/lewisb/src/ruby-dev/sinatra-dev-box

流浪版

流浪者 1.8.5

主机操作系统

Fedora Linux 4.7.3-200.fc24.x86_64
VirtualBox 5.0.26r108824
Ruby 2.3.1p112 (2016-04-26 修订版 54768) [x86_64-linux]

来宾操作系统

Centos 7
Linux web-dev 3.10.0-327.28.3.el7.x86_64 #1 SMP Thu Aug 18 19:05:49 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

流浪档案

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.hostname = 'web-dev'
  config.vm.provider 'virtualbox' do |v|
    v.memory = 4096
    v.cpus = 2
    v.gui = true
  end
  config.vm.provision :shell, path: 'bootstrap.sh', keep_color: true
end

预期行为

我应该能够在主机或来宾上创建和修改文件并自动获得结果
同步。 Ubuntu/Wiley 开箱即用。

实际行为

我必须vagrant reload才能同步文件。 'vagrant reload' 的输出截图

==> default: Machine booted and ready!
[default] GuestAdditions 5.0.26 running --- OK.
==> default: Checking for guest additions in VM...
==> default: Setting hostname...
==> default: Rsyncing folder: /home/lewisb/src/ruby-dev/web-dev/ => /vagrant
==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision`

重现步骤

  1. 使用 centos/7 销毁/创建虚拟机
  2. 在来宾上的 .ssh/authorized_keys 文件上将权限设置为 0600 后,SSH 到来宾
  3. 将目录更改为 /vagrant 和touch foo
  4. 检查主机上文件foo是否存在 - 不存在
  5. 重新加载vagrant,文件出现
synced-foldergeneral

最有用的评论

我知道这是一个封闭的问题,但我想分享我是如何解决这个问题的。

我的centos/7盒子也有这个问题。 盒子提供者将rsync为默认同步机制。 您可以在 Vagrantfile 框中看到它。 在我的机器上,它位于: ~/.vagrant.d/boxes/centos-VAGRANTSLASH-7/1804.02/virtualbox/Vagrantfile

要使用 Virtual Box,只需将其添加到您的 VM Vagrantfile。 它看起来像:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  # Shared folder setting
  config.vm.synced_folder ".", "/vagrant", type: 'virtualbox'
  # Other settings...
end

此外,在运行vagrant up ,您必须为 vagrant 安装 Virtual Box 来宾添加插件:

vagrant plugin install vagrant-vbguest

完成这两个步骤后,运行vagrant up并且共享文件夹应该可以双向正常工作。

来源: https :

所有3条评论

你好! 该问题与未安装在盒子上的来宾添加有关。 我拉了centos/7框进行确认,它确实不包括客人添加。 如果您看到重新加载后可以使用来宾添加,我猜您已经安装了 vbguest 插件。 要使vagrant up像预期的那样“开箱即用”,您需要在来宾上安装来宾添加并重新包装盒子,或者使用不同的盒子(如便当 centos 盒子)。

干杯!

我知道这是一个封闭的问题,但我想分享我是如何解决这个问题的。

我的centos/7盒子也有这个问题。 盒子提供者将rsync为默认同步机制。 您可以在 Vagrantfile 框中看到它。 在我的机器上,它位于: ~/.vagrant.d/boxes/centos-VAGRANTSLASH-7/1804.02/virtualbox/Vagrantfile

要使用 Virtual Box,只需将其添加到您的 VM Vagrantfile。 它看起来像:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  # Shared folder setting
  config.vm.synced_folder ".", "/vagrant", type: 'virtualbox'
  # Other settings...
end

此外,在运行vagrant up ,您必须为 vagrant 安装 Virtual Box 来宾添加插件:

vagrant plugin install vagrant-vbguest

完成这两个步骤后,运行vagrant up并且共享文件夹应该可以双向正常工作。

来源: https :

我将锁定此问题,因为它已关闭 _30 天_⏳。 这有助于我们的维护人员找到并关注活跃的问题。

如果您发现与此类似的问题,请打开一个新问题并完成问题模板,以便我们可以获取进一步调查所需的所有详细信息。

此页面是否有帮助?
0 / 5 - 0 等级