这一两天一直在研究VMware Workstation自带的共享文件夹的功能,期间出了不少问题,在公司搭建的是vm10.0+centos07,在家搭建的是VM 7+centos07...

公司环境搭建:

共享访问方式:

1.VM10挂载的操作系统和主机系统当做一个局域网,可以通过浏览网络来进行访问,当然这种方式没有用VM10自带的共享文件夹访问舒畅

2.用VM10的共享功能,

一、vm10.0+centos07

首先,在VM10中选择安装

这样会在centos中安装一个cdrom,具体的路径为:/run/media/root/VMware Tools,上面有个VMwareTools-9.6.2-1688356.tar.gz的文件包。,

我们可以先用tar命令进行归档

第一步:cp  :/run/media/root/VMware Tools/VMwareTools-9.6.2-1688356.tar.gz  /tmp,把这个文件拷贝到tmp下

第二步:cd  /tmp进入临时目录,ls 查看刚才的文件是否在这个目录下
第三步:tar  zxvf  VMwareTools-5.5.0-18463.tar.gz 解压这个文件
第四步:cd  vmware-tools-distrib进行vmware-tools-distrib目录
第五步:./vmware-install.pl 执行这个文件,出现提示就回车
在第五步安装过程中出现几个错误:
一直回车,出现如下错误信息

Searching for GCC...

The path "" is not valid path to the gcc binary.

Would you like to change it? [yes]

提示GCC未安装.按ctrl+z退出。安装GCC

yum install gcc gcc-c++ automake make(将编译环境一次装好)

GCC安装完成后,重新第五步安装。出现如下错误信息:

Searching for a valid kernel header path...

The path "" is not valid.

Would you like to change it? [yes]

提示找不到kernel header,在这个错误中,花费了不少时间。主要原因是版本的不一致性,刚开始我根据网上的操作

yum install kernel-devel 安装了kernel-devel(devel是开发的英文前缀),后重复第五步,还是不行。。,后面经过多次找资料才发现版本不统一。

先查找centos的kernel版本:uname -r 版本号为3.10.0-123.el7.x86_64

但我通过命令行查找安装的kernel-devel 和kernel-headers如下

kernel-devel: 命令:rpm -qa|grep kernel-devel 输出:kernel-devel-3.10.0-123.13.2.el7.x86_64

kernel-headers:命令:rpm -qa|grep kernel-headers 输出:kernel-headers-3.10.0-123.13.2.el7.x86_64

具体版本和centos内核的版本有一些出入,如果主版本是相同的,但还是找不到kernel-header.于是我打算安装和kernel相同的版本

yum install kernel-devel-3.10.0-123.el7.x86_64 安装完成后继续第五步,可能找到了,具体提示如下:

path to the kernel headers of the running kernel.

Would you like to change it? [no]

直接回车。一路向下。。。期间我一直敲回车,结果报错了也不在意。导致没有成功实现共享。

其实在安装完成后,无论成功失败可以通过vmware-config-tools.pl进行查看。我再一次查看,看到了如下信息:

/tmp/modconfig-ygOywn/vmhgfs-only/inode.c: 在函数‘HgfsPermission’中: /tmp/modconfig-ygOywn/vmhgfs-only/./shared/compat_dcache.h:57:38: 错误:‘struct dentry’没有名为‘d_count’的成员 #define compat_d_count(dentry) dentry->d_count ^ /tmp/modconfig-ygOywn/vmhgfs-only/inode.c:1904:23: 附注:in expansion of macro compat_d_count’ int dcount = compat_d_count(dentry);

居然编译的时候报错了:只能修改源码compat_dcacche中的.h文件

[root@localhost ~]# cd /tmp/vmware-tools-distrib/lib/modules/source/

[root@localhost source]# ls

legacy vmblock.tar vmhgfs.tar vmsync.tar vmxnet.tar pvscsi.tar vmci.tar vmmemctl.tar vmxnet3.tar vsock.tar

