九月 24

看来vmware对linux 2.6.x系列的kernel实在是比较感冒,很不幸的,又让我遇到了bug。

故障现象:版本高于2.6.21的linux kernel无法引导scsi控制器类型为lsi控制器的vmware虚拟机

所对应vmware版本:Esx 2.5.x全系列,3.0.x系列不详3.0.2之前的3.0.x系列
Server 系列不详
Workstation 6.0 RC1以前版本

原因:2.6.21及之后的kernel里面所带的lsi驱动模块MPT driver 升级到了3.04.04版本,这个版本的MPT驱动里面新增加了一些debug的处理,并改变了取lsi控制器上挂接的scsi设备的取值方法。然后呢,vmware模拟实现lsi控制器上存在的缺陷就冒了出来了,导致新版本的驱动认为虚拟机里面的lsi控制器上根本就没有挂接scsi设备......老外的解释如下:
VMware emulation is broken, its PortFact's MaxDevices reports value programmed by IOC Init, so if you program IOC Init to 256 (which is 0,as that field is only 8 bit), it reports back 0 in port facts, instead of 256... And unfortunately using 256 triggers another bug in the code (parallel SCSI can have only 16 devices).
更详细的内容可以去看redhat的Bugzilla Bug 230703
解决方法:
Continue reading »

八月 01

准备开始尝试 2.6.x的kernel了,于是在vmware里面部署了台trustix 3.0.5,结果在安装vmware-tools就遇到了相当的问题,记录一下遇到的两个主要问题:

  • 由于2.6系列kernel的version.h缺少定义,导致编译vmmemctl、vmxnet的时候会认不出正确的kernel版本,报错如下:

    The directory of kernel headers (version @@VMWARE@@ UTS_RELEASE)
    does not match your running kernel
  • 还是由于2.6系列kernel的函数变动,导致vmmemctl、vmxnet编译的时候会出错,出错信息如下:

    1. CC [M]  /tmp/vmware-config5/vmxnet-only/vmxnet.o
    2. /tmp/vmware-config5/vmxnet-only/vmxnet.c: In function `vmxnet_open':
    3. /tmp/vmware-config5/vmxnet-only/vmxnet.c:813: warning: passing arg 2 of `request_irq' from incompatible pointer type
    4. /tmp/vmware-config5/vmxnet-only/vmxnet.c: In function `vmxnet_tx':
    5. /tmp/vmware-config5/vmxnet-only/vmxnet.c:945: error: `CHECKSUM_HW' undeclared (first use in this function)
    6. /tmp/vmware-config5/vmxnet-only/vmxnet.c:945: error: (Each undeclared identifier is reported only once
    7. /tmp/vmware-config5/vmxnet-only/vmxnet.c:945: error: for each function it appears in.)
    8. make[2]: *** [/tmp/vmware-config5/vmxnet-only/vmxnet.o] Error 1
    9. make[1]: *** [_module_/tmp/vmware-config5/vmxnet-only] Error 2
    10. make[1]: Leaving directory `/usr/src/kernel-source-2.6.19.2-1tr'
    11. make: *** [vmxnet.ko] Error 2
    12. make: Leaving directory `/tmp/vmware-config5/vmxnet-only'
    13. Unable to build the vmxnet module.

查找了一下资料,用以下步骤可以在trustix 3.0.5的默认kernel上正确安装vmware-tools
Continue reading »

九月 22

第一次知道vmmartix,是在CU上面上面看到有人在说国内有个很快的开源软件Mirror站点,上去逛了逛,发现这个Mirror站点上居然有trustix的镜像,而且速度真的很不错、也挺及时,于是就把手头上的trustix机器的swup源换成了这个站点,于是就记住了vmmartix这个名字了。那时候大概还是今年年初的时候吧?

事隔一段时间,在查找vmware的某些资料的时候发现这个站点上居然还有vmware-any-any-update的镜像,感觉很是惊奇,于是又仔细的看了看这个Mirror站点,结果发现除了常见的那些开源镜像之外,上头还有pure-ftpd和Xen的镜像---真是很难得碰到这么合乎我口味的东西了,于是我对开设这个站点的人开始感到好奇了。
Continue reading »