VMware Tools在RHEL7虚拟机上的安装与卸载

解决CentOS 7虚拟机拖放文件报错:VMware Tools安装与配置全攻略 虚拟机与宿主机之间的文件共享和剪贴板同步是虚拟化技术中的基础功能,其核心原理是通过在客户机操作系统内安装增强工具(如VMware Tools或VirtualBox Guest Additions),建立专用的通信通道来实现数据交换。这些工具提供了包括时间同步、剪贴板共享、拖放文件传输和鼠标集成在内的多种集成服务,极大提升了虚拟化环境的工作效率。在工程实践中,这类功能常因增强工具安装不完整、相关服务未运行、权限配置不当或版本不兼容而失效,导致出现“error when getting information” 阅读详情

参考文章:

http://blog.youkuaiyun.com/hang_zheng/article/details/41520271

环境:

1.VMware Workstation10.0.1

2.rhel-server-7.0-x86_64

3.超户身份

说明:

1.默认原则:一路按回车选择默认配置

2.绿字安装,红字卸载

步骤:

1.挂载光驱

2.找到压缩的tar存档并复制到指定目录下

3.解除挂载

4.解压第2步中的tar压缩存档文件

5.到vmware-tools-distrib目录下卸载open-vm-tools-desktop(解决依赖包报错)

6.到lib/modules/source目录下展开归档文件vmhgfs.tar

7.修改vmhgfs-only/file.c文件的内容(解决赋值时类型不兼容):

 684             HgfsSetUidGid(iparent, file->f_dentry,
 685                           current_fsuid(), current_fsgid());
修改为:

 684             HgfsSetUidGid(iparent, file->f_dentry,
 685                           __kuid_val(current_fsuid()), __kgid_val(current_fsgid()));

8.修改vmhgfs-only/filesystem.c文件的内容(解决赋值时类型不兼容):

 231    if (si->uidSet) {
 232       si->uid = mountInfo->uid;
 233    } else {
 234       si->uid = current_uid();
 235    }
 236    si->gidSet = mountInfo->gidSet;
 237    if (si->gidSet) {
 238       si->gid = mountInfo->gid;
 239    } else {
 240       si->gid = current_gid();
 241    }
修改为:

 231    if (si->uidSet) {
 232       si->uid = mountInfo->uid;
 233    } else {
 234       si->uid = __kuid_val(current_uid());
 235    }
 236    si->gidSet = mountInfo->gidSet;
 237    if (si->gidSet) {
 238       si->gid = mountInfo->gid;
 239    } else {
 240       si->gid = __kgid_val(current_gid());
 241    }

9.修改vmhgfs-only/fsutil.c文件的内容(解决赋值时类型不兼容):

 679    if (si->uidSet || (attr->mask & HGFS_ATTR_VALID_USERID) == 0) {
 680       inode->i_uid = si->uid;
 681    } else {
 682       inode->i_uid = attr->userId;
 683    }
 684    if (si->gidSet || (attr->mask & HGFS_ATTR_VALID_GROUPID) == 0) {
 685       inode->i_gid = si->gid;
 686    } else {
 687       inode->i_gid = attr->groupId;
 688    }

修改为:

 679    if (si->uidSet || (attr->mask & HGFS_ATTR_VALID_USERID) == 0) {
 680       inode->i_uid = KUIDT_INIT(si->uid);
 681    } else {
 682       inode->i_uid = KUIDT_INIT(attr->userId);
 683    }
 684    if (si->gidSet || (attr->mask & HGFS_ATTR_VALID_GROUPID) == 0) {
 685       inode->i_gid = KGIDT_INIT(si->gid);
 686    } else {
 687       inode->i_gid = KGIDT_INIT(attr->groupId);
 688    }

 1662    setUidGid.ia_valid = ATTR_UID;
 1663    setUidGid.ia_uid = uid;
 1664 
 1665    /*
 1666     * Only set the gid if the host file system wouldn't have for us.        See the
 1667     * comment in the function header.
 1668     */
 1669    if (!parent || !(parent->i_mode & S_ISGID)) {
 1670       setUidGid.ia_valid |= ATTR_GID;
 1671       setUidGid.ia_gid = gid;
 1672    }

修改为:

 1662    setUidGid.ia_valid = ATTR_UID;
 1663    setUidGid.ia_uid = KUIDT_INIT(uid);
 1664 
 1665    /*
 1666     * Only set the gid if the host file system wouldn't have for us.        See the
 1667     * comment in the function header.
 1668     */
 1669    if (!parent || !(parent->i_mode & S_ISGID)) {
 1670       setUidGid.ia_valid |= ATTR_GID;
 1671       setUidGid.ia_gid = KGIDT_INIT(gid);
 1672    }

