[转载]VMWARE TOOLS安装提示THE PATH IS NOT A VALID PATH TO THE GENERIC KERNEL HEADERS

VMWARE TOOLS安装提示THE PATH IS NOT A VALID PATH TO THE GENERIC KERNEL HEADERS
I solved this problem, I guess.
Perhaps the version.h does not exists at 3.7.0-7-generic/include/linux directory.

First, make sure install build-essiontial and linux-headers.

$ sudo apt-get install build-essential linux-headers-$(uname -r)

And then,

sudo -i
cd /lib/modules/3.7.0-7-generic/build/include
cp ./generated/uapi/linux/version.h linux/version.h

and then,


$ sudo ./vmware-install.pl

...
Enter the path to the kernel header files for the 3.7.0-7-generic kernel? /lib/modules/3.7.0-7-generic/build/include
...
Done!


This may helpful to you...

======================================================================

Ubuntu内核升级后,和主机间的共享可能会失效,这时就需要重新安装vmware tools了

1. 重新安装VMWare Tools
解压vmware tools,得到vmware-tools-distrib文件夹,用root权限运行其下的vmware-install.pl文件

tar -xzvf VMwareTolls-9.2.3-1031360.tar.gz
cd vmware-tools-distrib
sudo ./vmware-install.pl

安装分为三个步骤:

卸载旧版本
安装新版本
配置新版本(以后也可以手动执行/usr/bin/vmware-config-tools.pl)
 

2. 配置中遇到的问题
在第3步中,可能会出现以下问题:

Searching for a valid kernel header path...
The path "" is not a valid path to the 3.5.0-23-generic kernel headers.
Would you like to change it? [yes]

需要安装linux-headers-3.5.0-23-generic包,具体版本可能不同,请自行对照(uname -r)。

sudo apt-get install linux-headers-3.5.0-23-generic

也可以使用如下的通用命令

sudo apt-get install linux-headers-`uname -r`

然后把目录更改为有效目录

Enter the path to the kernel header files for the 3.5.0-23-generic kernel?
/usr/src/linux-headers-3.5.0-23-generic/include

The path "/usr/src/linux-headers-3.5.0-23-generic/include" appears to be a
valid path to the 3.5.0-23-generic kernel headers.
Would you like to change it? [no]

其他地方难度不大,vmware tools安装完成。

然后就可以用/mnt/hgfs/中访问共享文件了。

======================================================================

Ubuntu 10.10 在安装vmware tools的时候目前会碰到几个问题:

Console代码:
1.What is the location of the directory of C header files that match your running  
kernel? [/usr/src/linux/include] <直接按 Enter>   
2.The path "/usr/src/linux/include"  is not an existing directory.  
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] <直接按 Enter>

The path "/usr/src/linux/include" is not an existing directory. 
由于 Kernel 版本是 APT 抓下來的最新版,所以会需要输入 “/usr/src/linux-headers-2.6.35-22-generic/include “

要注意的是,VMWare Tools 安装时会询问目前系统使用的 Kernel header,所以如果 /usr/src 下有多个 Kernel header 目录,最好先执行 “uname -r“ 指令,确认应该使用那个本版。另外可以不直接使用 “/usr/src/linux-headers-2.6.35-22-generic/include” ,先 “sudo ln -s /usr/src/linux /usr/src/linux-headers-2.6.35-22-generic/include”

Console代码:
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] /usr/src/linux-headers-2.6.35-22-generic/include 
按回车以后,还是报错说,指定的Kernel headers和当前系统使用的版本不匹配。

Console代码:  
The directory of kernel headers (version @@VMWARE@@ UTS_RELEASE) does not match
your running kernel (version 2.6.35-22-generic). Even if the module were to
compile successfully, it would not load into the running kernel.   
但事实并不是不匹配,而是 Kernel 中有一个变量 UTS_RELEASE 的不存在了。以前这个定义放在 /usr/src/linux-headers-2.6.35-22-generic/include/linux/version.h ,而现在已经移到了/usr/src/linux-headers-2.6.35-22-generic/include/generated/utsrelease.h。所以简单的方法,我们只需要在version.h中添加 #define UTS_RELEASE "2.6.35-22-generic" (具体值使用 “uname -r“ 查看)

接下来继续,又会有新的错误提示!! -_-|| 找不到 autoconf.h 原因是因为 autoconf.h 不再VMware tools 安装程序预设的寻址目录中。

Console代码:
The path "/usr/src/linux-headers-2.6.35-22-generic/include" is a kernel header
file directory, but it does not contain the file "linux/autoconf.h" as
expected. This can happen if the kernel has never been built, or if you have
invoked the "make mrproper" command in your kernel directory. In any case, you
may want to rebuild your kernel.   
可以简单的把它链接过来:

cd  /usr/src/linux-headers-2.6.35-22-generic/include/linux

sudo ln -s  ../generated/autoconf.h  ./

然后应该能顺利完成安装了。

 

*以上三种方法均为网络收集,非原创,以第一种方法最为有效。

posted @ 2013-06-17 13:41  风相随  阅读(7457)  评论(0编辑  收藏  举报