ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [原创]解决VitualBox虚拟机中的文件共享的一个BUG

[原创]解决VitualBox虚拟机中的文件共享的一个BUG

原创 Linux操作系统 作者:osdba 时间:2009-01-21 11:23:59 0 删除 编辑
VitualBox虚拟机中的文件共享的一个BUG:
我的环境,Host是WindowXP,虚拟机装的是Linux,有一次我把源文件在共享目录中编译,发生如下错误:
root [ /src/bdrr ]# make
make -C /lib/modules/2.6.26/build M=/src/bdrr modules
make[1]: Entering directory `/u/linux-2.6.26'
rm: cannot remove `/src/bdrr/.tmp_versions/*': Protocol error
make[1]: *** [crmodverdir] Error 1
make[1]: Leaving directory `/u/linux-2.6.26'
make: *** [default] Error 2
 
 
后来我测试,只要某个共享目录为空,如下删除共享目录的文件时,就会触发此BUG:
rm /sharedir/*
 
后来我测试了用其它命令,一样报错:
# ls /src/bdrr/.tmp_versions/*
ls: cannot access /src/bdrr/.tmp_versions/*: Protocol error
 
我估计这个错误的原因是,当一个共享目录为空时,列表这个共享目录时,由于目录下没有文件,为空,这时Virtualbox处理这种为空的情况就出错了错误。
解决方法为:
解开源码包:
cd /vboxsetup
/mnt/cdrom/VBoxLinuxAdditions.run --tar xvf  #如果是VirtualBox2.02版本文件是VBoxLinuxAdditions-x86.run。
把源代码module/vboxvfs/*.c中\错误码“EPROTO”都改成“ENOENT”:
sed -i "s/\-EPROTO/\-ENOENT/g" `grep "\-EPROTO" -rl /u/vbox/module/vboxvfs/*.c`
 
 
然后重新安装vboxvfs文件系统模块:
./install.sh vfs-module
 
问题解决。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15145533/viewspace-541608/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2008-08-11

  • 博文量
    12
  • 访问量
    25358