10.修改vmhgfs-only/inode.c文件的内容(解决赋值时类型不兼容):

 515       if (valid & ATTR_UID) {
 516          attrV2->mask |= HGFS_ATTR_VALID_USERID;
 517          attrV2->userId = iattr->ia_uid;
 518          *changed = TRUE;
 519       }
 520 
 521       if (valid & ATTR_GID) {
 522          attrV2->mask |= HGFS_ATTR_VALID_GROUPID;
 523          attrV2->groupId = iattr->ia_gid;
 524          *changed = TRUE;
 525       }
修改为:

 515       if (valid & ATTR_UID) {
 516          attrV2->mask |= HGFS_ATTR_VALID_USERID;
 517          attrV2->userId = __kuid_val(iattr->ia_uid);
 518          *changed = TRUE;
 519       }
 520 
 521       if (valid & ATTR_GID) {
 522          attrV2->mask |= HGFS_ATTR_VALID_GROUPID;
 523          attrV2->groupId = __kgid_val(iattr->ia_gid);
 524          *changed = TRUE;
 525       }


 618       if (valid & ATTR_UID) {
 619          attrV2->mask |= HGFS_ATTR_VALID_USERID;
 620          attrV2->userId = iattr->ia_uid;
 621          *changed = TRUE;
 622       }
 623 
 624       if (valid & ATTR_GID) {
 625          attrV2->mask |= HGFS_ATTR_VALID_GROUPID;
 626          attrV2->groupId = iattr->ia_gid;
 627          *changed = TRUE;
 628       }

修改为:

 618       if (valid & ATTR_UID) {
 619          attrV2->mask |= HGFS_ATTR_VALID_USERID;
 620          attrV2->userId = __kuid_val(iattr->ia_uid);
 621          *changed = TRUE;
 622       }
 623 
 624       if (valid & ATTR_GID) {
 625          attrV2->mask |= HGFS_ATTR_VALID_GROUPID;
 626          attrV2->groupId = __kgid_val(iattr->ia_gid);
 627          *changed = TRUE;
 628       }

 1219             HgfsSetUidGid(dir, dentry, current_fsuid(),current_fsgid());

修改为:

 1219             HgfsSetUidGid(dir, dentry, __kuid_val(current_fsuid()), __kgid_val(current_fsgid()));

11.修改vmhgfs-only/shared/compat_dcache.h文件的内容(解决内核版本不兼容):

 54 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)

修改为:

 54 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)

12.将vmhgfs-only/目录归档为vmhgfs.tar以覆盖原来的归档文件

13.到/tmp/vmtools/vmware-tools-distrib目录下执行安装脚本vmware-install.pl,安装过程中一直回车默认,中间没报错的情况下直到出现

Enjoy,

--the VMware team
说明安装成功

14.重启系统

15.进入vmware-tools-distrib/bin目录下,执行卸载脚本vmware-uninstall-tools.pl,卸载过程没报错的情况下直到出现

The removal of VMware Tools 9.6.1 build-1378637 for Linux completed successfully.  Thank you for having tried this software.

说明卸载成功

16.重启系统

操作:

1.在VMware Workstation工作界面中依次按下Alt,m,t

su -

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

2. mkdir /tmp/vmtools

cp /mnt/cdrom/VM* /tmp/vmtools

3. umount /mnt/cdrom

rmdir /mnt/cdrom

4. cd /tmp/vmtools

tar zxf VM*

5. cd vmware-tools-distrib

rpm -e open-vm-tools-desktop

6.cd lib/modules/source

tar xf vmhgfs.tar

7.vim vmhgfs-only/file.c

8.vim vmhgfs-only/filesystem.c

9.vim vmhgfs-only/fsutil.c

10.vim vmhgfs-only/inode.c

11.vim vmhgfs-only/shared/compat_dcache.h

12.tar cf vmhgfs.tar vmhgfs-only/

13.cd /tmp/vmtools/vmware-tools-distrib

./vmware-install.pl

14.reboot

15.su -

cd vmware-tools-distrib/bin

./vmware-uninstall-tools.pl

16.reboot

rhel7虚拟机在VMware vSphere中显示tools正在运行(受管客户机) rhel7虚拟机在VMware vSphere中显示tools正在运行(受管客户机) 在VMware虚拟化平台中,使用Redhat 7及以上版本Linux虚拟机部署时,往往会遇到VMware-tools运行状态异常的问题,记录如下: 虚拟机部署后,VMware-tools运行状态如下 问题原因 分析之前,先了解下VMware-tools和open-vm-tools。什么是o... 阅读详情

