使用的centos7和windows10,在虚拟机centos7中是root身份。由于是第一次用没有界面的linux,可谓是困难重重……
一
打开VMware,然后选中你的虚拟机,我的是centos7。然后点击工具栏”虚拟机“,然后选择”安装VMware tools“选项。
以上步骤完成后,VMware会给你当前虚拟机的光驱选项,放到linux.iso文件,注意该文件不是你安装linux的.iso文件。
二
好了现在,进入你的Linux虚拟机的命令行模式,先挂载步骤2中的光驱,因为我们需要的vmware tools工具安装包在上面的iso文件中。(不太了解什么意思hhh)
1、先创建光驱的挂载点目录: root@localhost ~]# mkdir /mnt/cdrom ——————————就是在mnt文件夹下新建个cdrom文件夹
2、把光驱挂载至该目录下: [root@localhost ~]# mount /dev/cdrom /mnt/cdrom/——————————————直接打这行代码
3、进入/mnt/cdrom即可看到vmware tools安装包,就看见个VMwareTooles-版本号.tar.gz的东西。
嗯然后要吧这个安装包转移到别的目录,好像说这里直接解压会报错还是怎样,反正搞到你喜欢的文件夹,然后输入命令:
tar -xzvf VMwareTools...gz
然后,解压完后进入目录vmware-tools-distrib,执行命令:
./vmware-install.pl
然后一路enter(一开始问你那个答个y)然后就搞定了。
嗯这是理想的情况,好的现在下面看我的各种新手坑
三
在跑命令
./vmware-install.pl
出现错误“-bash: ./vmware-install.pl: /usr/bin/per: bad interpreter: No such file or directory”,表明未安装编译环境。
输入命令:
yum -y install perl gcc make kernel-headers kernel-devel
开始安装个编译环境
搞定后重新跑那个./vmw-install的命令,然后一直enter或者yes,然后到这个界面:
说什么可以通过/usr/bin....什么命令卸载这个东西,然后说第一次跑要初始化配置,问要不要,然后就点回车。
四
这里又是一个坑,点了几下回车,问你要实现共享文件夹功能吗,点回车,然后就说什么make gcc kernel-deve;l什么的,然后继续回车。gcc的检测没有问题,到了这个kernel-header的时候,报了个折磨了我很久的问题:
The path "" is not a valid path to the 3.10.0-229.el7.x86_64 kernel headers. Would you like to change it?[yes]
我点了回车Enter the path to the kernel header files for the 3.10.0-229.el7.x86_64 kernel?
额,这什么玩意??对于一个第一次用无界面版Linux的小菜鸡,表示真的不知道你在说什么好吧。 好的然后我开始百度这个问题,嗯大概是说这个内核什么头文件的路径找不到。
先是看到这篇博客,https://blog.csdn.net/li_001/article/details/53171037
叫我先ctrl+z取消了这个配置的初始化工作,然后
嗯,我输入了这个命令,它回到我什么已经有了最新的kernel-headers,然后说什么都没做。 嗯看来不对。
然后我又继续找资料,看到两篇意见统一的博客:
https://www.cnblogs.com/liximomo/p/4446229.html
https://www.cnblogs.com/DannielZhang/p/5221044.html
哇很开心,问题和我的一样看起来,然后就跟着它走:
先手动输入它叫我输入的path:
然后和它一样失败了,博客说失败的原因是:
VMwaretoo的版本比较旧,然后新版本的centos的kernel的头文件和以前的地方不一样了,然后现在找不到。然后要通过也软链接ln -s命令来解决问题。
然后我先在/usr/src/目录下看看有没kernel的源文件先,因为我们刚刚跑了这个命令嘛,就在
找到了这个头文件。哈哈哈问题解决了吧
然后我就写了个软连接命令:
ls -s /usr/drc/kernels/3.10.0-862.9.1.el7.x86_64/include/generated/uapi/linux/version.h /usr/drc/kernels/3.10.0-862.9.1.el7.x86_64/include/linux/version.h
然后重新在/usr/bin/跑了这个vmware-config-tools.pl文件,就初始化配置什么的。嗯又到了那个检查gcc和kernel-devel,然后——又不行,一样的结果……
然后就陷入沉思。。。。
在自暴自弃差点睡着的时候,突然发现:它提醒的这个
kernel的版本和我在/usr/src/kernels下的这个源文件的版本:3.10.0-862.9.1.el7.x86_64不一样!!!
嗯然后我找到了这个博客:https://www.cnblogs.com/mylinux/p/5612168.html
好像是我了,版本不一样,然后我跑了下这个uname -r所谓的看linux系统内核版本的命令,果然是是3.10.0-229.el7.x86_64。 然后这个是我大概懂了,就我的linux的内核版本比较低,然后我刚刚装的kernal-devel和所带的header头文件,版本高,所以不一致,所以软连接也没用!!
然后这篇英文博客给了两个解决方法,我选择了第一个:
第一个命令跑了很多东西出来,然后后面那个installheaders什么的就说已经是最新了不用安装什么的。嗯然后init 6重启,——————
才知道我刚刚那个命令原来是升级一个内核版本,然后我选了第一个进去。
输入命令uname -r,嗯,终于显示的和/usr/src/kernels/下的那个版本号一样了。
然后,删掉刚刚的软连接,重新跑一遍软连接命令。——重新到/usr/bin/跑vmware-config-tools,pl——终于搞定!
五
好像还可以有界面拖拽文件功能,嗯这里我就用了共享文件夹的功能。
先在windows的VMware中,进入刚刚的虚拟机,然后点击工具栏虚拟机——》设置——》选项——》添加你的共享文件夹。
然后,再虚拟机中,cd /mnt/hgfs就可以看到共享的内容了!!!!
最后汇总一下参考过的博客:
整体过程参考:
https://blog.csdn.net/happysunshineguy/article/details/77158993
http://www.cnblogs.com/ddbear/p/6857199.html
遇到坑的参考:
https://www.jb51.net/article/108141.htm
https://blog.csdn.net/li_001/article/details/53171037
https://www.cnblogs.com/liximomo/p/4446229.html
https://www.cnblogs.com/DannielZhang/p/5221044.html
https://www.cnblogs.com/mylinux/p/5612168.html
刚接触Linux,可能有些总结得不对的地方,希望大家可以积极指出,望谅解~