[root@localhost source]# tar -xf vmhgfs.tar   --解压vmhgfs.tar,里面有个vmhgfs-only文件夹

[root@localhost source]# ls

legacy vmblock.tar vmhgfs-only vmmemctl.tar vmxnet3.tar vsock.tar pvscsi.tar vmci.tar vmhgfs.tar vmsync.tar vmxnet.tar

[root@localhost source]# cd vmhgfs-only/--进入解压后目录

[root@localhost vmhgfs-only]# ls backdoor.c dir.c hgfsTransport.h request.h ........................................

[root@localhost vmhgfs-only]# cd shared/

[root@localhost shared]# vim compat_dcache.h--打开头文件

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
#define compat_d_count(dentry) d_count(dentry)
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
#define compat_d_count(dentry) dentry->d_count
#else
#define compat_d_count(dentry) atomic_read(&dentry->d_count);
#endif

这里报错了,不知道为什么这样,将#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)下面的#define改成

#define compat_d_count(dentry) d_count(dentry),就可以了

改完源码后,重新归档:

回到source文件夹

[root@localhost source]# tar -cf vmhgfs.tar vmhgfs-only/

[root@localhost source]# ls

legacy vmblock.tar vmhgfs-only vmmemctl.tar vmxnet3.tar vsock.tar
pvscsi.tar vmci.tar vmhgfs.tar vmsync.tar vmxnet.tar
[root@localhost source]# rm -rf vmhgfs-only/

[root@localhost source]# ll

总用量 8456

drwxr-xr-x. 1 root root 162 3月 22 2014 legacy

-rw-r--r--. 1 root root 1392640 10月 10 23:02 vmhgfs.tar
.........................

[root@localhost source] cd  /tmp/vmware-tools-distrib

[root@localhost vmware-tools-distrib]# ./vmware-install.p

重新安装。这下成功了。。。

然后我们设置vmware的共享文件夹:

虚拟机设置->选项,如下:

添加共享文件夹,后。重启centos

后,我们就能在/mnt/hgfs/下看到共享的文件了

[root@localhost source]# ll /mnt/hgfs/
总用量 0
drwxrwxrwx. 1 root root 0 1月 19 10:24 sharefile

二.VM 7+centos07..

在公司安装成功后,回家安装,直接安装kernel-devel-3.10.0-123.el7.x86_64,安装成功后,按理说和内核版本已经是一致了

但还是会报

Searching for a valid kernel header path...

The path "" is not valid.

Would you like to change it? [yes]

,后面我直接安装了最新的kernel-devel

yum install kernel-devel .后这个问题才解决

不清楚为什么内核版本一致了还需要安装最新版本。就是centos需要两个版本

kernel-devel-3.10.0-123.el7.x86_64和kernel-devel-3.10.0-123.13.2.el7.x86_64

这个问题解决后,一路向上却报了很多源码错误,后面听说网上说VM7不支持一些新的内核。才没向下研究了。。。。

VM10下载地址:http://pan.baidu.com/s/1hqf7etu

centos7下载地址:http://pan.baidu.com/s/1nQMGe

 