相关推荐

CentOS7安装VMware Tools全攻略与性能优化

虚拟化技术通过抽象硬件资源实现多系统并行运行,其中VMware Tools作为关键增强组件,能显著提升虚拟机性能与用户体验。其核心原理是通过安装专用驱动和工具集,优化显示渲染、实现主机-虚拟机无缝交互等功能。在CentOS7环境中,推荐使用open-vm-tools开源实现,通过yum包管理器可快速完成安装,同时支持共享文件夹、剪贴板同步等实用功能。该方案特别适用于开发测试环境、云计算平台等需要频繁进行主机-虚拟机交互的场景,能有效解决图形卡顿、鼠标切换不便等常见问题。

weixin_34378969的博客 483

虚拟机的vmware-tools卸载与安装所面临的问题与解决方法

ubuntu虚拟机安装与卸载vmware-tools遇到的问题与解决方法

hugewave的专栏 1万+

VMware Tools安装问题与虚拟机优化全攻略

虚拟机技术通过硬件虚拟化实现多系统并行运行,其核心组件VMware Tools负责增强虚拟机的性能和功能。该工具提供驱动支持、剪贴板共享等关键功能,但在安装过程中常遇到按钮灰色、驱动签名验证失败等典型问题。排查时需关注虚拟机运行状态、系统类型匹配和残留组件清理等关键环节。在工程实践中,合理配置内存分配、磁盘控制器类型等参数可显著提升稳定性,而共享文件夹、时间同步等功能优化则能改善开发测试效率。针对Windows蓝屏、Linux黑屏等疑难案例,需要结合日志分析和特定参数调整来解决。掌握这些虚拟化环境下的故障排

519

虚拟机 RHEL7 / CentOS7 安装 VMWare Tools

目前的虚拟机产品中无论功能性还是易用性VMWare皆为首选,对于虚拟机环境中的Windows系统安装而言,想必大家都已经驾轻就熟了,这里就不多作说明了。本文的目的是为了解决在VMWare Workstation中安装Linux系统后VMWare Tools的问题,起因是由于楼主安装RHEL7之后发现共享文件夹无法使用,网上能搜索到的解决方案都是各种抄,始终没能解决问题,折腾了很久,最后放弃,翻...

那年盛夏笑颜如花 4899

VMware Tools安装失败全解析:从手动安装到深度排错指南

虚拟化技术通过软件模拟硬件环境,使多个操作系统能在单一物理主机上并行运行,其核心价值在于提升资源利用率与系统隔离性。在VMware虚拟化平台中,VMware Tools作为关键集成组件,负责优化虚拟机性能与宿主机交互,实现文件拖拽、剪贴板共享与自适应分辨率等功能。然而,在VMware Workstation 16 Pro环境中,尤其是Windows 7等旧版系统上,自动安装常因版本滞后与系统兼容性问题失败,表现为驱动缺失或安装进度卡顿。本文聚焦手动安装路径,详解从官网获取精确版本安装包、通过虚拟光驱挂载IS

weixin_30878501的博客 352

VMware Tools 手动安装全攻略:解决灰色按钮问题,提升虚拟机性能

在虚拟化技术中,虚拟机增强工具是实现主机与客户机高效协同的关键组件。其核心原理是通过安装一套包含驱动和服务的软件包,优化虚拟硬件的性能,并启用主机与虚拟机之间的高级交互功能。这项技术的价值在于显著提升虚拟机的图形显示、文件传输、剪贴板共享等用户体验,并确保系统时间的同步,是构建高效、无缝虚拟化环境的基石。其应用场景广泛覆盖软件开发、测试、教学及服务器整合等领域。当自动安装流程因镜像文件缺失、系统环境不兼容或配置冲突而失效,导致安装选项呈灰色不可用状态时,手动安装方式便成为可靠的解决方案。本文聚焦于通过获取并

weixin_30787531的博客 462

VMware tools的卸载

VMware tools的卸载 VMware tools的卸载 1./vmware-tools-distrib/bin/vmware-uninstall-tools.pl 2.但是当再次安装Vmware Tools时,会出现错误。解决的办法是在安装前把 /usr/lib/vmware-tools删除:rm -rvf /usr/lib/vmware-tools 3.然后再重新安装Vmware too...

weixin_45609884的博客 2257

VMware Workstation 17.5安装RHEL 8.0全指南

