如何创建框以避免 vboxsf 文件系统问题?

时间:2021-07-29 06:41:58

标签: vagrant

我用自己的流浪盒子创建的。我的盒子基于centos/7。 我通过执行以下命令创建了框:

vagrant package default --OUTPUT MY_FILE_NAME
vagrant box add MY_BOX_NAME file:///c:/path/to/MY_FILE_NAME

当我从我的盒子里启动虚拟机时,我得到以下异常:

<块引用>

==> 默认值:正在安装共享文件夹... 默认值:/vagrant => C:/projects/vagrant/my_vm Vagrant 无法挂载 VirtualBox 共享文件夹。这通常是因为 文件系统“vboxsf”不可用。这个文件系统是由 可通过 VirtualBox Guest Additions 和内核模块获得。请 验证这些来宾添加是否正确安装在来宾中。 这不是 Vagrant 中的错误,通常是由错误的 Vagrant 引起的 盒子。对于上下文,尝试的命令是:

mount -t vboxsf -o uid=1000,gid=1000,_netdev vagrant /vagrant

命令的错误输出是:

挂载:未知文件系统类型“vboxsf”

这是已知的问题,关于它的问题和答案是例如堆栈溢出。大多数答案建议使用 vagrant-vbguest 插件。问题是我不想使用 vagrant-vbguest 插件,因为这个插件会导致下一个问题,因为 centos/7 包含已从 CentOS 存储库中删除的旧内核版本.它可以通过将 vagrant-vbguest 插件降级到 0.21 或允许内核更新 (config.vbguest.installer_options = { allow_kernel_upgrade: true }) 来解决。它被描述为 herehere。这两种解决方案都不让我满意,因为这两种解决方案都很慢。两种解决方案都更新内核,需要很长时间。我知道我可以用更新的内核创建我自己的 Cenots 盒子,但我认为它的解决方法太多了。 vagrant cloud 上有很多盒子,我不认为每个盒子都有与 vboxsf 文件系统相同的问题。我不明白为什么我的盒子有 vboxsf 文件系统的问题。有消息

<块引用>

这不是 Vagrant 中的错误,通常是由错误的 Vagrant 引起的 盒子。

如果我的盒子有问题,那么如何正确创建盒子? 我想正确创建我的盒子并且没有 vboxsf 文件系统问题。也许只是 centos/7 的问题? vagrant cloud 中有很多 box,我不认为每个 box 都需要 vagrant-vbguest 插件来解决 vboxsf 文件系统问题。

我的流浪版本:2.2.16

主机操作系统:Windows 10 专业版

VirtualBox 版本:6.1.22 r144080 (Qt5.6.2)

我的主机文件系统:NTFS。

====编辑====

我再次制作了我的盒子,但我从 ubuntu/impish64 而不是 cenots/7 制作了 if。它工作正常。我没有 vagrant-vbguest 插件,也没有 vboxsf 文件系统问题。

====编辑====

似乎是 centos/7 特定的问题。它在 Centos blog 上有描述。不幸的是,我仍然不明白为什么 centos/7 盒子没有 vboxsf 文件系统问题,但我的基于 centos/7 的盒子有文件系统问题。我没有创建任何符号链接,也没有在 /vagrant 目录中执行任何操作。我的盒子只下载tar.gz文件,解压,设置环境变量,在/etc/profile.d目录下创建文件。

0 个答案:

没有答案
相关问题