windows - VirtualBox 重启后重新连接来自 Vagrant 的同步文件夹

标签 windows ubuntu vagrant virtualbox puppet

我已经创建了一个在 Windows 主机上运行的 Ubuntu 的 puppet/vagrant/VirtualBox 生成安装;见https://bitbucket.org/dmenne/rstudio-shiny-server-on-ubuntu了解详情。这允许用户在 Windows 上运行 RStudio 和 Shiny 服务器。在 Vagrantfile , 我有

config.vm.synced_folder "shiny-server", "/srv/shiny-server", create:true

创建共享文件夹。当我用 vagrant up 启动虚拟机时或 vagrant reload ,一切正常。

一位客户不想安装 vagrant 等,并要求使用 Windows 上的 VirtualBox Manager 启动/停止独立的 VM。但是,在我关闭 enter image description here 之后vagrant-booted VM Box,我的同步文件夹不会在 VM 重新启动时再次连接/装载,即使它们在 VirtualBox 管理器的共享文件夹对话框中正确显示也是如此。

我如何收缩包装一个 Vagrant 生成的虚拟机,以便它可以在没有 Vagrant 的情况下启动/停止?

2015 年 3 月编辑:

我仍然无法解决这个问题。当我强制自动挂载时,在恢复时 media/sf_<folder>已同步,而不是所需的文件夹。我如何强制 VirtualBox 使用来自 Vagrantfile 的同步模板?重启后?

以及如何在不手动执行的情况下强制在 vagrant 中自动挂载。

最佳答案

经过一些进一步的调试并且在 google/vagrant 论坛上没有对类似查询的响应:

  • 当您在 puppet 中使用同步文件夹时,您必须使用 vagrant upvagrant reload 重新启动 VirtualBox
  • 如果您使用 VirtualBox GUI 停止/重新启动,automount 会错误地恢复同步的文件夹,即恢复到/media/sf_;如果不使用 vagrant reload,这是无法纠正的,
  • 没有 vagrant 的唯一选择是将状态保存在 VirtualBox 中 (CTRL-V)。重新启动后,同步的文件夹将正确恢复。但是,强制最终用户始终手动保存状态可能是不可能的。

要使用永久同步文件夹,您必须使用upstart 或类似的方法;仅使用 Vagrantfile 是做不到的。

另见 Alvaro 的回复: https://groups.google.com/forum/#!topic/vagrant-up/oBU0kqPLzYk

关于windows - VirtualBox 重启后重新连接来自 Vagrant 的同步文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24693503/

相关文章:

windows - 使用for循环和变量替换批量分割文件路径

linux - Bash - while 循环语法错误

windows - 关于公钥加密的问题

java - 从 java 运行自动热键 (ahk) 脚本

database - 像这样解决数据库连接错误: [ISQL]ERROR: Could not SQLConnect

Python 和 Ansible - 编解码器错误 UTF-8 到 ascii 转换

linux - Vagrant、Symfony、chmod 许可证

node.js - 使用哪个 Vagrant Ubuntu 盒子来安装最新的 Node.js?

macos - Mac : There was an error while executing `VBoxManage` , Vagrant 使用的 CLI

windows - Windows 中当前目录和工作目录的区别