首页主机资讯VirtualBox虚拟机在CentOS中如何安装驱动程序

VirtualBox虚拟机在CentOS中如何安装驱动程序

时间2025-12-15 20:46:04发布访客分类主机资讯浏览1378
导读:在 CentOS 虚拟机中安装 VirtualBox 驱动的正确做法 一、先明确驱动类型 宿主机(运行 VirtualBox 的电脑)需要安装并加载 VirtualBox 内核模块(vboxdrv/vboxnetflt/vboxpci),...

在 CentOS 虚拟机中安装 VirtualBox 驱动的正确做法

一、先明确驱动类型

  • 宿主机(运行 VirtualBox 的电脑)需要安装并加载 VirtualBox 内核模块(vboxdrv/vboxnetflt/vboxpci),否则会看到错误:Kernel driver not installed (rc=-1908)
  • 虚拟机内(CentOS 客户机)需要安装 VirtualBox Guest Additions(VBoxLinuxAdditions.run),以获得共享剪贴板、拖放、自动分辨率、无缝鼠标、共享文件夹等增强功能。

二、宿主机驱动安装与修复(出现 rc=-1908 时)

  • 安装编译依赖与头文件(以 CentOS 7 为例,CentOS 8/9 将 yum 换为 dnf):
    • sudo yum install -y gcc make perl kernel-devel kernel-headers dkms
  • 重建内核模块(两条命令二选一,按系统提示执行):
    • sudo /usr/lib/virtualbox/vboxdrv.sh setup
    • 或(旧版路径)sudo /etc/init.d/vboxdrv setup
  • 若编译失败并提示找不到内核源码,手动指定内核源码目录后重建:
    • export KERN_DIR=/usr/src/kernels/$(uname -r)
    • sudo /usr/lib/virtualbox/vboxdrv.sh setup
  • 安装 DKMS 以提升后续内核升级后的模块自动重建成功率:
    • sudo yum install -y dkms
    • 然后再次执行 vboxdrv.sh setup
  • 加载模块并验证:
    • sudo modprobe vboxdrv
    • lsmod | grep vbox(应看到 vboxdrv、vboxnetflt、vboxpci 等)
  • 若仍失败,检查日志:/var/log/vbox-install.log,常见原因是运行内核与已安装的 kernel-devel/kernel-headers 版本不一致。

三、CentOS 客户机安装增强功能(Guest Additions)

  • 安装编译依赖与头文件(确保与当前运行内核匹配):
    • CentOS 7:sudo yum install -y epel-release gcc make perl kernel-devel kernel-headers dkms bzip2
    • CentOS 8/9:sudo dnf install -y epel-release gcc make perl kernel-devel kernel-headers dkms bzip2
    • 核对版本:uname -r 与 rpm -q kernel-devel 输出应一致;不一致请先升级内核并重启。
  • 在 VirtualBox 菜单:设备 → 插入 Guest Additions CD 镜像,挂载后进入光盘目录(常见为 /run/media/$USER/VBox_GAs_* 或 /mnt/cdrom)。
  • 执行安装脚本(需要 root 权限):
    • cd /run/media/$USER/VBox_GAs_*
    • sudo sh ./VBoxLinuxAdditions.run
  • 安装完成后重启:
    • sudo reboot
  • 验证安装结果:
    • lsmod | grep vboxguest(应能看到 vboxguest 模块)
    • 测试:自动全屏、拖放/剪贴板、共享文件夹是否可用。

四、常见故障排查

  • 编译增强功能时报错“unable to find the sources of your current Linux kernel”:
    • 安装匹配版本的 kernel-devel/kernel-headers,或设置 KERN_DIR 指向 /usr/src/kernels/$(uname -r) 后重试。
  • 启动虚拟机报 Kernel driver not installed (rc=-1908)
    • 在宿主机执行 vboxdrv.sh setup 重建内核模块,并确保已安装 gcc、make、perl、kernel-devel、dkms
  • 运行内核与头文件版本不一致导致模块编译失败:
    • 执行 sudo yum/dnf update 升级内核,重启后再安装/重建。
  • 增强功能脚本无法执行或权限不足:
    • 确认挂载点下存在 VBoxLinuxAdditions.run,使用 sudo 执行;必要时检查挂载是否成功、文件是否可读。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: VirtualBox虚拟机在CentOS中如何安装驱动程序
本文地址: https://pptw.com/jishu/772039.html
CentOS上Postman如何进行API文档生成 VirtualBox虚拟机在CentOS中如何设置启动顺序

游客 回复需填写必要信息