我的主机是 Win 10。多年来,我一直无法从 VM 的菜单中安装 Guest Additions Devices -> Install Guest Additions CD Image...
,但我可以按照以下步骤手动执行此操作:
- 抄送
C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso
给我的客人。 sudo mkdir /media/GuestAdditionsISO
。sudo mount -o loop path/to/VBoxGuestAdditions.iso /media/GuestAdditionsISO
。sudo /media/GuestAdditionsISO/VBoxLinuxAdditions.run
。sudo adduser abc vboxsf
。sudo reboot
。
现在我从 VBox 6.1.18 升级到 6.1.26r145957,并尝试在新的 Guest Ubuntu Server 20.04.2 上重复这些步骤,但似乎不起作用。最初我收到一个Permission denied
错误。我这次注意到群组所有者是root
:
abc@myvm:[~]: ll /media/
total 16
drwxr-xr-x 4 root root 4096 Aug 14 05:28 ./
drwxr-xr-x 21 root root 4096 Aug 13 10:00 ../
drwxr-xr-x 2 root root 4096 Aug 14 05:27 GuestAdditionsISO/
drwxr-x--- 2 root root 4096 Aug 14 05:28 sf_xyz/
而以前它是这样的vboxsf
,所以我尝试通过运行手动修复它sudo chown -R root:vboxsf /media
,所以现在它看起来像这样:
abc@myvm:[~]: ll /media/
total 16
drwxr-xr-x 4 root vboxsf 4096 Aug 14 05:28 ./
drwxr-xr-x 21 root root 4096 Aug 13 10:00 ../
drwxr-xr-x 2 root vboxsf 4096 Aug 14 05:27 GuestAdditionsISO/
drwxr-x--- 2 root vboxsf 4096 Aug 14 05:28 sf_xyz/
但现在的问题是我无法从映射文件夹(主机上不为空)访问任何内容:
abc@myvm:[~]: ll /media/sf_xyz/
total 8
drwxr-x--- 2 root vboxsf 4096 Aug 14 05:28 ./
drwxr-xr-x 4 root vboxsf 4096 Aug 14 05:28 ../
重新启动也无济于事。
顺便说一句,我尝试了另一台虚拟机(Ubuntu Server 20.04.1),它是使用以前的 VBox 版本创建的。它之前设置了一个共享文件夹,对于新的 VBox 版本来说,这仍然没问题。在它上面,我还可以轻松地与新的 VBox 版本共享另一个文件夹——仍然没有问题。
答案1
问题是 Guest Additions 没有正确安装。运行时我没有仔细注意它显示的消息VBoxLinuxAdditions.run
:
This system is currently not set up to build kernel modules.
Please install the gcc make perl packages from your distribution.
因此我通过运行这个(之前)修复了这个问题VBoxLinuxAdditions.run
:
sudo apt install gcc perl make
以前不需要这样做,所以有点烦人,但至少它解决了这个问题。