九月 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 »
九月 18
调整了range_offset_limit参数之后,会对squid的行为有什么影响呢?
在squid.conf.default里面,range_offset_limit参数下面的注释是这样的:
Sets a upper limit on how far into the the file a Range request may be to cause Squid to prefetch the whole file. If beyond this limit Squid forwards the Range request as it is and the result is NOT cached.
This is to stop a far ahead range request (lets say start at 17MB)from making Squid fetch the whole object up to that point before sending anything to the client.
A value of -1 causes Squid to always fetch the object from the beginning so it may cache the result. (2.0 style)
A value of 0 causes Squid to never fetch more than the client requested. (default)
基本上看懂了是不?不就是控制多线程下载的http请求目标是否会进入squid的cache嘛。上次不是为了用squid缓冲windows update ,折腾了半天,在以为搞明白了range_offset_limit的意义之后,我将手头上的squid服务器的range_offset_limit调整为20480 KB。可是这样的调整,是会带来很大的麻烦的......
Continue reading »
九月 13
如果你想让squid缓冲microsoft update的patch的话,请把以下语句添加到squid的设置文件:
- refresh_pattern -i windowsupdate.com/.*\.(cab|exe) 4320 100% 43200 reload-into-ims
- refresh_pattern -i download.microsoft.com/.*\.(cab|exe) 4320 100% 43200 reload-into-ims
- refresh_pattern -i au.download.windowsupdate.com/.*\.(cab|exe) 4320 100% 43200 reload-into-ims
range_offset_limit 20480 KB
range_offset_limit -1 KB
以下是我的摸索过程:
Continue reading »
九月 12
自打在ESX 2.5上面部署了几台trustix 3.0.5以后,一直被这几台机器的时钟问题所困挠:不仅时间走得偏慢的离谱(经常一天跑下来就会慢几个小时),而且ntpd服务还无法正确的校正时间。
请注意:以下的解决方法仅针对Vmware ESX 2.5.x系列
问题的解决很简单(不需要重启系统---不管是host system还是guest system):
-
以root的身份登录到Vmware Esx的MUI web控制端。
-
点击Option选项页
-
点击上面的"Advanced Settings"链接,打开一个有着一堆的设置参数的web窗口。
-
找到"Misc.TimerHardPeriod"这个参数,把它改成333.然后保存推出
最后,给这些linux guest system的grub配置文件加上kernel的引导参数:
- kernel /vmlinuz-2.6.19.7-3trStandard ro root=/dev/sda2 clocksource=pit nosmp noapic nolapic
如果同学们对这个问题的具体细节有进一步的兴趣的话,请继续
Continue reading »