VirtualBox 增强功能(Guest Additions)安装与共享文件夹配置全攻略

VirtualBox 增强功能(Guest Additions)安装与共享文件夹配置全攻略

文章目录

  • [VirtualBox 增强功能(Guest Additions)安装与共享文件夹配置全攻略](#VirtualBox 增强功能(Guest Additions)安装与共享文件夹配置全攻略)
    • [一、为什么必须安装 VirtualBox 增强功能?](#一、为什么必须安装 VirtualBox 增强功能?)
      • [1. 文件互通(最核心)](#1. 文件互通(最核心))
      • [2. 鼠标/屏幕体验优化](#2. 鼠标/屏幕体验优化)
      • [3. 双向复制粘贴 & 拖拽](#3. 双向复制粘贴 & 拖拽)
    • 二、安装前准备:版本必须匹配(重要警示)
      • [查看版本与下载 ISO](#查看版本与下载 ISO)
    • 三、方式一:图形化安装增强功能(推荐,最简单)
      • [1. 加载 ISO](#1. 加载 ISO)
      • [2. 执行安装](#2. 执行安装)
    • 四、方式二:手动安装增强功能(通用、稳定、排坑首选)
      • [1. 安装必备依赖](#1. 安装必备依赖)
      • [2. 可选依赖(报错时安装)](#2. 可选依赖(报错时安装))
      • [3. 挂载光驱并执行安装](#3. 挂载光驱并执行安装)
      • [4. 安装成功标志](#4. 安装成功标志)
      • [5. 重启虚拟机(必做)](#5. 重启虚拟机(必做))
    • [五、配置共享文件夹(宿主机 ↔ 虚拟机文件互通)](#五、配置共享文件夹(宿主机 ↔ 虚拟机文件互通))
      • [1. VirtualBox 中设置共享文件夹(关键注意点)](#1. VirtualBox 中设置共享文件夹(关键注意点))
      • [2. 虚拟机内手动挂载](#2. 虚拟机内手动挂载)
    • 六、设置开机自动挂载(避免重复手动操作)
      • [1. 编辑 rc.local 文件](#1. 编辑 rc.local 文件)
      • [2. 添加挂载命令](#2. 添加挂载命令)
      • [3. 赋予执行权限(CentOS 7+ 必做)](#3. 赋予执行权限(CentOS 7+ 必做))
      • [4. 重启验证](#4. 重启验证)
    • 七、常见问题与排坑(高频场景)
      • [1. 挂载报错:`mount: unknown filesystem type 'vboxsf'`](#1. 挂载报错:mount: unknown filesystem type 'vboxsf')
      • [2. 安装报错:`Building the main Guest Additions modules ...fail!`](#2. 安装报错:Building the main Guest Additions modules ...fail!)
      • [3. 共享文件夹挂载成功,但权限异常(只读/无法写入)](#3. 共享文件夹挂载成功,但权限异常(只读/无法写入))
      • [4. 增强功能安装成功,但鼠标无法无缝切换](#4. 增强功能安装成功,但鼠标无法无缝切换)
    • 八、总结

在使用 VirtualBox 虚拟机时,原生系统默认不支持文件共享、屏幕自适应、鼠标无缝切换等核心能力,VirtualBox Guest Additions(增强功能) 就是解决这些问题的官方必备组件。本文从「为什么要装」「图形化安装」「手动安装」「共享文件夹配置」「开机自动挂载」全流程讲解,附带踩坑注意点,一次配置永久生效。


一、为什么必须安装 VirtualBox 增强功能?

增强功能本质是虚拟机与宿主机的「驱动 + 交互插件」,不装会严重影响使用体验,核心作用如下:

1. 文件互通(最核心)

支持宿主机 ↔ 虚拟机共享文件夹,不用再通过 FTP、SCP、U盘传文件,开发/运维文件同步效率大幅提升。

2. 鼠标/屏幕体验优化

  • 鼠标在宿主机与虚拟机之间无缝切换 ,不用按 Ctrl+Alt 释放;

  • 虚拟机屏幕自适应窗口大小,支持分辨率自动调整,不会出现小屏黑边。

3. 双向复制粘贴 & 拖拽

宿主机与虚拟机之间可直接复制文本、拖拽文件,操作和本地系统几乎一致。

一句话总结:不装增强功能,虚拟机只能"能用";装了增强功能,虚拟机才"好用"。


二、安装前准备:版本必须匹配(重要警示)

增强功能版本必须与你当前安装的 VirtualBox 主程序版本完全一致,否则会出现:

  • 共享文件夹挂载失败

  • 安装报错 modprobe vboxsf failed

  • 内核编译失败

  • 屏幕自适应失效

查看版本与下载 ISO

  • VirtualBox 主程序版本:帮助 → 关于 VirtualBox

  • 增强功能 ISO 下载地址(对应版本):
    https://download.virtualbox.org/virtualbox/你的版本号/

    例:https://download.virtualbox.org/virtualbox/7.0.8/

  • 需下载文件:VBoxGuestAdditions_xxx.iso(xxx 对应版本号)


三、方式一:图形化安装增强功能(推荐,最简单)

1. 加载 ISO

  1. 启动虚拟机;
  1. 菜单栏:设备 → 安装增强功能... ,VirtualBox 会自动加载对应版本的 VBoxGuestAdditions.iso 到虚拟机光驱。

2. 执行安装

进入虚拟机,打开光驱目录,双击运行 VBoxLinuxAdditions.run,按提示输入密码,等待安装完成后,重启虚拟机即可生效。

异常情况:

如果不行,那就手动安装吧。


四、方式二:手动安装增强功能(通用、稳定、排坑首选)

适用于:图形化安装失败、CentOS/RHEL 系最小化安装、无桌面环境的虚拟机。

iso 还是需要挂载

1. 安装必备依赖

增强功能需要编译内核模块,先安装编译工具与内核头文件(必执行):

bash 复制代码
yum install -y gcc gcc-devel gcc-c++ gcc-c++-devel make \
kernel kernel-devel kernel-headers bzip2

2. 可选依赖(报错时安装)

若安装时报 XorglibXrandrlibXt 相关错误,再执行以下命令:

bash 复制代码
yum -y install xorg-x11-server-Xorg
yum install libXrandr
yum install libXt
yum install libXmu

3. 挂载光驱并执行安装

bash 复制代码
# 创建挂载点
mkdir -p /mnt/cdrom

# 挂载光驱(一般是 /dev/cdrom 或 /dev/sr0,若报错可替换为 /dev/sr0)
mount /dev/cdrom /mnt/cdrom

# 进入目录执行安装脚本
cd /mnt/cdrom
./VBoxLinuxAdditions.run

4. 安装成功标志

看到类似以下输出,说明内核模块编译成功:

Plain 复制代码
VirtualBox Guest Additions: Building the modules for kernel 3.10.0-xxx.el7.x86_64.
VirtualBox Guest Additions: Starting.

5. 重启虚拟机(必做)

安装完成后必须重启,才能加载新增的内核模块:

bash 复制代码
reboot

五、配置共享文件夹(宿主机 ↔ 虚拟机文件互通)

增强功能安装完成后,才能正常配置并使用共享文件夹。

1. VirtualBox 中设置共享文件夹(关键注意点)

  1. 关闭虚拟机(或运行状态下:设置 → 共享文件夹);

  2. 点击「添加共享文件夹」,配置以下项:

    • 文件夹路径 :选择宿主机上的真实目录(如 D:\html);

    • 文件夹名称 :自定义(如 html,后续挂载需用到);

    • 勾选:固定分配

    • ⚠️ 绝对不要勾选:自动挂载 :一旦勾选,系统会自动挂载到 /media/ 下,路径不可控,且易与手动挂载冲突。

2. 虚拟机内手动挂载

bash 复制代码
# 创建虚拟机内的挂载目录(自定义路径,如 /mnt/data)
mkdir -p /mnt/data

# 执行挂载:html 是上面设置的"文件夹名称",/mnt/data 是虚拟机内目录
mount -t vboxsf html /mnt/data

挂载成功后,宿主机 D:\html 与虚拟机 /mnt/data 的内容会实时同步。


六、设置开机自动挂载(避免重复手动操作)

通过修改 /etc/rc.local 文件,实现虚拟机开机后自动挂载共享文件夹。

1. 编辑 rc.local 文件

bash 复制代码
vi /etc/rc.local

2. 添加挂载命令

在文件末尾添加以下内容(与手动挂载命令一致):

Plain 复制代码
mount -t vboxsf html /mnt/data

3. 赋予执行权限(CentOS 7+ 必做)

CentOS 7 及以上版本,rc.local 默认无执行权限,需手动授权:

bash 复制代码
chmod +x /etc/rc.local
chmod +x /etc/rc.d/rc.local

4. 重启验证

bash 复制代码
reboot

重启后,进入虚拟机查看 /mnt/data,若能看到宿主机共享目录的内容,说明自动挂载生效。


七、常见问题与排坑(高频场景)

1. 挂载报错:mount: unknown filesystem type 'vboxsf'

原因:增强功能未安装、未重启,或内核模块未加载。

解决

bash 复制代码
# 查看 vboxsf 模块是否加载
lsmod | grep vbox

# 未加载则手动加载
modprobe vboxsf

若仍失败,重新安装增强功能并重启虚拟机。

2. 安装报错:Building the main Guest Additions modules ...fail!

原因kernel-devel 版本与当前运行内核不一致。

解决

bash 复制代码
# 查看当前运行的内核版本
uname -r

# 安装对应版本的 kernel-devel
yum install -y kernel-devel-$(uname -r)

安装完成后,重新执行 ./VBoxLinuxAdditions.run

3. 共享文件夹挂载成功,但权限异常(只读/无法写入)

解决:挂载时指定权限参数,修改挂载命令:

bash 复制代码
mount -t vboxsf html /mnt/data -o rw,uid=0,gid=0,umask=000

若需开机生效,将上述命令替换 /etc/rc.local 中对应的挂载命令。

4. 增强功能安装成功,但鼠标无法无缝切换

解决

  • 确认增强功能版本与 VirtualBox 主程序一致;

  • 重新加载增强功能 ISO:设备 → 插入增强功能 CD → 重新执行安装脚本;

  • 重启虚拟机。


八、总结

  1. 增强功能是提升虚拟机体验的核心组件,必须安装,且版本必须与 VirtualBox 主程序完全匹配

  2. 优先尝试图形化安装,失败后切换手动安装,手动安装需注意依赖齐全、内核匹配;

  3. 共享文件夹配置的核心坑点:不要勾选"自动挂载" ,手动挂载 + rc.local 开机自启最稳定;

  4. 所有挂载、模块加载问题,优先排查:版本匹配、依赖安装、是否重启虚拟机。

本文适配 CentOS 7/8、RHEL、Oracle Linux 等主流服务器系统,按步骤操作可一次性完成增强功能安装与共享文件夹配置,彻底解决虚拟机与宿主机交互的痛点。

相关推荐
星 海17 天前
【网络】VirtualBox网络模式
网络·虚拟机·virtualbox·vm
skywalk816319 天前
通过下载Ubuntu ova文件在Virtual Box快速安装ubuntu
linux·运维·ubuntu·virtualbox
shimly1234563 个月前
win11 下载安装 virtualbox,安装 ubuntu24.04 镜像
virtualbox
MinterFusion5 个月前
如何在VirtalBox中安装deepin操作系统虚拟机(v0.1.0)(上)
虚拟机·deepin·virtualbox·国产操作系统·系统维护·明德融创·虚拟技术
MinterFusion5 个月前
如何在VirtalBox中安装deepin操作系统虚拟机(v0.1.0)(下)
运维·虚拟机·deepin·virtualbox·国产操作系统·明德融创·虚拟技术
BIBI20496 个月前
VirtualBox 7.x 安装 Ubuntu 24 及增强功能配置、克隆虚拟机教程
linux·windows·ubuntu·环境搭建·安装教程·最佳实践·virtualbox
dephixf6 个月前
VirtualBox虚拟机转Hyper-V实操成功
hyper-v·virtualbox·虚拟机转换
allanGold7 个月前
【virtualbox】如何修改磁盘存储的size
virtualbox·磁盘容量调整
皓月盈江8 个月前
Linux Debian13安装virtualbox-7.2_7.2.6-172322-Debian-trixie虚拟机平台无法运行的解决方法
linux·debian·虚拟机·virtualbox·debian13·virtualbox7.2.6·kernel driver