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 等主流服务器系统,按步骤操作可一次性完成增强功能安装与共享文件夹配置,彻底解决虚拟机与宿主机交互的痛点。

相关推荐
86Eric2 天前
Vagrant 镜像打包与新环境部署全流程实操(避坑指南)
运维·vagrant·virtualbox·vagrantfile
大房身镇、王师傅12 天前
【VirtualBox】VirtualBox 7.1.6 RockyLinux10 配置增强功能 设置共享目录
运维·服务器·virtualbox·rockylinux10
小小ken13 天前
ubuntu通过virtualbox安装win10虚拟机简要步骤及排错
ubuntu·虚拟机·virtualbox
allanGold1 个月前
【virtualbox】【windows】已有虚拟机存储容量调整方法
windows·virtualbox
韩曙亮1 个月前
【错误记录】VirtualBox 中安装 Ubuntu 系统无法跨虚拟机进行复制操作 ( 解决方案 - 启用 “ 共享粘贴板 “、“拖动“ 双向操作 )
linux·运维·ubuntu·virtualbox·ros 2
GalenZhang8883 个月前
在 Windows 11 中安装 VirtualBox 7.2.4
virtualbox
一张假钞3 个月前
Mac OS 安装 VirtualBox
macos·virtualbox
kfepiza4 个月前
Linux的 `modprobe` 命令笔记251006
linux·virtualbox
穷人小水滴5 个月前
在 VirtualBox 虚拟机中安装 Fedora CoreOS 操作系统
linux·virtualbox·fedora