这两天在折腾VMware Tools,终于是搞定了,把心得和体会写一下,希望能帮到点人
在说明具体过程和心得前,先说说为啥我要折腾这个
- 学了Python打包程序后,想看结果,因为懒,没有再去申请个远程主机(诸如AWS的EC2)做实验,或开个虚拟机把打包好的程序扔进去试。最后选择让朋友帮忙,搞定后朋友建议我用虚拟机,说可以很快搞定,为下次不麻烦别人,决定学会一些基本的虚拟机操作
- 装完虚拟机(VMware Workstation Player 12.5.7)和CentOS 7(最小安装)后,首先就想要学主机(Host)和虚拟机/客户机(Client)之间的文件操作,以及复制粘贴等操作
我在AWS EC2的主机上用的是xShell+FileZilla,这两个操作都会,但自己当时没有想到这招,也就有了后来的故事 - 查询了下发现Workstation上要实现上面的功能,要使用共享文件夹功能,这个功能要安装VMware Tools才能用
前戏完,开始折腾
1.用Player自带的方法去下载VMware Tools
结果……
尝试了SS全局下载和重装Player,但都在同样的进度处报这个错,看起来不是网络问题
网上搜了下,发现遇到这个问题的人并不多,也没发现没什么好的处理方法,就决定放弃自动安装,挑战一下手动安装
2.去VMware官网下载VMware Tools
结果……
这就是VMware对访客的态度么……不得去注册个号,登录后才又是一顿找
比如https://packages.vmware.com/t...,没找到(我认为的)合适package
最后还是在download center找到的
你说登录前后怎么就差那么多呢
3.下载完成,开始安装
解压缩那个文件,发现有个linux.iso,按下面这个KB里,Installing VMware Tools from the Command Line with the Tar Installer的步骤进行安装
https://www.vmware.com/suppor...
期间温习了下Linux基础操作,在运行./vmware-install.pl后,发现几个报错
3.1 提示缺少perl依赖包
尝试通过yum安装perl依赖包,提示网络有问题,设置好虚拟机网络连接模式为NAT也不起作用,又是网上一顿找,最后发现CentOS 7默认不开启网卡,运行dhclient解决,然后yum方式安装好perl
3.2 提示缺少ifconfig和gcc依赖包
yum方式安装net-tools和gcc搞定
3.3 提示The path “” is not a valid path to the XXXX kernel headers,系统还提示说不搞定这个问题你用不了共享文件夹功能
仍然是网上到处找经验,试过yum install kernel-devel等,也怀疑并处理过version.h引起的问题,都不行
绝望之下请“网管”朋友帮忙,他成功安装了,对比操作后,我还是没找到可疑之处,就在我请他直播更具体操作几分钟后……我找到了这个帖子
https://unix.stackexchange.co...
里面一位大神提到了
The correct package to install all of the required dependencies for building kernel modules is kernel-devel
The headers are not installed in /usr/src/kernels, rather they're installed in a number of directories below /usr/include (the default location for C header files).
You can list the contents of the kernel-headers package you installed using:
rpm -ql kernel-headers
另一位大神则给出了解决之道
sudo yum install "kernel-devel-uname-r == $(uname -r)"
按着这个思路,终于把VMware tools给装好了
PS1:
在第一次运行vmware-install.pl时,系统提示我使用推荐OVT (Open VM Tools)
我用yum的方式安装好OVT,但发现连hgfs的目录都没有出现,所以放弃了安装OVT的想法(主要是找不到什么图文的教程)
现在想想可能是依赖包或者路径配置不到位,我又没注意报错信息导致的吧
PS2:
事后和两位好友交流,发现其实要满足共享文件和复制粘贴指令,还可以远程连接到虚拟机,用诸如xShell的工具实现
总结下就是:Linux就该远程去用!
哦对,那位“网管”朋友说他是第一次在Linux上装VMware Tools
PS3:
我发现player好像没办法实现共享剪贴板功能
但因为懒就不去求证了,希望有看到文章的好心人能告知下(我的猜测是否正确)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。