虚拟化技术通过创建隔离的虚拟环境,使多个操作系统能并行运行在同一物理硬件上。VMware Workstation作为主流虚拟化平台,利用硬件辅助虚拟化技术(如Intel VT-x/AMD-V)实现高性能虚拟化。RHEL作为企业级Linux发行版,结合虚拟化技术可构建稳定的开发/测试环境。本文以VMware Workstation 17.5和RHEL 8.0为例,详细演示从环境准备、虚拟机配置到系统优化的完整流程,涵盖硬件虚拟化检测、磁盘分区方案、VMware Tools集成等关键技术点,并针对常见安装问题提

weixin_34059951的博客 477

在VMware中Linux操作系统中卸载VMware tools

卸载VMware虚拟机中linux环境下的VMware tools

ab161616的博客 2936

VMware Tools 手动安装指南:解决灰色按钮问题与 Linux 虚拟机优化

在虚拟化技术中,虚拟机增强工具是实现主机与客户机高效交互的关键组件。其核心原理是通过安装特定的驱动和服务集,优化资源调度与I/O性能,从而提升虚拟机的整体运行效率与用户体验。对于使用 VMware 虚拟化平台的用户而言,VMware Tools 正是实现鼠标无缝集成、剪贴板共享、文件拖放和图形性能增强的技术基础。然而,在实际部署过程中,常因 ISO 文件未正确挂载导致图形化安装按钮失效,此时手动安装成为必要的工程实践。本文聚焦于这一常见问题,详细解析如何通过定位安装镜像、准备编译环境、挂载 ISO 并执行编

weixin_34209851的博客 416

虚拟机增强工具:Vmware Tools与open-vm-tools原理、安装与性能调优实战

虚拟化技术通过Hypervisor将物理硬件抽象为虚拟资源,实现了服务器资源的灵活分配与隔离。然而,这种抽象层也带来了性能损耗,例如I/O请求需要经过额外转换,导致磁盘和网络访问延迟增加。为了解决这些问题,虚拟机增强工具应运而生,它通过在Guest OS中安装优化的驱动套件,在虚拟机和宿主机之间建立高效通信通道,从而显著提升图形显示、鼠标集成、时间同步等核心功能的性能与用户体验。在工程实践中,VMware环境下的增强工具主要有闭源的Vmware Tools和开源的open-vm-tools两种实现。其中,o

weixin_30298497的博客 438

Red Hat 7.X安装VMware Tools

VMware Tools需要安装的依赖包 [root@localhost ~]# yum install gcc 复制VMware Tools 安装包 解压安装包 [root@localhost tmp]# tar zxvf VMwareTools-9.9.2-2496486.tar.gz  [root@localhost tmp]# cd vmware-to

百年一梦 2563

VMware虚拟机性能优化:open-vm-tools安装与配置指南

虚拟化技术通过抽象硬件资源实现多系统并行运行,其中VMware作为主流平台依赖open-vm-tools实现宿主机与虚拟机的深度集成。该开源工具集通过显示驱动优化、内存气球技术、文件共享等机制提升性能,解决90%的虚拟机卡顿问题。在Linux环境中,不同发行版需采用APT或YUM安装策略,涉及EPEL仓库、依赖冲突处理等工程实践。典型应用场景包括金融行业虚拟桌面、云计算资源池等需要高效资源调度的领域。内存动态回收和剪贴板共享等热词功能,显著改善跨系统操作体验。

weixin_30292843的博客 388

mac给vmware在centos7虚拟机中安装vmware tools教程

0 报错: Error when getting information for file //tmp/VMwareDnD/7mhlra/test22.md: No such file or directory 找了一大堆都解决不了,只能重新安装vmware tools,但是重新安装发现:重新安装vmware-tools”灰色而无法安装 。最后找到找个办法 安装 卸载预装的“open-vm-to...

和而不流 3052

电力工程师必看:GOOSE/SV/MMS三协议在智能变电站中的分工与联动实例

本文深入解析了智能变电站中GOOSE、SV、MMS三大核心通信协议的分工与协同机制。GOOSE协议作为过程层的“闪电信使”,负责毫秒级传输跳闸命令等事件信息;SV协议则传输精确同步的电流电压采样值流;而MMS协议作为站控层的“管理语言”,实现设备监控与数据管理。三者基于IEC 61850标准,在过程层、间隔层和站控层之间高效联动,共同构建了智能变电站稳定可靠的通信骨架。

jj890的博客 367

ISO 26262中的失效率计算:Mission profile的使用