VMware Workstation 10+Centos7(64位)共享文件夹的更多相关文章

  1. VMware Workstation中虚拟机与windows10共享文件夹

    设置共享文件夹之前需要确定已经安装VMware Tools 1.在windows桌面新建一个名为share_folder的文件夹用来共享 2.右键点击虚拟机的名字,在弹出的菜单中选择设置 弹出对话框 ...

  2. 环境篇:VMware Workstation安装Centos7

    环境篇:VMware Workstation安装Centos7 1 VMware Workstation安装 CentOS下载地址:http://isoredirect.centos.org/cent ...

  3. VMware Workstation 10安装详解

    虚拟机软件可让你在一个操作系统上直接运行的多个不同的虚拟操作系统,譬如可在 Windows 8.1 上运行 Ubuntu 或 Win7 等.免费的 VMware Player 和 VirtualBox ...

  4. VMware Workstation 10.0 正式版官方简体中文下载(附序列号)

    虚拟机界数一数二的王者软件VMWare Workstation 今日推出了最新的VMware Workstation 10.0 版本.该版本最大的更新是加入了简体中文语言,这意味着未来神马汉化包.中文 ...

  5. vmware workstation 10.0

    2013.9.3 vmware workstation 10.0 build 1295980新增功能– 可以将windows 8.1物理pc转变为虚拟机:unity模式增强,与windows 8.1 ...

  6. VMware Workstation 10安装Centos6.4操作步骤说明

    1.在网上下载VMware Workstation 10, 百度软件中心助手安装程序高速下载,下载完成后默认是自动启动安装的,而原来的安装程序文件保存在:  C:\Users\用户名\Document ...

  7. VMware Workstation 10.0 简中绿色精简版

    VMware Workstation是强大的虚拟机软件,能在一台机器上同时运行二个或更多Windows.DOS.LINUX系统,并进行开发.测试.部署新的应用程序.VMware10.0 延续VMwar ...

  8. 002-docker安装-mac上安装docker,17.06在CentOS7 64位机器上安装

    一.mac上安装docker 1.下载 通过这个链接下载:https://download.docker.com/mac/stable/Docker.dmg 2.安装 将 Moby 的鲸鱼图标拖拽到  ...

  9. Vmware workstation 10 NAT功能总是不正常的原因

    原来运行一切正常的VMWARE WORKSTATION 10,突然出现NAT功能不能正常工作的情况. 表现是:如果将虚拟机的网卡设置为NAT模式,可以PING通网关及LAN内的主机,但是PING不通外 ...

随机推荐

  1. python函数基础 与文件操作

    函数的定义 函数是通过赋值传递的,参数通过赋值传递给函数.def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def function_name(arg1,arg2[,.. ...

  2. C语言 04 进制

    %d 或者%i 十进制 %c 输出字符 %p 输出地址 %f 输出小数 %o 八进制 %x 十六进制 一个int类型变量占4字节,占32bit(位) 例子:十进制 int=12  转二进制 0000 ...

  3. Java数据结构之字符串模式匹配算法---Brute-Force算法

    模式匹配 在字符串匹配问题中,我们期待察看源串 " S串 " 中是否含有目标串 " 串T " (也叫模式串).其中 串S被称为主串,串T被称为子串. 1.如果在 ...

  4. git 常用命令及解析 由浅入深

    笔者用的是windows系统,不过并没有什么影响. Git  分布式版本控制系统. 为了让初学git的人明白git是干什么的,有什么意义 笔者觉得先来介绍git作为版本控制器是怎么运作的会让大家对后边 ...

  5. Mvc 模块化开发

    在Mvc中,标准的模块化开发方式是使用Areas,每一个Area都可以注册自己的路由,使用自己的控件器与视图.但是在具体使用上它有如下两个限制 1.必须把视图文件放到主项目的Areas文件夹下才能生效 ...

  6. mysql登陆问题

    1.centos6下mysql5.7的登陆问题 问题的描述:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using p ...

  7. Logstash学习-Hello World

    1.安装 rpm --import http://packages.elasticsearch.org/GPG-KEY-elasticsearchcat > /etc/yum.repos.d/l ...

  8. Maven的安装配置

    本文主要是针对mac os系统下maven的安装教程. 1.首先验证是否有jdk.java -version,没有需要手工安装 2.maven的下载地址:http://maven.apache.org ...

  9. x86和x64的区别

    整理了下网上的资料,归类了下,大似表述是这样的:IBM/PC兼容机,也就是Intel的i80x86指令架构,就简称了x86.x86并不是指32位环境,而是指80x86架构,这个架构目前有32位,64位 ...

  10. 一个简单的loading,纯属自娱自乐

    /// <reference path="/scripts/js/jquery.min.js" /> var zsw = { loading: function (im ...