如何访问VirtualBox中的共享文件夹?
我按照VirtualBox中Windows 7和Ubuntu之间共享文件夹的步骤进行操作。
尽管该文件夹显示带有X标志,并在尝试打开时给我以下消息:
无法显示文件夹内容
当我从VirtualBox Device
菜单中选择Shared Folder
,会显示以下警告:
在系统页面上,您已将超过50%的计算机内存(2.93 GB)分配给虚拟机…
如何使用VirtualBox在Windows和Ubuntu之间成功共享文件夹?
访问Virtual Box中的共享文件夹
命令行
默认情况下,VirtualBox共享文件夹是使用guest虚拟机的读/写权限创建的。 这可以通过主机上的命令行完成:
VBoxManage sharedfolder add "VM name" --name sharename --hostpath "C:\test"
通过添加选项--readonly
我们可以将这些选项限制为只读访问权限。 如果您只希望共享出现在当前会话中但对后续会话不持久,请使用--transient
选项。 共享文件夹有一些限制(有关详细信息,请参阅此问题 )。 如果满足先决条件,我们可以通过在guest虚拟机中运行以下命令来手动挂载这些共享文件夹:
mkdir /home//vboxshare sudo mount -t vboxsf -o uid=1000,gid=1000 sharename /home/ /vboxshare
当然,我们也可以使用不同的挂载选项作为read / only挂载,或者只对root用户进行读访问。
通过Virtual Box Manager自动挂载
如果我们在从Virtual Box Manager创建共享文件夹时启用了自动挂载,则这些共享文件夹将自动挂载到具有挂载点/media/sf_
的guest虚拟机中。 要访问这些文件夹,guest vboxsf
用户需要是vboxsf
组的成员 。
sudo usermod -aG vboxsf userName
用户需要注销并重新登录才能看到他们添加的新组。
来源和进一步阅读: Virtual Box用户手册
实际上有一种简单的方法可以做到这一点:
- 安装VirtualBox的扩展包。
- 重新启动虚拟机
-
在您的访客Ubuntu中安装Guest Additions
- 您可以安装
/media
上的ISO或按左控制 + D
- 您可以安装
-
重启
-
尝试访问
/media/sf_your_shared_folder_name
。 如果您仍然没有访问权限,那意味着您不属于vboxsf
组,正如Nilo所说。 此命令将解决您的问题:sudo adduser your_username vboxsf
-
注销并再次登录以应用
adduser
更改。 请参阅下面的kol和atcold的评论。 - 如果仍然看不到共享文件夹,则必须安装它。 您可以在VirtualBox Manager的选项中激活共享文件夹的自动挂载。
- 再次重启。
首先,请确保您已安装Guest Additions
-
启动您的VM
-
设备>插入访客添加CD图像…
-
安装CD:
sudo mount /dev/cdrom /media/cdrom
-
安装必要的包:
sudo apt-get install make gcc linux-headers-$(uname -r)
-
安装:
sudo /media/cdrom/VBoxLinuxAdditions.run
其次,将您的用户添加到“vboxsf”组:
~$ echo $USER; ahmed ~$ sudo usermod -a -G vboxsf ahmed
重启
知道共享文件夹的标签是lpi
(例如):
将sf_
到标签上。 然后,您将在/media/sf_lpi
下找到您的共享文件夹
最后,您还可以创建一个指向您家的链接。 例如:
ln -s /media/sf_lpi /home/ahmed/lpi
🙂
使用vBox图形界面将共享文件夹添加到虚拟机确保选择automount并使其永久化
使用root帐户登录虚拟机
检查vboxsf组是否存在
~$ grep vboxsf /etc/group vboxsf:x:125:
检查用户是否已在vboxsf组中
~$ id nilo uid=1000(nilo) gid=1000(nilo) groups=1000(nilo),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),124(sambashare)
将用户nilo添加到vboxsf组
~$ sudo usermod -a -G vboxsf nilo
再次检查用户组
~$ id nilo uid=1000(nilo) gid=1000(nilo) groups=1000(nilo),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),124(sambashare),125(vboxsf)
重新启动并以nilo身份登录
共享文件夹现在可在/media/sf_dropbox
(dropbox是我给共享的名称)
在主机操作系统 – > Windows和客户操作系统 – > Ubuntu(虚拟框)之间共享文件夹
步骤1从VirtualBox菜单安装安装Guest Additions转至Devices-> Install Guest Additions这将在/ media / cdrom上安装虚拟CD。 以root用户身份使用打开终端选项打开此/ media / cdrom添加的文件夹(用鼠标右键单击)。
步骤2运行程序VBoxLinuxAdditions.run。 程序完成后重新启动VirtualBox。
$ sudo ./VBoxLinuxAdditions.run
步骤3创建共享文件夹。 从虚拟菜单转到设备 – >共享文件夹,然后在列表中添加一个新文件夹,此文件夹应该是您要与Ubuntu(访客操作系统)共享的窗口中的文件夹。 使此创建的文件夹自动安装。 示例 – >在桌面上创建名为Ubuntushare的文件夹并添加此文件夹。
步骤4完成共享文件夹规范后,我们从Ubuntu(Guest OS)安装文件夹。 创建一个挂载点,这是Ubuntu中的一个目录,它将与Windows共享文件夹共享文件。 运行此命令以在Ubuntu中创建目录
$ sudo mkdir ~/Desktop/windowsshare
步骤5创建mountpoint后,您现在可以挂载共享文件夹。 运行此命令以共享文件夹:
$ sudo mount -t vboxsf Ubuntushare ~/Desktop/windowsshare
Ubuntushare是我们在VirtualBox Devices部分中添加的文件夹的名称,该文件夹位于Windows(Host OS)中。 〜/ Desktop / windowsshare是Ubuntu(Guest OS)中的目录
祝贺 – >现在您可以在Windows和Ubuntu之间共享文件。 尝试在Windows中添加任何文件(Host OS)Ubuntu共享文件夹现在检查Ubuntu(Guest OS)windowsshare目录下的文件是否会被反映出来。
我的文章
共享文件夹黑白windows和ubuntu
- 从软件中心安装名为“程序和组”的程序
- 选择当前用户,然后单击“管理组”
- 选择vboxsf并点击“添加”
- 重启
-
创建一个dir,你要安装它,就像
mkdir docs
-
将Guest Additions安装到guest虚拟机Ubuntu计算机中。
-
关闭Ubuntu guest虚拟机,然后配置它。
-
在“存储”中,设置共享文件夹,并在第二个字段中记下您设置的名称。 例如“疯狂”。 选中自动安装框。
-
启动Ubuntu来宾。
-
就像你说的那样,它实际上是不可访问的。 (这是你问题的关键部分。)你会发现它存在于
/media/sf_crazy
,其中’crazy’是你给它的名字。 而且,它也将出现在你的家庭目录~/crazy
。 -
您现在需要再采取一步来实际安装它:
sudo mount -o uid=1000,gid=1000 -t vboxsf ~/crazy ~/docs
安装Guest Additions后执行这些步骤。 对于Windows 10主机环境,在Windows机器上我必须共享文件夹。
- 右键单击要共享的文件夹
- 选择“分享”
- 选择“特定人”
- 选择每个人,读/写选项
- 在客户端Ubunto机器上运行命令:sudo adduser xxxxxxx vboxsf
其中xxxxxx是您的用户帐户名称。 注销并重新登录Ubuntu。