VirtualBox 共享文件夹

来自 Alpine Linux

3.11 及更新版本

在 /etc/apk/repositories 中启用 Community 仓库,然后

创建挂载点并安装库

mkdir -p /mnt/shared apk add virtualbox-guest-additions linux-virt reboot

然后挂载文件夹

modprobe -a vboxsf mount -t vboxsf vbox_shared /mnt/shared

vbox_shared 是你在 VirtualBox GUI 中决定的“文件夹名称”

3.8 - 3.10

从 3.8 版本开始,只需在 /etc/apk/repositories 中启用 Community 仓库,然后运行

apk add virtualbox-guest-additions virtualbox-guest-modules-virt

重启系统

modprobe -a vboxsf mount -t vboxsf vbox_shared /mnt/outside

永久共享

要设置永久共享,请启用 vboxsf 模块并在启动时挂载。将 vbox_shared 更改为你在 VirtualBox 对话框中的文件夹名称,也可以根据需要调整路径 /mnt/outside 两次。

echo vboxsf > /etc/modules-load.d/vboxsf.conf rc-update add local default mkdir /mnt/outside echo mount -t vboxsf vbox_shared /mnt/outside > /etc/local.d/outside.start chmod +x /etc/local.d/outside.start

重启系统

3.7 及更早版本

首先安装 virtualbox-guest-additions 和 virtualbox-guest-modules-virthardened

apk add virtualbox-guest-additions virtualbox-guest-modules-virthardened

可能会发生以下错误

ERROR: unsatisfiable constraints: virtualbox-guest-additions (missing): required by: world[virtualbox-guest-additions] virtualbox-guest-modules-virthardened (missing): required by: world[virtualbox-guest-modules-virthardened]

如果发生此错误,请确保你的 Alpine 版本高于 v3.6 并且已启用 Alpine Community 仓库

echo "https://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories

从所有远程仓库更新仓库索引,然后安装 guest 模块并重启

apk update apk add virtualbox-guest-additions virtualbox-guest-modules-virthardened reboot

转到 设备 > 共享文件夹 > 共享文件夹设置... 添加如下目录映射

将其挂载到 Alpine

mkdir /mnt/outside mount -t vboxsf vbox_shared /mnt/outside

其中 vbox_shared 是你的文件夹名称,而 /mnt/outside 是挂载点。

在此步骤之后,可能会发生以下错误

mount: mounting vbox_shared on /mnt/outside failed: No such device

如果发生此错误,请运行以下命令

modprobe -a vboxsf mount -t vboxsf vbox_shared /mnt/outside

你将看到 /tmp/vbox_shared 和 /mnt/outside 已连接。


附注:如果在挂载驱动器时未安装 virtualbox-guest-additions,Alpine 将引发“Invalid argument”错误。

附注:如果在添加共享路径时未安装 virtualbox-guest-modules-virthardened,VirtualBox 将引发“Guest Additions unavailable”错误。