在 Ubuntu 客户机中安装 VirtualBox 共享文件夹时出现“协议错误”

在 Ubuntu 客户机中安装 VirtualBox 共享文件夹时出现“协议错误”

我在 Windows 7 机器上安装了 Ubuntu 10 作为客户操作系统。我一直试图通过 VirtualBox 设置共享,但没有任何效果。首先,我在 VirtualBox 中创建共享并将其指向 Windows 文件夹。然后我尝试在 Linux 中安装驱动器,但一直出现

/sbin/mount.vboxsf: mounting failed with the error: Protocol error

我已经阅读了很多解决方案,但似乎都没有用。我尝试过:

  • 使用 mount.vboxsf 语法
  • 重新安装 VBox 附加功能
  • 重启
  • 启用并尝试以 root 帐户身份

我在 VBox 共享文件夹中创建了一个名为“Test”的共享。然后在 ubuntu 中创建了一个名为“test2”的目录。然后我尝试执行此命令:

sudo mount -t vboxsf Test /mnt/test2

还有其他想法吗?

答案1

为了使用共享文件夹功能,先决条件需要满足:

  • 确保新增嘉宾已正确安装在客户操作系统上。
  • 客户 Ubuntu 中的用户必须在组中vboxsf才能够访问共享。
  • 使用 Virtual Box 的设置对话框定义主机上将在虚拟机中使用的目录。

根据主机或客户操作系统,可能还需要以下内容:

  • 不要共享以下个人文件夹/home/usernameMy Documents
  • 避免在共享文件夹路径中使用特殊字符或空格,尤其是当主机或虚拟机是 Windows 计算机时
  • 对共享和挂载点使用不同的名称
  • 在客户操作系统上创建一个挂载点(最好在您的 HOME 目录中)。

测试共享文件夹功能可以通过在主机上创建共享目录(例如C:\myshare)来实现,在 Virtual Box 设置中将其定义为客户系统的共享文件夹(例如share),在客户操作系统中创建挂载点(例如 mkdir /home/username/host),然后使用以下命令将其挂载到客户操作系统中:

sudo mount -t vboxsf -o uid=1000,gid=1000 share /home/username/host

其中选项 -o 确保您有权访问挂载(否则将由 root 拥有)。

有关共享文件夹的更多信息,另请参阅Virtual Box 用户手册

还可以通过在主机和客户机上使用 Samba 通过网络共享文件或目录。

答案2

我也遇到了这个问题,发现共享文件夹已经挂载在了/media/sf_share

我试图删除/media/sf_share,但失败了。

所以我删除了主目录中的共享文件夹“share”。

$ rm -r ~/share

然后通过以下方式切换到root用户:

$ sudo -i

创建软链接/快捷方式到 root 用户拥有的 /media/sf_share 文件夹,使用 chown 命令修改软链接的所有权。从 root 用户退出到普通用户

# ln -s /media/sf_share /home/username/share
# chown username.username /home/username/share
# exit
logout

$ chmod 777 ~/share

您可以通过共享文件夹查看Windows中的文件。并且用户名必须是组vboxsf的成员。

答案3

这是对我来说没有任何问题的方法

我发现,其实我的user名字不在響箱组。以下两个命令将有助于获取组信息:

grep "vboxsf" /etc/group    
grep "saurav" /etc/group

所以我把saurav(我)加到了響箱使用以下命令进行分组:

sudo usermod -a -G vboxsf saurav 

然后重新启动虚拟机,然后..从我的位置跳转..:D:D一切正常,没有任何问题。

如果还有任何问题,请发表评论。

答案4

尝试了上述所有方法,但对我都不起作用。最后,我创建了一个新的临时文件夹“Shared”,并启用了“Make Permanent”和“Auto Mount”。然后我运行命令

sudo mount -t vboxsf -o uid=1000,gid=1000 Shared /mnt/sharedvm

它对我有用。这次没有错误。

相关内容