openKylin装VMware Tools:依赖、Wayland与共享文件夹
1. openKylin 装 VMware Tools 之前先把这几件事想明白很多人第一次在虚拟机上跑 openKylin装完系统第一反应是怎么这么卡、字这么糊、鼠标还往外跑。我在一台笔记本上用 VMware Workstation 跑 openKylin 做适配测试头两天就被这几个问题轮番折磨过。这篇内容就是把我把 VMware Tools 从装不上到跑得稳的全过程摊开讲包含挂载镜像、编译依赖、交互脚本逐项解释、Wayland 会话下的失效处理以及那串让人头大的报错排查顺序。不管你是刚摸 Linux 操作系统的新手还是已经折腾过 Ubuntu、RedHat 系发行版的老手这套流程都能直接抄区别只在于你会少踩几个我踩过的坑。先把结论摆前面openKylin 装 VMware Tools 这件事难点从来不在点下一步而在于编译环境是否齐备、安装镜像是否真的挂上了、以及桌面会话是 X11 还是 Wayland。这三点决定你后面是五分钟收工还是对着黑框折腾两小时。理解了这三件事的因果剩下的都是执行动作。1.1 openKylin 是什么为什么要在虚拟机里跑它openKylin 是一套以 Linux 内核为基础、面向桌面场景的开源操作系统发行版桌面环境是自家的 UKUI软件包体系走 Debian 系那一套也就是apt/dpkg命令组跟 Ubuntu 是同一个技术血缘。这一点非常关键——它意味着你在网上搜到的 Ubuntu 装 VMware Tools 的教程大方向可以直接套用但细节尤其是内核头文件包名、桌面会话类型、服务管理方式必须按 openKylin 自己的情况调整。为什么要在虚拟机里跑它我接触到的场景大概三类。第一类是尝鲜和评估想看看国产桌面系统的交互、字体、常用软件兼容性到底怎么样又不想动自己的物理机分区第二类是开发和测试比如做跨平台软件适配需要在一个干净的麒麟系环境里验证安装包能不能正常装上、依赖能不能拉齐第三类是教学和实验操作系统课程里要观察进程调度、文件系统结构虚拟机是最省事的沙盒。这三类场景有一个共同点都需要宿主和客户机之间来回倒腾东西——复制一段命令、拖一个文件进去、把窗口分辨率调大看清楚终端输出。而这些恰恰是 VMware Tools 负责的活。没有它虚拟机就是个能开机但不好用的黑盒子。1.2 VMware Tools 缺位时会遇到的四个典型症状我把没装 Tools 时的体验总结成四个症状你可以对照一下自己是不是全中分辨率被锁死。通常卡在 800×600 或者 1024×768窗口拉大了画面也不跟着变左右留黑边看起来非常别扭。这背后是显卡驱动没有拿到虚拟显示设备的正确模式信息。鼠标穿墙。鼠标指针从虚拟机窗口边缘滑出去直接跑到宿主机桌面上想点虚拟机里的菜单还得再移回来。这是缺少指针捕获与位置同步机制导致的。剪贴板不通。宿主机复制的命令在客户机里按 CtrlV 是空的两边文字想互通只能靠手打或者用共享文件夹倒文件。拖拽和共享文件夹不可用。这是最影响效率的一条。我在做环境搭建时经常要把本地写好的脚本、配置文件丢进虚拟机没有共享文件夹就得反复挂载 U 盘镜像或者重新打包 ISO非常折腾。注意这四个症状里分辨率和鼠标是体验问题剪贴板和共享文件夹是效率问题。很多人忍着体验问题继续用结果在共享文件夹上浪费的时间远超安装 Tools 的时间。1.3 官方 VMware Tools 与 open-vm-tools 的分岔路这里必须讲清楚一个容易混淆的点VMware Tools 有两条技术路线。一条是VMware 官方随 Workstation / ESXi 提供的 Tools 安装包也就是你从虚拟机菜单里安装 VMware Tools挂载出来的那个 ISO里面是一个.tar.gz压缩包加一个 Perl 写的交互式安装脚本vmware-install.pl。它会编译内核模块并注册服务功能全但每次内核升级后大概率要重新编译。另一条是open-vm-tools各大 Linux 发行版仓库里维护的开源实现直接apt install就能装跟着系统更新走不用手动编译。openKylin 作为 Debian 系发行版仓库里通常就有这个包而且新版桌面版镜像很可能已经预装。我的建议是分情况如果你只是想解决分辨率、剪贴板、共享文件夹这些常规需求优先试 open-vm-tools如果你在做 VMware 相关功能的深度验证或者仓库里的版本过老导致某些功能缺失再走官方 Tools 的编译安装路线。后面第 3 章我会把官方 Tools 的完整流程讲透第 5 章再对比两者的取舍。先确认一下当前状态避免白忙一场# 查看是否已经装了 open-vm-tools dpkg -l | grep -i vm-tools # 查看 VMware Tools 官方版本是否在运行 vmware-toolbox-cmd -v # 查看内核版本后面找头文件包要用 uname -r如果vmware-toolbox-cmd -v能正常输出类似12.x.x.xxxxx (build-xxxxxxxx)的版本号说明官方 Tools 已经在跑了你大概率只需要检查一下服务状态而不是重装。2. 准备工作镜像、依赖与光驱挂载的底层逻辑准备工作这一步看着简单实际上是我见过翻车最多的地方。原因不复杂大部分教程默认你已经配好了软件源、装好了编译工具链但真实情况下新装好的 openKylin 很可能连gcc都没有或者软件源指向的镜像站点访问不畅apt install卡在那里半天不动。等你跑到vmware-install.pl报错才发现问题回头再补时间就翻倍了。所以我把准备阶段拆成三块虚拟机本身的参数、编译依赖的补齐、安装镜像的挂载。三块都过了再进安装环节。2.1 虚拟机创建阶段的几个关键参数这部分很多人是一路默认点过来的但有几个参数会直接影响后面 Tools 能不能装、装了有没有用。磁盘类型。优先选 SCSI 里的推荐项比如 LSI Logic SAS不要图省事选 IDE。原因在于虚拟磁盘控制器类型会影响内核模块的加载路径某些老旧的 IDE 模式下部分同步和共享机制的表现不如 SCSI 稳定。网络模式。装 Tools 本身可以离线完成但补齐编译依赖必须联网。我一般先用 NAT因为 NAT 模式下虚拟机借宿主机的网络出网配置最省事不用管路由器分配。如果所在环境有代理要求那是另一回事得按实际网络管理规定配置。内存和 CPU。给 openKylin 桌面版至少 4GB 内存、2 核 CPU。低于这个配置编译vmware-install.pl触发的那几个内核模块会非常慢尤其是vmhgfs共享文件夹模块和vmci我实测在 2GB 内存的机器上编译阶段能卡三到五分钟还容易因为内存不足直接失败。显示设置。虚拟机的加速 3D 图形选项我建议先关掉。原因是 openKylin 在软件渲染下装 Tools 更为可控等 Tools 装完、驱动模块加载正常之后再根据需要打开 3D 加速。如果一开始就开某些显卡驱动组合下会出现装完后桌面花屏、需要强制重启的情况。固件类型。新的 Workstation 版本默认可能是 UEFIopenKylin 对 UEFI 支持没问题但如果你的镜像比较老建议切成 BIOS 传统模式能规避一部分引导和显示相关的怪问题。2.2 先确认软件源可用再谈编译依赖依赖这块我吃过一次典型的亏apt install build-essential跑到一半卡住光标一直转等了十分钟我以为是死机了其实是软件源指向的站点响应极慢。所以第一步不是装包是确认源是通的。# 查看当前软件源配置 cat /etc/apt/sources.list # 刷新索引观察有没有超时或 404 sudo apt updateapt update如果能在一两分钟内顺利跑完并输出一堆Hit或Get说明源没问题。如果大量Ign加Err先解决源的问题别急着往下走。索引正常之后装依赖。官方 VMware Tools 的安装脚本依赖这几样东西sudo apt install -y build-essential gcc make perl逐项说一下各自的作用理解了才不会瞎装build-essential这是元包会把gcc、g、make、libc6-dev一起拉下来。它是编译内核模块的地基。gcc / make编译器和构建工具。vmware-install.pl会调用它们把.c源码编译成.ko内核模块。perl安装脚本本身就是 Perl 脚本缺了它脚本连启动都启动不了。openKylin 桌面版一般自带但精简镜像或最小化安装可能没有。然后是内核头文件这是最容易出问题的一项。内核模块编译需要当前运行内核对应的头文件包名规则是linux-headers-$(uname -r)# 先查一下仓库里有没有跟当前内核严格对应的头文件包 apt-cache search linux-headers | grep $(uname -r) # 有就直接装 sudo apt install -y linux-headers-$(uname -r)如果搜索结果为空说明仓库里没有严格匹配的版本这时候有两个思路。一是尝试装通用头文件包sudo apt install -y linux-headers-generic二是看仓库里有没有比当前内核版本更高的头文件包装完重启切到新内核让运行内核和头文件版本对齐。绝对不要跨大版本强行装头文件比如拿 5.15 的头文件去编译 6.x 内核的模块基本必然报错。实操心得装头文件之前先uname -r把版本号记下来装完再用dpkg -l | grep linux-headers确认装上的版本和运行的版本一致。这一步花十秒能省掉后面二十分钟的报错排查。2.3 挂载安装镜像的两种姿势与权限细节VMware Tools 的安装包是通过虚拟光驱送进来的。操作入口在 VMware Workstation 顶部菜单虚拟机 → 安装 VMware Tools。点下去之后客户机的光驱里就多了一张 ISO桌面上可能会自动弹出一个光盘图标。这里有个细节很多人不知道如果虚拟机当前已经挂载了别的 ISO比如你刚用来装系统的安装镜像这个菜单项可能会变灰或者点了没反应。处理办法是在虚拟机的可移动设备里把光驱先断开再点一次安装。挂载这一层有两种做法。第一种是桌面自动挂载。openKylin 的 UKUI 桌面通常会自动识别并挂载光驱你打开文件管理器就能看到一个多出来的卷双击进去里面就是VMwareTools-xx.x.x-xxxxxxxx.tar.gz。这种方式最省事适合刚上手的朋友。第二种是命令行手动挂载我更喜欢这种因为路径可控后面复制文件不用在图形界面里点来点去# 建一个干净的挂载点 sudo mkdir -p /mnt/cdrom # 挂载光驱设备。Debian 系下光驱一般是 /dev/sr0 sudo mount /dev/sr0 /mnt/cdrom # 或者用软链接多数系统上它指向同一个设备 sudo mount /dev/cdrom /mnt/cdrom # 看看挂上来的内容对不对 ls -lh /mnt/cdrom正常的话你会看到.tar.gz和.rpm之类的文件.tar.gz就是我们需要的那个。如果mount报错说设备找不到先用lsblk看一眼块设备列表找到那个容量几百 MB、没有挂载点的光盘设备比如/dev/sr0或/dev/sr1再挂它。如果报错是只读文件系统或者别的权限问题检查一下你是不是忘了加sudo。挂载是特权操作普通用户做不了。注意如果你之前用图形界面自动挂载过光驱可能已经被挂到/media/用户名/VMware Tools/这类路径下了。这时候再手动挂到/mnt/cdrom不冲突但建议先umount掉自动挂载的那个避免出现同一设备挂载两次的混乱后面卸载的时候容易搞不清卸哪个。挂载这一步是整条链路里最应该被反复确认的环节。因为后面所有命令都依赖/mnt/cdrom这个路径能读到文件。我在帮别人看问题时十次里有三次是这里根本没挂上脚本当然跑不起来。3. 手把手实操从解压到编译安装的完整链路准备阶段过了之后真正的安装动作其实很快三五分钟的事。但快归快中间几个交互项如果选错后面会出现服务起来了但功能不全的隐性故障这种问题比直接报错还难查。所以我把每一步的动作和意图都写清楚。3.1 拷贝安装包到临时目录并解压为什么不直接在挂载目录里解压因为挂载的是只读的 ISO写不进去东西而且解压出来一堆文件堆在光驱里卸载的时候也麻烦。规范做法是复制到/tmp或者用户目录下操作。# 复制压缩包到临时目录 cp /mnt/cdrom/VMwareTools-*.tar.gz /tmp/ # 进入临时目录并解压 cd /tmp sudo tar -zxvf VMwareTools-*.tar.gz解压完成后会得到一个vmware-tools-distrib目录进去看一眼结构cd vmware-tools-distrib ls -l你会看到vmware-install.pl、bin/、lib/、doc/等。那个.pl就是主安装脚本。这里有个小提醒tar -zxvf里的参数含义是z走 gzip 解压、x解包、v显示过程、f指定文件。v参数在文件多的时候会刷屏如果你只看结果不关心过程可以去掉v输出会干净很多。3.2 执行安装脚本每一个交互项都在问什么这是全文最需要逐字看的一段。执行sudo ./vmware-install.pl第一次运行如果提示权限不足先用chmod x vmware-install.pl加上可执行位。脚本启动后会进入一串交互式提问。默认值基本都可以直接回车接受但我建议你至少看懂下面这几个问题在问什么因为有两个地方的默认值是有讲究的。问题一安装位置。默认路径一般是/usr/bin、/usr/sbin、/etc/vmware-tools之类。直接回车即可没必要改。改路径的唯一后果是后面服务管理脚本的路径跟你预期不一致给自己找麻烦。问题二是否启用某个功能模块。脚本会问一圈类似是否运行vmware-user以启用拖拽和剪贴板、是否启用共享文件夹支持这样的问题。这里全部保持默认回车因为默认值已经是启用。问题三是否在每次内核升级后重新编译。这个问题的默认值通常是不自动我一般也保持默认。原因在于自动重编译依赖一个系统服务钩子在部分发行版上这个钩子的执行时机和内核升级流程配合得不好反而可能导致升级后开机卡在某个模块加载上。手动重编译虽然麻烦但可控。问题四分辨率设置。脚本会问第一次启动时使用多少分辨率。这里不要手贱去填具体数字直接回车用默认的自动适配让它跟窗口大小联动。填死数字的后果是窗口拉大了画面也不跟着变等于白装。整个过程大概会持续一到三分钟具体取决于你的 CPU 和是否真的命中了编译路径。屏幕上会刷大量编译输出中间夹杂CC [M]之类的行这是正常的。如果编译中途报错退出先别慌把错误往上翻找到第一处error:那行那才是根因后面的报错很多是连锁反应。3.3 安装后的服务注册与开机自启脚本跑完后会尝试自动启动服务。这时候用下面几条命令确认状态# 查看服务状态不同版本路径略有差异 sudo /etc/init.d/vmware-tools status # 或者用 systemctl 查 systemctl status vmware-tools.service # 查看版本号能输出说明核心组件在跑 vmware-toolbox-cmd -v如果.service文件不存在说明安装过程中服务注册那步没成功。这时候看两个地方/etc/vmware-tools/下有没有配置文件生成/usr/bin/vmware-user这类可执行文件在不在。两者都缺就重新跑一遍安装脚本。关于开机自启官方 Tools 在多数发行版上会通过init.d脚本加系统服务的方式注册。openKylin 用的是 systemd如果你发现重启后功能消失了可以手动补一个启用动作sudo systemctl enable vmware-tools.service实操心得我装完之后一定会重启一次虚拟机再验收功能而不是装完立刻试。原因是部分模块尤其是显示相关和文件系统相关在安装完成但没有重新初始化的情况下表现和重启后不一样。装完就测你可能误判成装失败重启再测才能得到真实结果。3.4 分辨率、剪贴板、拖拽三项功能验收重启之后逐项验收。这一步别偷懒三项都过才算真的装好。分辨率验收。把虚拟机窗口从小的拖到最大化看客户机桌面是否跟着重排。如果跟着变说明显示模块生效了。如果窗口变了画面不变只留黑边说明显示模块没跑起来回到 3.3 检查服务状态。剪贴板验收。在宿主机上复制一段纯文本比如hello-openkylin切到虚拟机在文本编辑器里粘贴。反过来也试一次。这里有个前提剪贴板功能要在虚拟机的设置 → 选项 → 客户机隔离里把启用复制粘贴这类选项勾上。很多人忽略了这一层明明 Tools 装好了却以为剪贴板坏了其实是虚拟机层面的开关没开。拖拽验收。从宿主机桌面拖一个文件到虚拟机窗口里看能不能落进文件管理器。拖拽对文件大小比较敏感超大文件容易超时可以先用几十 KB 的小文件测试。三项验收里分辨率和剪贴板是强需求拖拽是锦上添花。如果前两项通了、第三项不通通常不至于影响主要工作流可以先用共享文件夹替代。3.5 共享文件夹的挂载与开机自动挂载共享文件夹是我用得最多的功能。设置入口在虚拟机的设置 → 选项 → 共享文件夹选择总是启用然后添加宿主机上的一个目录给它起个名字比如share。设置完之后回到客户机里执行# 查看 VMware 认到了哪些共享名 vmware-hgfsclient # 手动挂载到 /mnt/hgfs sudo mkdir -p /mnt/hgfs sudo mount -t vmhgfs .host:/ /mnt/hgfs # 如果上面这条报错说未知文件系统类型改用 fuse 方式 sudo /usr/bin/vmhgfs-fuse .host:/ /mnt/hgfs -o allow_othervmware-hgfsclient这条命令很关键它是你的第一诊断工具。如果它什么都不输出说明共享机制压根没建立起连接问题在虚拟机设置或者 Tools 模块层面跟挂载命令没关系。如果它能列出share这个名字但mount报未知文件系统类型那就是vmhgfs内核模块没加载上去lsmod | grep vmhgfs看一眼。开机自动挂载编辑/etc/fstab# 在文件末尾加一行 .host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0加完用sudo mount -a测试一遍没报错说明配置对了。在改 fstab 之前一定要先备份原文件因为 fstab 写错会导致系统启动进入紧急模式这个坑我踩过处理起来要进单用户模式改回来很费时间。4. openKylin 环境下最容易被绊倒的几个坑前面三章是标准流程这一章讲的是流程之外的真实阻力。这些问题不是权限或者命令敲错造成的而是 openKylin 这个特定环境带来的差异。理解了它们你至少不会再怀疑是自己装错了。4.1 Wayland 会话下显示与剪贴板失效这是我在 openKylin 上遇到的最有意思的一个坑。现象是Tools 明明装成功了vmware-toolbox-cmd -v有输出服务状态也正常但分辨率不跟随窗口、剪贴板不通。查了半天问题出在桌面会话类型上。openKylin 较新的版本在登录时提供了会话选择可能默认走了Wayland会话。而官方 VMware Tools 里的vmware-user组件设计上是围绕 X11 的显示与剪贴板机制工作的在纯 Wayland 会话下它抓不到剪贴板事件也没法直接控制显示模式只能靠兼容层间接生效效果不稳定。判断方法# 看看当前会话类型 echo $XDG_SESSION_TYPE # 输出 x11 说明是 X11 会话 # 输出 wayland 说明是 Wayland 会话如果输出是wayland有两个处理方向。方向一登录时切换到 X11 会话。在登录界面或者用户头像附近通常有会话类型的选择入口切到 X11 或UKUI on X11之类的选项重新登录。这个办法最直接功能立刻恢复。代价是你要放弃 Wayland 带来的一些新特性但对虚拟机场景来说功能可用性优先。方向二改用 open-vm-tools。较新版本的 open-vm-tools 对 Wayland 环境做了适配尤其是分辨率自适应这块配合桌面环境自己的显示器管理逻辑效果比官方 Tools 好不少。命令很简单sudo apt install -y open-vm-tools open-vm-tools-desktop装完之后同样要重启虚拟机再验收三项功能。open-vm-tools-desktop里包含图形相关的组件缺了它只能解决一部分问题。注意如果系统里同时存在官方 Tools 和 open-vm-tools可能互相干扰。走哪条路线就把另一条彻底清掉。清理官方 Tools 的入口是vmware-tools-distrib目录下的卸载脚本一般叫vmware-uninstall-tools.pl。4.2 内核升级后模块失配这是 Linux 上装第三方内核模块的通病不是 openKylin 独有但 openKylin 的自动更新策略可能让它在你不注意的时候发生。表现是用着好好的某次系统更新重启后分辨率突然不能自适应了共享文件夹也挂不上。根因是官方 Tools 编译出的.ko模块是绑定内核版本的存在/lib/modules/$(uname -r)/下面。内核一升级新的内核目录里没有这些模块旧目录里的又用不了功能自然就断了。诊断# 看当前内核版本 uname -r # 看模块目录里有没有对应的 vmw 模块 ls /lib/modules/$(uname -r)/misc/ | grep vmw如果这条ls什么都查不到基本可以确认是模块失配。处理方式有两种。短期做法是重新跑一遍安装装好新内核对应的头文件再执行一次sudo ./vmware-install.pl把模块重新编译到新内核目录下。长期做法是切到 open-vm-tools因为它的模块由发行版维护跟着内核升级走不需要你手动干预。这也是我给长期使用者的首选建议。还有一个折中思路在系统设置里锁定内核版本不让它自动升级。但我不太推荐因为内核升级往往带着安全修复和硬件支持改进长期锁版本是拿稳定性换便利不划算。4.3 报错继续运行脚本未能在虚拟机中成功运行的排查顺序这个报错框是很多人第一次装 Tools 时遇到的提示大意是虚拟机里配置安装的脚本没能成功执行完成。它出现的位置通常在你想点安装 VMware Tools菜单的时候或者虚拟机开机过程中看起来像 VMware 自己拦了一道。这个提示的信息量其实很小它只告诉你脚本没跑完但没告诉你为什么。所以我按发生概率从高到低排了一个排查顺序照着走基本能定位。第一步确认虚拟机的 Tools 状态。打开虚拟机的设置 → 选项看有没有与 Tools 相关的状态指示。如果那里显示的是已安装但不是最新或者未运行说明宿主机认为 Tools 没有正常就位。第二步进客户机里看服务到底起没起。sudo /etc/init.d/vmware-tools status systemctl status vmware-tools.service ps aux | grep vmware这一组命令输出会告诉你是压根没装、装了没启、还是启了但中途崩了。第三步确认光驱里挂的是对的 ISO。有时候你之前挂过系统安装盘没卸载点安装 VMware Tools时挂载动作被顶掉了脚本自然跑不起来。在可移动设备里清一遍光驱状态。第四步回看安装脚本的完整输出。如果你是在终端里手动跑的vmware-install.pl往上翻找第一处error。常见根因就那么几个头文件版本不对、gcc缺失、perl缺失、磁盘空间不足、/tmp挂载为noexec导致解压出来的脚本执行不了。最后一条特别隐蔽部分环境出于安全策略会把/tmp挂成noexec意思是这个目录下的文件不允许执行。这时候你在/tmp/vmware-tools-distrib里跑脚本会报权限不够或者无法执行看着像权限问题其实是挂载选项问题。验证方法mount | grep /tmp如果看到noexec把操作目录换到用户主目录下重跑或者临时用sudo mount -o remount,exec /tmp处理一下。5. 常见问题速查表与长期维护建议前面讲的都是主线这一章用来兜底。我把实际遇到过的报错和对应的判断、处理方式整理成表遇到问题先查表比盲目搜索快得多。5.1 报错与解决方案对照表现象最可能的原因处理方式点安装 VMware Tools没反应或菜单变灰光驱已被其他 ISO 占用在可移动设备里断开光驱重新点击安装mount /dev/sr0 /mnt/cdrom提示设备不存在光驱设备名不是 sr0lsblk查实际设备名通常是 sr0 或 sr1安装脚本报找不到perl系统未预装 perlsudo apt install -y perl编译阶段报gcc: command not found编译工具链缺失sudo apt install -y build-essential编译报找不到内核头文件缺linux-headers-$(uname -r)装对应版本头文件注意版本必须匹配装完分辨率不跟随窗口桌面会话是 Wayland登录时切到 X11 会话或改用 open-vm-tools剪贴板单向可用或完全不通虚拟机隔离设置未开或会话类型不匹配设置里勾选复制粘贴确认会话类型vmware-hgfsclient无输出共享机制未建立检查共享文件夹是否总是启用重启虚拟机mount -t vmhgfs报未知文件系统模块未加载lsmod系统更新后功能突然失效内核升级导致模块失配重编译模块或切到 open-vm-tools在/tmp里执行脚本报权限问题/tmp被挂为 noexec换到主目录执行或重新 remount这张表我建议截图存着。实际排查时先按现象定位到最可能的行再按处理方式动手比从头读教程效率高太多。5.2 关于内核头文件与源里找不到版本单独把这一条拎出来说因为它出现频率高、处理方式又有讲究。情况一apt-cache search linux-headers | grep $(uname -r)有结果。恭喜直接装后面顺理成章。情况二搜索结果里只有比你当前内核更高版本的头文件。这个时候你有两个选择。选择 A把系统升到跟头文件匹配的内核版本升级后重启再用新内核跑一遍安装。选择 B从发行版的软件源里找历史版本的头文件包。但我一般不推荐 B因为历史版本的包在镜像站点上不一定还留着翻起来费劲而且混装不同时期的内核包容易引入其他依赖冲突。情况三源里完全搜不到任何linux-headers相关包。这说明你的软件源配置可能只启用了主仓库没有启用包含内核头文件的仓库。检查/etc/apt/sources.list里的仓库条目是否完整或者看看是否有额外的源配置文件在/etc/apt/sources.list.d/目录下。还有一个兜底思路适合做实验或者临时用如果实在搞不定头文件匹配直接走 open-vm-tools 路线它不需要你手动准备头文件发行版在打包时已经处理好了依赖关系。这也是为什么我前面反复推荐它。5.3 快照、备份与重装策略最后说点习惯层面的东西这部分不涉及具体命令但直接决定你折腾的成本。动系统之前打快照。这是虚拟机最大的优势很多人不用。我装 Tools 之前一定先打一个快照命名成装Tools前。理由很实际装 Tools 涉及内核模块编译和服务注册万一编译过程中出问题导致桌面起不来有快照可以直接回滚五秒钟回到干净状态比排查半小时划算。改 fstab 之前备份。前面提过fstab 写错会导致启动异常。备份命令很简单sudo cp /etc/fstab /etc/fstab.bak改完如果启动出问题进恢复模式把.bak覆盖回去就行。关于重装。如果试了几轮都没成功我的建议是先彻底清理再重来而不是叠着装。清理动作包括卸载官方 Tools跑解压目录里的卸载脚本、apt purge掉 open-vm-tools 相关包、删掉/etc/vmware-tools残留、确认/lib/modules下没有半截模块。不清干净的话第二次安装很可能因为残留文件和旧模块冲突而失败让你误以为是新问题。关于长期维护。如果你打算长期在虚拟机里用 openKylin 做开发或测试我更倾向于一次装好 open-vm-tools 然后忘了它。它跟着系统更新走内核升级不用管剪贴板和共享文件夹在新版里的表现也越来越好。官方编译版 Tools 更适合我需要验证某个具体功能或者仓库版本太老实在不够用的场景用完可以留着但每次内核升级要记得补一次编译。我个人在这些测试机上的做法是每台机器建好之后先装 open-vm-tools验收分辨率和剪贴板如果发现有功能确实缺失再补官方 Tools并且把安装命令和依赖清单写进一个自己的笔记文件放在共享文件夹里。这样下次重建环境直接照着笔记走五分钟搞定不用再从头查一遍。踩过的坑当时记下来价值比任何教程都高因为那是我自己的现场记录。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →