?潭水无风?

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

前言

VMware安装CentOS7时遇到了共享文件夹的问题,而安装Ubuntu设置VMware Tools的方法设置完成之后,发现查找不到共享文件夹下的内容,最终参考以下步骤解决此问题。

方法和步骤

一、确保虚拟机联网

选择NAT或者桥接等等方式,要确保VMware Tools安装时有网络连接,网络相关设置在此不作过多介绍。

 

二、设置Windows和CentOS7之间共享文件夹

1.安装VMware Tools之前,先执行下面命令:

1 $ su   # 使用root用户权限执行下列操作
2 # yum install open-vm-tools-desktop
3 # yum install perl gcc kernel-headers kernel-devel

 

2.点击VMware Workstation菜单(中文)上的"虚拟机(M)"->"安装VMware Tools(T)"项,桌面会出现一个光盘,点击光盘。

# tar vxf VM*.gz -C /home/xxx/Tools  # xxx代表主目录,~/Tools目录为指定解压目录

 

3.修改hgfs源码

进入源码目录

1 # cd /home/xxx/Tools/
2 # chmod -R 777 vmware-tools-distrib
3 # cd vmware-tools-distrib/lib/modules/source

 

解压hgfs源码

1 # tar xvf vmhgfs.tar
2 # cd vmhgfs-only
3 # chmod +w page.c

 

修改page.c文件

# vi page.c

进入vim命令模式,输入":/KERNEL_VERSION",按回车搜索,多次查找,直到找到包含以下内容的代码

 1 int
 2 HgfsWbRequestWait(HgfsWbPage *req)
 3 {
 4 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)
 5     return wait_on_bit_io(&req->wb_flags,
 6                           PG_BUSY,
 7                           TASK_UNINTERRUPTIBLE);
 8 #elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 13)
 9     return wait_on_bit(&req->wb_flags,
10                        PG_BUSY,
11 #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 17, 0)
12                        HgfsWbRequestWaitUninterruptible,
13 #endif
14                        TASK_UNINTERRUPTIBLE);
15 #else
16     wait_event(req->wb_queue,
17                !test_bit(PG_BUSY,&req->wb_flags));
18     return 0;
19 #endif
20 }

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0) 中的 3, 19, 0 替换为 3, 10, 0
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
保存退出
将改好的代码重新打包

1 # chmod -w page.c
2 # cd ..
3 # rm vmhgfs.tar
4 # tar cf vmhgfs.tar vmhgfs-only
5 # chmod 777 vmhgfs.tar
6 # rm -rf vmhgfs-only

 

4.开始安装

1 # cd /home/xxx/vmware*
2 # ./vmware-install.pl  # root权限运行

如果按照过程中出现“The path “” is not a valid path to the 3.10.0-693.el7.x86_64 kernel headers.Would you like to change it? [yes]”,就输入 no

重启系统

# reboot

 

5.点击VMware Workstation菜单(中文)上的"虚拟机(M)"->"设置(S)"->"选项"->共享文件夹,设置"总是启用",添加共享文件夹路径,确定。

6.查看VMware Tools是否安装成功

# vmware-hgfsclient

 

7.查看曾经未成功显示出来的共享文件夹

1 $ su  # 切换为root用户
2 # /usr/bin/vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other
3 # cd /mnt/hgfs
4 # ls

至此共享文件夹成功显示!!!

 

posted on 2019-01-22 17:52  万物拾光  阅读(176)  评论(0)    收藏  举报