mkdir:无法创建目录:协议错误:Virtualbox 共享文件夹
Posted
技术标签:
【中文标题】mkdir:无法创建目录:协议错误:Virtualbox 共享文件夹【英文标题】:mkdir: cannot create directory : Protocol error : Virtualbox Shared folder 【发布时间】:2014-10-12 16:20:15 【问题描述】:我正在尝试在 Virtualbox 共享文件夹中创建从主机到访客的文件夹和文件。
但我收到此错误mkdir: cannot create directory : Protocol error
。
Below are steps i performed to share folder
1:My host OS is Ubuntu and my guest is Ubuntu.
2:I attached a share folder to virtualBox VM
Folder Path:/DR/vault/config
Folder:config selected automount and make permanent.
3:In Guest OS i installed virtualbox guest additions
4:I am trying to mount folder on /mount/config path
I added entry in guest's /etc/fstab as
/config /mount/config vboxsf rw,uid=1000,gid=1000 0 0
Guest 重新启动后路径已成功挂载,我也可以看到在 /DR/vault/config(Guest) 中创建的文件到 /mount/config(Guest) 但我无法在 /mount/config (Guest) 中创建文件夹或文件
如果有什么遗漏或者有其他方法,请提出建议。
【问题讨论】:
您在来宾操作系统中使用的用户是“vboxfs”组吗?但如果没有,我猜你会收到另一个(许可)错误消息。 另外,共享文件夹的名称(fstab
中的第一个参数)是否应该以斜杠开头?它应该与 Virtualbox 中机器设置中的“文件夹名称”完全相同。试试没有那个斜线。我没有在这两个地方使用斜线。
嗨 Dipak,你能解决这个问题吗?我收到完全相同的错误。如果没有任何效果,可能必须按照此处的建议从头开始创建 VM:forums.virtualbox.org/viewtopic.php?f=7&t=45884
@DawidFerenczy 感谢建议好友....我发现问题...我的 /DR/vault/config 路径具有权限 0750,因此它不允许在来宾内部挂载路径。我将其更改为 0770,现在它可以正常工作了
@AafreenSheikh 链接真的很有帮助,感谢 Aafreen :)
【参考方案1】:
在我的情况下,我的驱动器已满,清除驱动器上的一些空间解决了这个问题。
【讨论】:
【参考方案2】:我发现这是 DOS 主机上的文件名长度问题。 我一直在使用 VirtualBox 虚拟机作为一种容器化环境形式来部署到 JBoss 服务器,我在 Windows 环境中遇到了太多针对上述技术的问题。 我在主机上使用了一个共享目录,因为我试图保持虚拟机的轻量级(即在主机中保留 IDE),然后将代码检入共享目录以使用 Maven 进行部署。但是,当目录长度超过 255 个字符时,maven 给出了一些奇怪的错误。尝试查看您的文件绝对路径(输入“pwd”)并查看它是否超过 255。
【讨论】:
【参考方案3】:我已经通过以下方式解决了这个问题:
-
在 guest 机器上,将您的用户添加到
vboxsf
组:sudo adduser username vboxsf
重启主机机器。
我的主机操作系统是 Windows,我的客户操作系统是 Ubuntu。
【讨论】:
【参考方案4】:这可能表明该文件夹在 Virtualbox 主机上没有正确的权限。
例如我的无头 Virtualbox 服务器以“vbox”用户身份运行,因此我必须授予该用户对主机文件夹的写入权限。
【讨论】:
【参考方案5】:我有一个类似的问题,原来对我来说这是 mkdir 中涉及的文件夹数量或路径名称的长度。
通常我有: mkdir -p /projects/bot/node_modules/webpack/node_modules/uglifyjs-webpack-plugin/node_modules/uglify-js/node_modules/yargs/node_modules/cliui/node_modules/center-align/node_modules/align-text/node_modules/kind- of/node_modules/is-buffer 手动我可以创建到路径的最后一部分,但不能创建“is-buffer”文件夹
我在 vagrant 工作,我的项目文件夹是一个共享的 VM 文件夹,也许/可能是 windows 的最大路径长度是原因。
【讨论】:
以上是关于mkdir:无法创建目录:协议错误:Virtualbox 共享文件夹的主要内容,如果未能解决你的问题,请参考以下文章
Spark saveAsTextFile() 导致 Mkdirs 无法为一半目录创建