Mission profile:任务剖面,即产品在完成规定任务这段时间内所经历的时间和环境的时序描述;集成电路在工作时环境温度是在不停变化的,同时也存在运行状态和非运行状态;为此标准提出了根据任务剖面(Mission profile)以及集成电路的实际结温来评估热幅度变化、循环温度幅值等因素的影响;汽车电子元器件相关的Mission profile参考IEC TR 62380:Table 11。

weixin_47071127的博客 4815

mac使用vmware在centos7虚拟机中安装vmware tools

0 报错: Error when getting information for file //tmp/VMwareDnD/7mhlra/test22.md: No such file or directory 找了一大堆都解决不了,只能重新安装vmware tools,但是重新安装发现:重新安装vmware-tools”灰色而无法安装 。最后找到找个办法 安装 卸载预装的“open-vm-tools”包 检测是否预装了 open-vm-tools yum list installed | g

1501

中科蓝讯(第一次使用指南)

中科蓝讯 新手指南

qq_48579018的博客 1万+

VCSA中linux系统虚拟机 (CentOS/RHEL最小化安装版) 安装 VMware Tools

在VCSA中创建完虚拟机后,创建的虚拟机默认是没有安装VMware Tools工具的。本文以VCSA中部署的最小化安装的CentOS 7 虚拟机为例,详细介绍了在VCSA中如何安装VMware Tools工具。

指尖@韶华 1918

Unity引擎开发:复杂动作系统_动作捕捉数据的应用与整合

通过以上步骤,我们可以在Unity中有效地应用和整合动作捕捉数据,以实现更加真实和流畅的动画效果。从导入文件格式的选择,到预处理和优化,再到实时应用和调试验证,每一步都至关重要。希望本文能帮助你在Unity项目中更好地利用动作捕捉数据,提升动画质量和性能。

chenlz2007的博客 959

PCIE总线及其PCIE SWITCH的使用

PCIe总线与PCI最大的区别在工作原理上,PCIe是采用点到点的串行方式进行传输的,被称为“串行PCI”,由于采用了串行方式传输使得其工作频率可以达到2.5Ghz,大大增加了传输速率,同时采用全双工的通信方式,使得其传输速度提高了一倍,每一个PCIe总线设备与外部通信时有四根数据总线,分别有两个RX和TX,两根用于发送,两根由于接收。PCIe switch中文翻译为PCIe开关或PCIe交换机,主要作用将PCIe设备互联,PCIe switch芯片与其设备的通信协议都是PCIe;

zxm8513优快云博客 4736

vmware安装,然后在此基础上安装RHEL4和Ubuntu9.04,并分别安装vmware-tools

    据了解,之前很多人装双系统,但自从vmware诞生以来,给人们带来了更多的方便。一、安装vmware workstation由于是在windows下,可以选择去vmware官方网站下载,也可以到华军或太平洋等网站下载。其安装过程也跟windows下其他软件相似,一路点击下一步,安装成功。我目前使用版本号:vmware-workstation 6.5.2 二、安装RHEL

zccst的专栏 1788

【系统架构设计师-2025上半年真题】综合知识-参考答案及详解(75题完全回忆版)

【系统架构设计师-2025上半年真题】案例分析-参考答案及部分详解

数据知道的博客 1万+

VMware Tools安装配置全攻略:提升虚拟机性能与集成体验

虚拟化技术通过软件模拟计算机硬件环境,允许在单一物理主机上运行多个独立的操作系统实例。其核心原理在于利用虚拟机监控器(Hypervisor)对底层硬件资源进行抽象、分区和隔离。这项技术的价值在于显著提升硬件利用率、简化系统部署与迁移,并增强业务连续性与安全性。在开发测试、服务器整合、桌面虚拟化及云计算等广泛场景中,虚拟化都是基础支撑技术。为了优化虚拟机性能与用户体验,需要安装特定的集成工具,例如VMware Tools。它通过提供显示驱动、内存管理(如内存气球驱动)和高效的通信接口(如VMCI),解决了鼠标

weixin_33895475的博客 385

Spring AI 实战:第七章、Spring AI Advisor机制之记忆大师

从金鱼到最强大脑通过 Spring AI 的记忆功能,我们成功让 AI:记住了用户身份实现了多用户隔离做到了持久化存储最终效果用户:“和上次一样” → AI 秒懂用户:“你知道我的名字吗?” → AI:“当然,张三!AI的进化路线🐟金鱼脑 →🧠最强大脑 →🏛️记忆宫殿管理员。

liaokailin的专栏 1516

WRFDA如何读取风云四号A 星的GIIRS数据?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1029
上一篇: Linux运维“邪修”功法之VIM
下一篇: RHEL7学习笔记_Linux文件系统
FED_AF
博客等级 码龄11年 21粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值