ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Ubuntu安装VMware Tools实现文件拖拽与剪贴板共享全指南

Ubuntu安装VMware Tools实现文件拖拽与剪贴板共享全指南 说实话每次看到有人在虚拟机里装完 Ubuntu然后对着“拖文件进不去、复制粘贴失效”这种问题干瞪眼我都觉得挺可惜的——因为这本来应该是最先解决的一步。VMware Tools 就是那个打通 Windows 和 Ubuntu 之间“双向通道”的组件装好之后文件拖拽、剪贴板共享、窗口自适应分辨率这些体验才算正常。这篇文章就围绕“Ubuntu 中安装 VMware Tools实现 Windows 文件拖入 Ubuntu”这个场景把几条可行路径、背后的原理和踩过的坑一次讲清楚。先说明一件事VMware Tools 的安装方式早就不是只有“虚拟机菜单里挂载 ISO”这一条路了尤其对于 Ubuntu 桌面版不同版本对应的最优解法差别很大。如果你用的还是老教程里的“下载 linux.iso 手动装”在新版 VMware 和 Ubuntu 上很可能会遇到一堆编译错误或者兼容性警告。所以这篇文章我会把当前主流的几种安装方式都梳理一遍你可以根据自己虚拟机里 Ubuntu 的版本、VMware 的版本对号入座选择方案。文中涉及的方法我都在 Ubuntu 20.04、22.04、24.04 上实测过也顺手处理过不少同事和朋友机器上的翻车现场。整个过程不复杂但里面有几个关键细节没处理好确实会让拖拽功能“假装成功”。1. 先搞清楚你机器上到底需要哪种 VMware Tools很多教程一上来就让你打开 VMware 菜单里的“安装 VMware Tools”然后挂载 ISO、解压、编译、安装。这个流程在十年前是标准答案但现在未必是最好的选择。关键在于你的 VMware 版本和 Ubuntu 版本决定了该走哪条路。1.1 新版 VMware 与 Ubuntu 的兼容性变化VMware Workstation Pro 从 17.6 版本开始有一个明显变化对于 Ubuntu、Debian 这类主流 Linux 桌面系统官方不再推荐在虚拟机菜单里使用传统的 VMware Tools ISO而是直接建议安装发行版自带的 open-vm-tools 包。这个变化在升级到 17.6 之后尤其明显菜单里虽然还保留“安装 VMware Tools”的选项但安装完成后系统往往会提示“VMware Tools is no longer shipped with VMware Workstation for this guest operating system”这个提示很容易让人慌神其实它只是告诉你“别再用老方式了去用系统源里的 open-vm-tools”。如果你看到这个提示不用慌反而应该庆幸——因为 open-vm-tools 的安装和维护远比传统 VMware Tools 省心。1.2 open-vm-tools 与 VMware Tools 的区别open-vm-tools 是 VMware Tools 的开源版本由 VMware 维护但随 Linux 发行版一起发布直接通过 apt 安装即可。它跟传统“闭源”版 VMware Tools 的核心功能几乎一致包括文件拖拽Drag and Drop剪贴板共享Copy and Paste自动分辨率适配Autofit Guest时间同步虚拟机优雅关机、重启桌面版 Ubuntu 还需要额外安装 open-vm-tools-desktop 这个包它包含了 X11/Wayland 图形会话下与剪贴板、拖拽相关的组件。很多人只装了 open-vm-tools结果发现拖拽和剪贴板还是不行多半就是少了这个 desktop 包。提示如果目标系统是 Ubuntu Server没有图形界面只装 open-vm-tools 就够了桌面版一定要装 open-vm-tools-desktop。1.3 什么情况下仍然需要走 ISO 手动安装虽然 open-vm-tools 是主流但有两种情况你还是得考虑传统 ISO 方式你的 Ubuntu 版本比较老比如 16.04 之前的版本系统源里没有合适的 open-vm-tools 包。你需要 VMware 官方闭源工具中某些特定功能模块比如 vmhgfs 驱动虽然 open-vm-tools 也带但老内核下可能需要额外处理。从个人经验看近几年遇到的绝大多数情况都推荐 open-vm-tools 路线。我自己的 Ubuntu 22.04 和 24.04 虚拟机都是直接 apt 安装三五分钟搞定拖拽和剪贴板直接生效从未出过幺蛾子。2. 方案一apt 直接安装 open-vm-tools推荐给绝大多数人如果你用的是 Ubuntu 20.04 及以上版本而且 VMware 是 Workstation 或 Fusion 的主流版本这个方案就是最优解。整个流程不需要挂载任何 ISO不需要编译内核模块只需要两条命令。2.1 完整安装命令与依赖说明打开终端先更新软件源索引然后安装两个包sudo apt update sudo apt install open-vm-tools open-vm-tools-desktop如果你平时习惯用-y参数跳过确认也可以写成sudo apt install -y open-vm-tools open-vm-tools-desktop。安装过程中 apt 会自动处理好依赖关系。这里有一个细节值得说明open-vm-tools-desktop 会依赖 open-vm-tools也就是说只装 desktop 包理论上就能带起基础包但保险起见还是两个都写上避免某些精简镜像的源里依赖解析不完整。安装完不需要重启虚拟机但为了确保内核模块正确加载到当前运行的内核建议执行一次重启sudo reboot2.2 验证安装是否生效重启之后用下面几个命令验证状态systemctl status open-vm-tools systemctl status vmtoolsd正常情况下这两个服务都是 active (running)。另外可以查看模块是否加载lsmod | grep vmw能看到 vmw_balloon、vmw_vmci、vmw_vsock 等模块说明核心组件已经工作。如果想快速测试拖拽功能最简单的方法就是在 Windows 里复制一段文字切到 Ubuntu 里按 CtrlV看能不能粘贴进去然后随便拖一个文件进 Ubuntu 的桌面。2.3 为什么 open-vm-tools 更稳从实际维护角度看open-vm-tools 的稳定性优于手动编译安装的传统 VMware Tools原因主要有三点它随 Ubuntu 仓库一起维护内核升级后 apt 会自动帮你重新构建或更新匹配的模块不用担心内核一升 Tools 就挂。安装过程是二进制包不需要本机装 gcc、make、内核头文件省掉一大串依赖和编译报错。卸载也干净一条sudo apt remove open-vm-tools open-vm-tools-desktop就能撤干净不像手动编译安装那样散落一地文件。我见过太多人卡在“继续运行脚本未能在虚拟机中成功运行”这个提示上基本都是 ISO 手动安装方式在 Ubuntu 20.04 以上的兼容性问题。如果你也被这个报错困扰我的建议很直接别折腾 ISO 了换成 open-vm-tools 方案大概率能一键解决。3. 方案二经典的 ISO 挂载方式什么时候用、怎么装我知道有些读者还是会遇到必须用 ISO 方式的情况比如你用的是比较老的 VMware 版本或者目标 Ubuntu 系统版本特殊源里没有 open-vm-tools。这里把 ISO 方式的详细操作也讲清楚万一用得上。3.1 挂载 VMware Tools 安装介质在虚拟机窗口菜单栏点“虚拟机 VM”——“安装 VMware Tools Install VMware Tools”这时候虚拟机会挂载一个虚拟光驱。如果这个选项是灰色的先确认虚拟机已开机并且客户机内有图形环境。挂载后打开 Ubuntu 终端先看一下光驱设备名lsblk一般会看到/dev/cdrom或者/dev/sr0这样的设备。然后创建一个挂载目录并挂载sudo mkdir -p /mnt/cdrom sudo mount /dev/cdrom /mnt/cdrom如果系统支持自动挂载桌面或者文件管理器里会直接出现 VMware Tools 的光盘图标那就省掉手动挂载这一步。但我习惯用命令行操作路径更可控。3.2 解压安装与权限处理进入挂载目录能看到一个VMwareTools-x.x.x-xxxxxxx.tar.gz格式的压缩包把它复制到 /tmp 下再解压这是官方推荐的步骤可以避免因为挂载目录权限问题导致的安装异常cd /tmp tar zxpf /mnt/cdrom/VMwareTools-*.tar.gz cd vmware-tools-distrib sudo ./vmware-install.pl安装脚本会问你一系列问题绝大多数情况下直接按回车接受默认值即可。老手可以直接用sudo ./vmware-install.pl -d-d参数表示使用默认配置执行安装省去一路回车。安装完成后同样建议重启sudo reboot3.3 手动安装常见的三个坑ISO 手动安装方式不是不能用但确实有几个高频坑需要提前知道。第一个坑就是本文开头提到的“继续运行脚本未能在虚拟机中成功运行”。这个提示通常出现在安装脚本快结束时原因往往是 Ubuntu 的新内核与旧版本 VMware Tools 的脚本不兼容或者 /usr/bin/vmware-config-tools.pl 执行时报错。遇到这个提示先别急着放弃看看终端里的完整报错信息多半是缺少编译器或者内核头文件补装相关包后重新执行配置脚本即可sudo apt install build-essential linux-headers-$(uname -r) sudo vmware-config-tools.pl第二个坑是光驱无法挂载或找不到 ISO。先检查 VMware 菜单里是否已经选择“使用 ISO 镜像文件”虚拟机设置中的 CD/DVD 设备状态要勾选“已连接”和“启动时连接”。第三个坑是重新安装或升级内核后 Tools 失效。手动编译安装的模块绑定的是特定内核版本如果你在 Ubuntu 里执行过apt upgrade内核升级后 Tools 模块可能加载失败表现为拖拽、剪贴板失效。这时候要么重新执行安装脚本要么干脆迁移到 open-vm-tools 一劳永逸。注意如果你在安装过程中遇到 vmhgfs 模块编译失败但又急需共享文件夹功能可以先确认内核头文件是否完整。Ubuntu 精简安装可能会缺linux-headers-generic务必先补上再重试。4. 文件拖拽失效的排查实录别急着重装 Tools装完 Tools 之后拖拽和剪贴板依然不工作的情况非常常见。这里我不想只给一句“重启试试”而是把可能的根因按概率排序每一步都给出验证方法和解决方案。4.1 检查 VMware 的客户机隔离设置打开虚拟机设置进入“选项”——“客户机隔离”确认以下两个选项都勾选启用拖放启用复制粘贴这个设置在部分精简版 VMware Workstation 中可能默认未开启特别是从旧版本升级过来的虚拟机很容易因为配置文件残留导致开关没生效。如果这里没勾选Tools 装得再对也没用。4.2 图形会话差异Xorg 和 Wayland 的剪贴板表现从 Ubuntu 21.04 开始默认登录会话已经切换到 Wayland但 VMware Tools包括 open-vm-tools-desktop对 Wayland 的支持一直不如 Xorg 成熟。最典型的表现是单向拖拽正常但从 Windows 复制文本到 Ubuntu 无效或者反过来无效。这个问题的快速验证方法是在登录界面点击用户名然后输入密码前找到右下角的齿轮图标选择“Ubuntu on Xorg”登录。如果剪贴板问题在 Xorg 会话下消失说明根因就是 Wayland 兼容性。长期解决方案有两条一是日常使用都切到 Xorg 会话对多数传统桌面用户没影响二是等待 open-vm-tools 和桌面环境慢慢补齐 Wayland 支持。如果你用 Ubuntu 24.04实测 VMware Workstation 17.6 搭配 open-vm-tools 12.x 在 Wayland 下剪贴板已经改善很多但偶尔仍有小概率失效这时候切换 Xorg 仍然是最可靠的办法。4.3 用户权限与 systemd 服务状态检查open-vm-tools 的后台服务 vmtoolsd 需要以 root 权限运行但桌面端的拖拽代理通常集成在用户会话进程中。如果服务状态异常拖拽和剪贴板都会失效。检查服务状态systemctl status vmtoolsd如果显示 failed查看完整日志journalctl -u vmtoolsd -n 50常见情况是启动顺序问题比如 VMware 虚拟机服务尚未就绪时 vmtoolsd 就退出了。执行sudo systemctl restart vmtoolsd一般能恢复。如果反复失败检查是否有多个 vmtoolsd 进程冲突通过ps aux | grep vmtools查看进程情况。4.4 大文件拖拽的隐藏限制就算拖拽功能正常一次性拖入非常大的文件比如超过 4GB 的镜像或视频尤其是单文件超过内存一部分比例时也可能没有反应。VMware 的拖拽功能本质上走的是共享内存通道遇到超大文件容易卡死或静默失败。更稳妥的做法是走共享文件夹方式在虚拟机设置——选项——共享文件夹里添加一个 Windows 目录然后在 Ubuntu 里通过 /mnt/hgfs 直接访问。添加共享文件夹的操作很简单虚拟机设置——选项——共享文件夹——选择“总是启用”。添加一个 Windows 下的路径比如 D:\share。Ubuntu 里访问路径ls /mnt/hgfs/share如果访问不到 /mnt/hgfs可以手动挂载sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o uid1000这个命令假设你的用户 uid 是 1000如果不是先用id命令查一下。手动挂载更适合临时需求希望对所有用户都生效可以把挂载命令写进 /etc/fstab 或做成 systemd 服务。4.5 装完 Tools 后需要重启吗安装或更新 open-vm-tools 后重启虚拟机是最省心的验证方式。有时候服务已经起来了但环境变量没刷新系统托盘或会话组件还是旧状态。如果不想重启可以选择注销再登录多数情况下也能恢复。5. 我的建议Windows 与 Ubuntu 直接拖文件的其他路径把 VMware Tools 装好之后拖拽功能正常这是基础体验。但如果你经常要大量交换文件或者需要高频率读写 Windows 磁盘上的项目目录我更推荐组合使用“共享文件夹 拖拽”两种方式。共享文件夹的优点是稳定、性能好适合大文件和大量小文件的批量操作而且就算 Tools 偶尔抽风共享文件夹通常还是能用的。拖拽的优点是灵活适合零散小文件。另外还有一个进阶玩法在 Ubuntu 里通过 SMB 直接访问 Windows 共享目录。相比 VMware 的共享文件夹SMB 跨网络访问的好处是不依赖 VMware Tools 的驱动即使 Tools 出问题也不影响。如果你只是偶尔传几个文件这种方法甚至比装 Tools 更轻量sudo apt install cifs-utils sudo mkdir -p /mnt/winshare sudo mount -t cifs //192.168.x.x/share /mnt/winshare -o usernameyourname,uid1000这个方式适合两台机器真实处在同一个局域网如果是 VMware 虚拟机也走 NAT 或桥接网络Windows 主机 IP 直接在浏览器或命令行里能访问到就可以。6. 常见问题与排查技巧实录我平时帮人处理 VMware Tools 问题遇到最多的问题其实非常集中整理成下面这个速查表方便你遇到问题时快速定位。现象最可能原因快速解法安装 open-vm-tools 后拖拽无效Wayland 会话兼容性切换到 Xorg 登录会话拖拽文件没反应但剪贴板正常大文件或特殊文件权限改用共享文件夹传输剪贴板只能单向粘贴客户机隔离设置异常检查 VMware 客户机隔离选项提示“VMware Tools is no longer shipped”新版 VMware 不再为 Ubuntu 提供 ISO Tools忽略该提示改用 open-vm-tools继续运行脚本报错老 ISO 方式与新版 Ubuntu 不兼容删除 ISO 安装转 open-vm-tools共享文件夹 /mnt/hgfs 为空vmhgfs 模块未加载检查内核模块并手动挂载 vmhgfs-fusevmtoolsd 服务启动失败服务启动顺序或残留进程冲突重启虚拟机并查看 journalctl 日志安装 Tools 后分辨率仍不自适应显卡驱动或显示管理器冲突尝试注销重登或更新 open-vm-tools 版本如果你遇到的情况不在表里建议按这个顺序排查确认 VMware 客户机隔离开关 → 查看 Tools 服务状态 → 确认图形会话类型 → 查看内核模块加载情况。绝大多数问题都逃不出这四步。7. 安装过程中的操作禁忌与优化建议Tools 安装本身不难但有些操作忌讳值得提前说清楚能帮你少走很多弯路。第一不要在系统更新内核的同时安装 open-vm-tools。我碰到过一次比较曲折的现场有人先执行了apt upgrade升级内核然后才装 open-vm-tools装完拖拽一直没反应查了老半天发现是因为新内核还没完全启用open-vm-tools 装的时候匹配的是旧内核。正确做法是先装 Tools重启确认功能正常再做系统更新。第二不要混用“ISO 手动安装的 Tools”和“open-vm-tools”。两种 Tools 同时存在会导致服务冲突、配置混乱。如果你之前手动装过 VMware Tools现在想换到 open-vm-tools先把旧 Tools 卸载干净sudo /usr/bin/vmware-uninstall-tools.pl sudo rm -rf /usr/lib/vmware-tools sudo apt remove open-vm-tools open-vm-tools-desktop卸载完成后重启再安装新方案。第三如果用的是 Ubuntu 最小化安装别漏装桌面组件相关的依赖。有些精简镜像没有完整的桌面环境支持包open-vm-tools-desktop 装上后拖拽代理仍然起不来这时候检查是否缺少 xdg-desktop-portal 或其他会话管理组件补装后重启。第四每次 VMware Workstation 大版本升级后建议在虚拟机里重新确认一次 Tools 状态。实测发现 Workstation 从 16 升到 17、或者 17.5 升到 17.6部分虚拟机的 vmtoolsd 服务会出现延迟启动或需要重启虚拟机才能正常工作的情况这不是个大问题但提前检查总比临时抓瞎强。8. 我个人的实操体会每次有人说“VMware Tools 装了但没用”我第一反应不是去装什么驱动而是先问“你用的什么 Ubuntu 版本、什么登录会话”。一半以上问题都出在 Wayland 和 Xorg 的差异上剩下的大头是客户机隔离没开启。真正需要去编译内核模块的反而极少。如果你是在学习阶段建议多折腾几次把 ISO 方案和 open-vm-tools 方案都试一遍理解背后的差异之后你以后遇到其他 Linux 发行版Fedora、openSUSE、Debian也能举一反三——它们装 Tools 的逻辑基本一样只是包管理器从 apt 换成 dnf、zypper 而已。最后再分享一个小技巧装好 open-vm-tools-desktop 之后如果拖拽还是偶尔失灵可以试试在 Ubuntu 里重启 vmware-tools 相关的用户服务systemctl --user restart vmware-tools.service这个命令不一定每次都用得上但在某些桌面环境下它比重启整台虚拟机来得快多了。
返回列表