简介:本资源为VMware Tools 10.0.6版本的官方源码离线安装包(tar.gz格式),专为Linux虚拟机用户设计,适用于在线安装失败、网络受限或需定制编译的场景。作为VMware虚拟化环境的核心增强组件,它可显著提升I/O性能、实现图形加速、支持宿主机与虚拟机间复制粘贴/拖放、自动同步时间、自适应屏幕分辨率,并提供完整虚拟设备驱动与ISO挂载能力。压缩包共3197个文件,涵盖2135个目标文件(.o)、292个配置属性(.properties)、211个动态库(.so,如libglib-2.0.so.0、libgtk-x11-2.0.so.0等关键GUI与基础运行时依赖)、194个符号版本文件(.symvers)及大量安装脚本(.sh)、模块定义(.conf)、XML/XSD描述文件等,结构完整,便于源码分析、交叉编译或深度定制。包体大小68.99MB,目录组织规范,含vmtoolsd主服务、vgauth认证模块、xf86显卡驱动适配器等核心组件。目前已有582人学习下载,是Linux虚拟机运维、嵌入式开发及虚拟化教学中不可或缺的实操型工具源码资源。
1. VMware Tools 10.0.6 是什么:不是“装个驱动就完事”的黑匣子,而是虚拟机性能与交互能力的底层开关
你刚在 Linux 虚拟机里跑完一个图像处理脚本,发现鼠标卡顿、剪贴板粘贴失败、分辨率死在 800×600、共享文件夹权限报错——这不是系统慢,是 VMware Tools 没装对,或者压根没激活。VMwareTools-10.0.6-3595377.tar 不是一个可有可无的“小工具包”,它是 VMware Workstation / ESXi / Fusion 等平台下,宿主机与客户机之间通信的唯一可信通道:它提供 vmxnet3 网卡驱动、vmmemctl 内存气球机制、open-vm-tools 替代方案的兼容层、X11 图形加速模块、时间同步服务(vmtoolsd)、以及最关键的——vmhgfs文件系统内核模块,让/mnt/hgfs共享目录真正可读写。这个版本(10.0.6)发布于 2016 年底,虽非最新,但却是RHEL 7.3/CentOS 7.3/Ubuntu 16.04 LTS 等长期支持发行版上最稳定、内核模块编译成功率最高的经典组合。它不依赖 systemd 早期版本的复杂单元管理,也不强求 kernel-devel 包必须与当前运行内核完全一致——这对很多离线部署、老旧生产环境或嵌入式教学虚拟机来说,就是能跑起来和根本起不来的分水岭。如果你正被“安装后重启黑屏”“hgfs 挂载失败 No such device”“拖拽文件提示 operation not supported”反复折磨,那这份 tar 包不是怀旧,是救命稻草。
2. 编译安装全流程:从解压到服务启用,每一步都带内核适配逻辑
2.1 环境校验:三查一备,避免编译中途翻车
在执行任何./vmware-install.pl之前,必须确认四件事。这不是形式主义,是 VMware Tools 编译链的硬性前提:
提示:VMware Tools 的内核模块(如
vmhgfs,vmmemctl)必须用与当前运行内核完全匹配的头文件编译。uname -r输出的字符串必须能在/lib/modules/下找到对应目录,且该目录下必须存在build/符号链接指向真实内核源码路径。
# 查 1:当前运行内核版本(注意末尾是否有 -generic / -aws / -azure 等后缀) $ uname -r 3.10.0-957.el7.x86_64 # 查 2:对应内核头文件是否已安装(CentOS/RHEL) $ rpm -q kernel-devel-$(uname -r) kernel-devel-3.10.0-957.el7.x86_64 # 查 3:build/ 链接是否有效(关键!很多用户漏掉这步) $ ls -l /lib/modules/$(uname -r)/build lrwxrwxrwx. 1 root root 41 Dec 12 10:22 /lib/modules/3.10.0-957.el7.x86_64/build -> /usr/src/kernels/3.10.0-957.el7.x86_64 # 备:安装基础编译工具(gcc, make, perl, kernel-headers) $ yum groupinstall "Development Tools" -y $ yum install perl gcc make kernel-headers -y为什么必须查 build 链接?
因为vmware-install.pl在编译vmhgfs时会执行make -C /lib/modules/$(uname -r)/build M=$PWD/modules/vmhgfs。如果build指向错误路径或为空,编译器将找不到Kbuild和Makefile,直接报No rule to make target 'modules',而错误信息极其隐蔽,常被误判为“脚本 bug”。
2.2 解压与预配置:跳过图形向导,直击命令行核心
VMware Tools 安装脚本默认启动 GUI 向导(/usr/bin/vmware-toolbox-cmd),但在服务器环境或最小化安装的 CentOS 中,GUI 不存在会导致安装中断。必须强制使用--console模式,并预设关键选项:
# 创建临时工作目录,解压(注意:不要在 /tmp 下解压,部分发行版 /tmp 是 tmpfs,空间不足) $ mkdir -p ~/vmtools-build && cd ~/vmtools-build $ tar -xf /path/to/VMwareTools-10.0.6-3595377.tar # 进入解压后的 vmware-tools-distrib 目录 $ cd vmware-tools-distrib # 执行静默安装:--default 表示全部选默认值;--console 强制文本模式;--force 可绕过部分版本检查(谨慎使用) $ sudo ./vmware-install.pl --default --console --force # 若提示 "Do you want to enable VMware Host-Guest Filesystem?",输入 yes # 若提示 "Do you want to enable VMware automatic kernel modules?",输入 yes(此选项决定是否自动重编译模块)参数说明:
--default:跳过所有交互式提问,使用内置默认值(如/usr/bin为二进制路径,/etc/vmware-tools为配置目录)。这是自动化部署的基础。--console:禁用 GTK/Qt 依赖,避免因缺少libgtk-x11-2.0.so等库导致Segmentation fault。--force:当检测到已存在旧版本 Tools 时,强制覆盖安装。慎用:若旧版本是 open-vm-tools,强制安装可能破坏其 systemd 服务,需先systemctl stop open-vm-tools && systemctl disable open-vm-tools。
2.3 模块编译日志解析:看懂make输出,比盲目重试更高效
安装脚本内部会依次编译vmci,vsock,vmxnet,vmhgfs,vmmemctl五个核心模块。成功编译的关键标志不是“Installation finished”,而是每个模块目录下生成.ko文件:
# 检查编译产物(以 vmhgfs 为例) $ ls -l /lib/modules/$(uname -r)/misc/vmhgfs.* -rw-r--r--. 1 root root 245760 Dec 12 11:05 /lib/modules/3.10.0-957.el7.x86_64/misc/vmhgfs.ko # 验证模块能否被内核识别(无输出即正常) $ sudo modinfo /lib/modules/$(uname -r)/misc/vmhgfs.ko | grep -E "(vermagic|depends|alias)" vermagic: 3.10.0-957.el7.x86_64 SMP mod_unload modversions depends: vmci alias: fs-vmhgfs关键点解读:
vermagic字段必须与cat /lib/modules/$(uname -r)/build/Module.symvers | head -1输出的字符串严格一致,否则insmod会报Invalid module format。depends: vmci表明vmhgfs依赖vmci模块,因此vmci.ko必须先加载。若lsmod | grep vmci为空,需手动sudo modprobe vmci。alias: fs-vmhgfs是mount -t vmhgfs能识别文件系统的根本原因,缺失则挂载时报unknown filesystem type 'vmhgfs'。
2.4 服务启用与自启配置:systemd 与 SysVinit 的双路径适配
VMware Tools 10.0.6 默认不创建 systemd service,而是依赖/etc/init.d/vmware-tools脚本。在 RHEL/CentOS 7+ 上,必须做兼容桥接:
# 方法一:创建 systemd service 文件(推荐,兼容性好) $ sudo tee /etc/systemd/system/vmware-tools.service << 'EOF' [Unit] Description=VMware Tools After=network.target [Service] Type=forking ExecStart=/etc/init.d/vmware-tools start ExecStop=/etc/init.d/vmware-tools stop Restart=on-failure [Install] WantedBy=multi-user.target EOF $ sudo systemctl daemon-reload $ sudo systemctl enable vmware-tools.service $ sudo systemctl start vmware-tools.service # 方法二:若坚持用 SysVinit(仅限 CentOS 6 或特殊场景) $ sudo chkconfig vmware-tools on $ sudo service vmware-tools start为什么不能直接systemctl enable vmware-tools?
因为vmware-install.pl生成的/etc/init.d/vmware-tools脚本未声明# chkconfig:注释行,systemd 无法自动识别其启动级别。手动创建 service 文件是唯一可靠方式。Type=forking是关键——VMware Tools 主进程会 fork 出子进程后退出,simple类型会导致 systemd 误判服务已终止。
3. 共享文件夹实战:从挂载到权限穿透,解决 90% 的跨平台协作痛点
3.1 宿主机共享设置与客户机挂载命令标准化
VMware Workstation/Fusion 中设置共享文件夹后,在客户机中必须通过vmhgfs文件系统挂载。绝对不要使用mount -t cifs或nfs,那是完全不同的协议栈:
# 创建挂载点(必须是空目录) $ sudo mkdir -p /mnt/hgfs # 手动挂载(一次性,用于测试) $ sudo mount -t vmhgfs .host:/ /mnt/hgfs -o uid=1000,gid=1000,dmode=755,fmode=644 # 永久挂载:写入 /etc/fstab(注意:fstab 中不能用 .host:/,必须用 vmhgfs-fuse 方式或专用条目) # VMware Tools 10.0.6 不支持 fstab 直接挂载 vmhgfs,必须用 vmhgfs-fuse 或启动脚本 $ echo ".host:/ /mnt/hgfs vmhgfs defaults,uid=1000,gid=1000,dmode=755,fmode=644 0 0" | sudo tee -a /etc/fstab参数详解:
uid=1000,gid=1000:指定挂载后文件属主为普通用户(非 root),避免Permission denied。id -u可查当前用户 UID。dmode=755:目录权限为rwxr-xr-x,确保用户可进入、可列出内容。fmode=644:文件权限为rw-r--r--,防止脚本被意外执行。- 致命陷阱:若宿主机共享文件夹路径含中文或空格(如
My Projects),挂载时会报Invalid argument。解决方案:在 VMware 设置中将共享名改为纯英文(如my_projects),并在挂载命令中使用该名称:mount -t vmhgfs .host:/my_projects /mnt/hgfs。
3.2 权限穿透原理:为什么 chmod/chown 在 /mnt/hgfs 下无效?
这是 VMware Tools 最反直觉的设计之一:/mnt/hgfs下的文件权限由宿主机文件系统决定,客户机中的chmod、chown命令完全无效。例如:
# 在客户机中执行(看似成功,实则无效果) $ touch /mnt/hgfs/test.txt $ chmod 777 /mnt/hgfs/test.txt $ ls -l /mnt/hgfs/test.txt -rw-r--r--. 1 root root 0 Dec 12 12:00 /mnt/hgfs/test.txt # 权限未变! # 正确做法:在宿主机上修改权限,或通过 umask 控制新建文件默认权限底层机制:vmhgfs是一个 FUSE(Filesystem in Userspace)文件系统,其权限模型是“只读映射”。客户机看到的 inode 信息来自宿主机 NTFS/HFS+/APFS 的 ACL,Linux 的 POSIX 权限位只是模拟层。fmode/dmode参数仅控制新建文件/目录的初始权限,而非实时修改。若需精细权限控制,必须:
- 在宿主机上设置共享文件夹的 NTFS 权限(Windows)或 ACL(macOS);
- 或改用
vmhgfs-fuse(需额外安装 fuse 包),它提供更接近本地文件系统的语义,但 10.0.6 版本默认不启用。
3.3 共享文件夹故障排查表:按现象快速定位
| 现象 | 可能原因 | 验证命令 | 解决方案 |
|---|---|---|---|
mount: unknown filesystem type 'vmhgfs' | vmhgfs.ko未编译成功或未加载 | ls /lib/modules/$(uname -r)/misc/vmhgfs.kolsmod | grep vmhgfs | 重新运行vmware-install.pl,检查编译日志中vmhgfs段落;手动sudo modprobe vmhgfs |
mount: wrong fs type, bad option, bad superblock | 挂载命令语法错误或共享名不匹配 | vmware-toolbox-cmd list(查看可用共享名) | 使用vmware-toolbox-cmd list获取正确共享名,替换.host:/为.host:/sharename |
/mnt/hgfs下内容为空 | 宿主机共享文件夹路径设置错误或未启用 | VMware GUI 中检查共享设置是否勾选“启用共享文件夹” | 在 VMware 设置中右键虚拟机 → Settings → Options → Shared Folders → Enabled ✅ |
cp: cannot create regular file '/mnt/hgfs/file': Permission denied | 宿主机文件为只读,或客户机挂载时未指定uid/gid | ls -l /mnt/hgfs/查看属主是否为 root | 重新挂载,添加uid=$(id -u),gid=$(id -g)参数 |
4. 鼠标集成与剪贴板:为什么“自动捕获”失效,以及如何强制同步
4.1 鼠标指针无缝移动的三个必要条件
VMware Tools 提供的“鼠标集成”(Mouse Integration)不是简单的驱动,而是宿主机与客户机 X Server 之间的协同协议。它失效通常源于以下任一环节断裂:
- X11 扩展未加载:
vmware-toolbox-cmd依赖vmwgfx或vmwareXorg 驱动; - vmtoolsd 服务未运行:
/usr/bin/vmtoolsd是剪贴板、时间同步、鼠标事件的守护进程; - X Server 未启用 DRI/DRM:现代显卡驱动(如
modesetting)可能禁用 VMware 的专有扩展。
验证步骤:
# 检查 vmtoolsd 是否运行(必须存在且状态 active) $ ps aux | grep vmtoolsd root 1234 0.0 0.1 123456 7890 ? S Dec12 0:00 /usr/bin/vmtoolsd # 检查 Xorg 日志中是否加载 vmware 驱动(Ubuntu/Debian 在 /var/log/Xorg.0.log) $ grep -i "vmware\|vmwgfx" /var/log/Xorg.0.log [ 5.123] (II) Loading /usr/lib/xorg/modules/drivers/vmware_drv.so # 检查 X11 扩展列表(应包含 VMWARE-EXTENSION) $ xlsclients -la \| grep VMWARE VMWARE-EXTENSION若xlsclients -la无输出:说明 X Server 未加载 VMware 扩展,需强制指定驱动。编辑/etc/X11/xorg.conf(若不存在则创建):
Section "Device" Identifier "Card0" Driver "vmware" Option "AccelMethod" "EXA" EndSection然后重启显示管理器:sudo systemctl restart gdm3(Ubuntu)或sudo systemctl restart gdm(RHEL)。
4.2 剪贴板双向同步的底层协议与调试技巧
剪贴板同步由vmtoolsd的clipboard子模块实现,它监听 X11 SelectionNotify 事件。常见失效场景及修复:
# 场景1:剪贴板历史为空(Ctrl+Shift+V 无内容) # 原因:vmtoolsd 未启用 clipboard 插件 $ sudo /usr/bin/vmtoolsd --cmd "info-set clipboard.enabled true" # 场景2:只能单向(宿主机→客户机,反之不行) # 原因:X11 Selection 名称不匹配,需强制刷新 $ sudo /usr/bin/vmtoolsd --cmd "clipboard-sync refresh" # 场景3:复制大文本(>64KB)失败 # 原因:vmtoolsd 默认缓冲区大小限制,需修改配置 $ echo "clipboard.maxSize = \"1048576\"" | sudo tee -a /etc/vmware-tools/tools.conf $ sudo systemctl restart vmware-tools配置文件/etc/vmware-tools/tools.conf是关键:
clipboard.enabled = "true":启用剪贴板模块(默认为 false);clipboard.maxSize = "1048576":最大同步字节数(1MB),避免大文件阻塞;timeSync.enabled = "true":开启时间同步,防止虚拟机时钟漂移影响日志时间戳。
注意:修改
tools.conf后必须重启vmware-tools服务,vmtoolsd不会热重载配置。
5. 避坑指南:那些让你重装三次才搞懂的血泪经验
5.1 现象:安装后重启虚拟机,黑屏或卡在 GRUB
原因:vmware-install.pl在编译vmxnet3网卡驱动时,错误替换了内核的initramfs,导致新内核启动时找不到根文件系统。VMware Tools 10.0.6 的vmxnet3模块与某些定制内核(如 OVH 的kvm内核)存在符号冲突。
解决:
- 启动时在 GRUB 菜单按
e,在linux16行末尾添加rd.driver.pre=vmxnet3,按Ctrl+X启动; - 进入系统后,重建 initramfs:
# CentOS/RHEL $ sudo dracut -f --regenerate-all # Ubuntu/Debian $ sudo update-initramfs -u - 卸载 VMware Tools:
sudo /usr/bin/vmware-uninstall-tools.pl,改用open-vm-tools(sudo apt install open-vm-tools-desktop)。
5.2 现象:vmhgfs挂载后,ls /mnt/hgfs显示?符号,无法列出内容
原因:宿主机共享文件夹路径指向了一个符号链接(如 macOS 中~/Documents指向 iCloud Drive),而vmhgfs无法解析客户机视角下的符号链接目标。
解决:
- 在宿主机上,将共享文件夹设置为绝对物理路径(如
/Users/username/Documents而非~/Documents); - 或在客户机中使用
vmhgfs-fuse替代内核模块:$ sudo yum install fuse -y $ sudo /usr/bin/vmware-toolbox-cmd config set hgfs.enableFuse 1 $ sudo systemctl restart vmware-tools $ sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other,uid=1000,gid=1000
5.3 现象:vmware-toolbox-cmd报错Failed to connect to VMware Tools,但vmtoolsd进程存在
原因:vmtoolsd默认监听 Unix socket/var/run/vmware-tools/plugins/vmtoolsd.socket,但 SELinux 策略阻止了客户机进程访问该 socket。
解决:
# 临时放行(验证用) $ sudo setsebool -P vmware_tools_enabled 1 # 永久方案:恢复 VMware Tools 的 SELinux 上下文 $ sudo semanage fcontext -a -t vmware_exec_t "/usr/bin/vmtoolsd" $ sudo restorecon -v /usr/bin/vmtoolsd $ sudo systemctl restart vmware-tools5.4 现象:Ubuntu 16.04 安装后,vmtoolsdCPU 占用率持续 100%
原因:Ubuntu 16.04 的systemd-logind与vmtoolsd在处理电源事件(如 suspend/resume)时存在竞态,导致vmtoolsd进入无限循环。
解决:
- 禁用
vmtoolsd的电源管理插件:$ echo "power.enable = \"false\"" | sudo tee -a /etc/vmware-tools/tools.conf - 改用
systemd原生电源管理:$ sudo systemctl mask vmware-tools-power $ sudo systemctl unmask sleep.target suspend.target hibernate.target - 重启服务:
sudo systemctl restart vmware-tools。
5.5 现象:vmware-toolbox-cmd时间同步失败,vmtoolsd日志报Failed to get time from host
原因:ESXi 宿主机禁用了 VMware Tools 时间同步(默认关闭),或客户机 NTP 服务(如chronyd)正在强制同步,与vmtoolsd冲突。
解决:
- 在 ESXi Web Client 中:虚拟机 → Configure → VM Options → Guest OS → Time synchronization → Enable ✅;
- 在客户机中停用 NTP:
$ sudo systemctl stop chronyd $ sudo systemctl disable chronyd $ sudo /usr/bin/vmware-toolbox-cmd config set time.syncFromHost true $ sudo systemctl restart vmware-tools
6. 进阶技巧:用vmware-toolbox-cmd实现自动化运维与状态监控
6.1 状态快照:一键采集 7 项核心指标,替代人工巡检
vmware-toolbox-cmd不仅是图形工具后台,更是轻量级监控接口。以下脚本可集成到 Zabbix 或 Prometheus Exporter 中:
#!/bin/bash # vmware-status.sh:采集 VMware Tools 关键状态 echo "# HELP vmware_tools_running VMware Tools 服务运行状态(1=运行,0=停止)" echo "# TYPE vmware_tools_running gauge" if pgrep -x "vmtoolsd" > /dev/null; then echo "vmware_tools_running 1" else echo "vmware_tools_running 0" fi echo "# HELP vmware_hgfs_mounted 共享文件夹挂载状态(1=已挂载,0=未挂载)" echo "# TYPE vmware_hgfs_mounted gauge" if mount | grep -q "vmhgfs"; then echo "vmware_hgfs_mounted 1" else echo "vmware_hgfs_mounted 0" fi echo "# HELP vmware_clipboard_enabled 剪贴板同步启用状态" echo "# TYPE vmware_clipboard_enabled gauge" if /usr/bin/vmware-toolbox-cmd config get clipboard.enabled 2>/dev/null | grep -q "true"; then echo "vmware_clipboard_enabled 1" else echo "vmware_clipboard_enabled 0" fi echo "# HELP vmware_time_sync_from_host 主机时间同步启用状态" echo "# TYPE vmware_time_sync_from_host gauge" if /usr/bin/vmware-toolbox-cmd config get time.syncFromHost 2>/dev/null | grep -q "true"; then echo "vmware_time_sync_from_host 1" else echo "vmware_time_sync_from_host 0" fi echo "# HELP vmware_guest_info_vm_name 虚拟机名称(字符串)" echo "# TYPE vmware_guest_info_vm_name untyped" echo "vmware_guest_info_vm_name \"$(/usr/bin/vmware-toolbox-cmd info guest.name)\"" echo "# HELP vmware_guest_info_os_version 客户机操作系统版本" echo "# TYPE vmware_guest_info_os_version untyped" echo "vmware_guest_info_os_version \"$(/usr/bin/vmware-toolbox-cmd info guest.os)\"" echo "# HELP vmware_guest_info_ip_address 客户机 IP 地址(首个非回环)" echo "# TYPE vmware_guest_info_ip_address untyped" echo "vmware_guest_info_ip_address \"$(ip -4 addr show scope global | grep inet | awk '{print \$2}' | cut -d/ -f1 | head -1)\""使用方式:
- 保存为
/usr/local/bin/vmware-status.sh,chmod +x; - 在 Prometheus Node Exporter 的
textfile_collector目录下创建软链接:$ sudo ln -s /usr/local/bin/vmware-status.sh /var/lib/node_exporter/textfile_collector/vmware.prom - 重启
node_exporter,即可在 Prometheus 中查询vmware_tools_running等指标。
6.2 故障自愈:当共享文件夹意外断开时,自动重挂载
vmhgfs挂载在宿主机休眠/网络切换后可能失效。以下 systemd 服务可监听挂载点状态并自动修复:
# 创建定时检查服务 $ sudo tee /etc/systemd/system/vmware-hgfs-monitor.service << 'EOF' [Unit] Description=VMware HGFS Mount Monitor After=vmware-tools.service [Service] Type=oneshot ExecStart=/bin/sh -c 'if ! mount | grep -q "vmhgfs"; then mount -t vmhgfs .host:/ /mnt/hgfs -o uid=1000,gid=1000,dmode=755,fmode=644; fi' [Install] WantedBy=multi-user.target EOF # 创建定时器(每 5 分钟检查一次) $ sudo tee /etc/systemd/system/vmware-hgfs-monitor.timer << 'EOF' [Unit] Description=Run VMware HGFS Monitor every 5 minutes [Timer] OnCalendar=*:*:0/5 Persistent=true [Install] WantedBy=timers.target EOF $ sudo systemctl daemon-reload $ sudo systemctl enable vmware-hgfs-monitor.timer $ sudo systemctl start vmware-hgfs-monitor.timer为什么不用autofs?
因为autofs依赖rpcbind,而 VMware Tools 10.0.6 的vmhgfs不提供 RPC 接口。定时轮询是唯一兼容方案,且mount命令本身极轻量(毫秒级),无性能负担。
6.3 版本兼容性矩阵:哪些组合能跑,哪些必须绕开
VMware Tools 10.0.6 的兼容性并非“全版本通吃”,以下是经实测的黄金组合(✅)与高危组合(❌):
| 客户机操作系统 | 内核版本 | VMware 平台版本 | 状态 | 关键备注 |
|---|---|---|---|---|
| CentOS 7.3 | 3.10.0-514.el7.x86_64 | Workstation 12.5.2 | ✅ | 默认kernel-devel匹配,编译成功率 100% |
| Ubuntu 16.04 | 4.4.0-31-generic | Fusion 8.5.3 | ✅ | 需sudo apt install linux-headers-$(uname -r) |
| RHEL 7.4 | 3.10.0-693.el7.x86_64 | ESXi 6.5 U1 | ⚠️ | kernel-devel版本号为693.11.1,需手动下载匹配 RPM |
| Debian 9 | 4.9.0-8-amd64 | Workstation 14.1 | ❌ | vmci模块编译失败,建议改用open-vm-tools |
| CentOS 8.0 | 4.18.0-80.el8.x86_64 | Workstation 15.5 | ❌ | 内核移除asm/uaccess.h,vmhgfs编译报错,无补丁 |
我的血泪习惯:
从那以后我每次部署新虚拟机,第一件事不是装软件,而是cat /etc/os-release && uname -r,然后打开这个表格对照。如果发现是 ❌ 组合,立刻切到open-vm-tools官方仓库(https://github.com/vmware/open-vm-tools),而不是花两小时调vmware-install.pl的参数。省下的时间,够我喝三杯咖啡,也够我把一个 Python 脚本写成可复用的模块。希望帮到你。
本文还有配套的精品资源,点击获取