ubuntu7.04安装samba,可以访问局域网内其他windows共享,但无法访问本地vmware虚拟机上的共享。
ubuntu通过Nautilus采用smb://xxx.xxx.xxx.xxx/path,显示无法显示所有内容。
windows通过\\xxx.xxx.xxx.xxx,显示没有权限,找不到路径。
两机均可以ping通ip,但是无法ping通主机名。
mount共享时显示protocol negotiation failed错误。
(mount -t smbfs -o username=abc,password=xyz //xxx.xxx.xxx.xxx/path /media/path)
解决方法:
经过无数次实验、重装、严刑拷打、刑讯逼供……

我重新编译了vmare-server后,一切就正常了。T_T,早怎么不知道,吃了没有文化的亏。

操作步骤:
1、退出所有的vmware。
2、删除vmware-server-kernel-modules
代码: 全选
sudo apt-get remove vmware-server-kernel-modules vmware-server-kernel-modules-2.6.20-16
进入vmware的安装包目录(放哪里了,自己找找哈,没有的同学去下载哦)
下面这里已经进入目录了
代码: 全选
sudo ./bin/vmware-uninstall.pl
下面是这个邪恶的代码

代码: 全选
locate vmware | xargs -i sudo rm -rf {}
进入安装包目录(就是第三步的那个目录哈)
代码: 全选
sudo ./vmware-install.pl
更加详细的请参考http://blog.csdn.net/xport/archive/2007/04/21/1573676.aspx
代码: 全选
cd /usr/lib/vmware/modules/source/
sudo cp vmmon.tar vmmon.tar.bak
sudo tar -xvf vmmon.tar
cd vmmon-only/include/
sudo gedit compat_kernel.h
代码: 全选
static inline _syscall1(int, compat_exit, int, exit_code);
代码: 全选
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
static inline _syscall1(int, compat_exit, int, exit_code);
#endif
代码: 全选
cd /usr/lib/vmware/modules/source/
sudo tar -cvf ./vmmon.tar ./vmmon-only
代码: 全选
sudo vmware-config.pl
到此搞定,再次打开vmware,一切顺利。:D
运行环境:
ubuntu7.04
vmware-server-1.0.3(VMware-server-1.0.3-44356.tar.gz)
vmware上安装windows xp
ubuntu安装samba(sudo apt-get install samba smbfs smbclient)