1. 在 Fedora 41/40/39 上安装 VMware Workstation Pro
1.1 下载 VMware Workstation Pro
您需要 Broadcom 帐户,然后转到[VMWare Workstation Pro 下载页面](https://support.broadcom.com/group/ecx/productdownloads?subfamily=VMware Workstation Pro&freeDownloads=true)并下载最新版本,目前为 17.6.3。
1.2 检查 sha256sum
1
| sha256sum ~/Downloads/VMware-Workstation-Full-17.6.3-24583834.x86_64.bundle
|
1.3 使 VMware-Workstation-Full-17.6.1-24319023.x86_64.bundle 可执行
1
| chmod +x ~/Downloads/VMware-Workstation-Full-17.6.3-24583834.x86_64.bundle
|
1.4 更改 root 用户
1.5 确保您的系统是最新的
1.5.1 全面更新您的系统
1.5.2 内核更新后重启系统:
1.6 安装所需的依赖项
1 2
| dnf install kernel-devel kernel-headers gcc make patch wget
|
1.7 运行 VMware 安装程序
1
| /home/<username>/Downloads/VMware-Workstation-Full-17.6.3-24583834.x86_64.bundle
|
1.8 构建 VMware 模块
1
| /usr/bin/vmware-modconfig --console --install-all
|
2. 运行 VMware
2.1 启动 VMware
从菜单:
或者
从命令行:
2.2 接受 VMware 通用条款

2.3 接受 VMware 许可证

2.4 启动时检查 VMware 更新

2.5 VMware 的客户体验改进计划(“CEIP”)

2.6 VMware 个人使用或许可证密钥

2.7 身份验证

2.8 在 Fedora 40 上运行的 VMware Workstation Pro 17.6.0

在 Fedora 42(kernel 6.15.7)上安装 VMware 模块失败的完整编译日志。问题的根因是 VMware 自带的 vmmon/vmnet 源码与新内核不兼容,导致缺失头文件(如 driver-config.h、vm_basic_defs.h 等)和 objtool 的新校验不通过。下面给出直接可执行的修复步骤。
一次性修复(推荐,使用社区补丁源码)
- 这个方法会用已适配新内核的补丁源码,覆盖
/usr/lib/vmware/modules/source 的 vmmon.tar/vmnet.tar,然后重新构建。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| # 1) 依赖 sudo dnf groupinstall -y "Development Tools" sudo dnf install -y kernel-devel-$(uname -r) kernel-headers-$(uname -r) elfutils-libelf-devel dkms git tar \ gsettings-desktop-schemas dconf # 修复 GSettings 警告
# 2) 确认 VMware 版本(用来选分支) vmware -v # 输出例:VMware Workstation 17.6.2 build-xxxxxxx
# 3) 获取匹配分支并编译安装模块(将分支名替换为你的实际版本) git clone https://github.com/mkubecek/vmware-host-modules.git cd vmware-host-modules git branch -r | grep workstation- # 查看可用分支 git checkout workstation-17.6.2 # 例如:你的 VMware 是 17.6.2 就用这个分支 make -j"$(nproc)" sudo make install
# 4) 重新构建并加载模块 sudo vmware-modconfig --console --install-all sudo modprobe -r vmmon vmnet 2>/dev/null || true sudo modprobe vmmon sudo modprobe vmnet
|
- 如果 Secure Boot 开启,加载时可能报 “Required key not available”。需要签名模块或临时关闭 Secure Boot。简单签名流程(如需):
1 2 3 4 5 6 7 8 9 10 11 12
| sudo mokutil --sb-state # 若 Enabled: sudo mkdir -p /root/mok && cd /root/mok openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -out MOK.pem -nodes -days 36500 -subj "/CN=VMware Modules/" openssl x509 -outform DER -in MOK.pem -out MOK.der sudo mokutil --import MOK.der # 设置一次性密码,重启进 MOK 管理界面注册 sudo reboot
# 重启注册完成后签名并加载 sudo kmodsign sha256 /root/mok/MOK.priv /root/mok/MOK.pem /lib/modules/$(uname -r)/misc/vmmon.ko sudo kmodsign sha256 /root/mok/MOK.priv /root/mok/MOK.pem /lib/modules/$(uname -r)/misc/vmnet.ko sudo modprobe vmmon vmnet
|
说明与常见坑
- 缺失的
driver-config.h 等不是内核头文件,而是 VMware 模块源码中的生成/包含文件;在新内核上,官方源码未适配时会出现这类错误。上面的补丁仓库已修复。
objtool: init_module(): Magic init_module() function name is deprecated 是内核接口变化导致,补丁仓库同样已处理。
- “GLib does not have GSettings support.” 警告可通过安装
gsettings-desktop-schemas 和 dconf 消除(上面已包含)。
- 确保正在运行的内核与已安装的
kernel-devel-$(uname -r) 完全一致;如不一致,更新并重启:
1 2
| sudo dnf upgrade -y kernel kernel-devel sudo reboot
|
1 2
| ls -lh /usr/lib/vmware/modules/source # 应看到新的 vmmon.tar 和 vmnet.tar(时间戳为刚安装),必要时重新运行 make install 与 vmware-modconfig
|