2011年8月

终于VMware ESXi5发布正式版下载了,下载好以后发现目录结构有了很大变化,像以往一样,研究一下PXE网络安装。

找到一篇参考文章http://www.vcritical.com/2011/07/vmware-esxi-5-interactive-pxe-installation-improvements/

从描述上看,新版本的PXE设置非常简单,具体操作方法如下:

首先解压VMware-VMvisor-Installer-5.0.0-469512.x86_64.iso到TFTP服务器的某个文件夹(如/esxi5)

修改配置文件/esxi5/boot.cfg,把modules=后面的/都去掉,增加一个prefix=/esxi5/,如下所示

 bootstate=0
 title=Loading ESXi installer
 prefix=/esxi5/
 kernel=tboot.b00
 kernelopt=runweasel
 modules=b.b00 --- useropts.gz --- k.b00 --- a.b00 --- ata-pata.v00 --- ata-pata.v01 --- ata-pata.v02 --- ata-pata.v03 --- ata-pata.v04 --- ata-pata.v05 --- ata-pata.v06 --- ata-pata.v07 --- block-cc.v00 --- ehci-ehc.v00 --- s.v00 --- weaselin.i00 --- ima-qla4.v00 --- ipmi-ipm.v00 --- ipmi-ipm.v01 --- ipmi-ipm.v02 --- misc-cni.v00 --- misc-dri.v00 --- net-be2n.v00 --- net-bnx2.v00 --- net-bnx2.v01 --- net-cnic.v00 --- net-e100.v00 --- net-e100.v01 --- net-enic.v00 --- net-forc.v00 --- net-igb.v00 --- net-ixgb.v00 --- net-nx-n.v00 --- net-r816.v00 --- net-r816.v01 --- net-s2io.v00 --- net-sky2.v00 --- net-tg3.v00 --- ohci-usb.v00 --- sata-ahc.v00 --- sata-ata.v00 --- sata-sat.v00 --- sata-sat.v01 --- sata-sat.v02 --- sata-sat.v03 --- scsi-aac.v00 --- scsi-adp.v00 --- scsi-aic.v00 --- scsi-bnx.v00 --- scsi-fni.v00 --- scsi-hps.v00 --- scsi-ips.v00 --- scsi-lpf.v00 --- scsi-meg.v00 --- scsi-meg.v01 --- scsi-meg.v02 --- scsi-mpt.v00 --- scsi-mpt.v01 --- scsi-mpt.v02 --- scsi-qla.v00 --- scsi-qla.v01 --- uhci-usb.v00 --- tools.t00 --- imgdb.tgz --- imgpayld.tgz
 build=
 updated=0

最后修改pxe的配置文件增加以下内容即可

 LABEL ESXi5
 MENU LABEL ^V---- Install VMware ESXi 5
 KERNEL /esxi5/mboot.c32
 APPEND -c /esxi5/boot.cfg

至此TFTP方式安装ESXi5就完成了,不过我由于早就更换成了gpxe方式,gpxe可以通过http/ftp方式载入镜像(本示例中http://192.168.1.10/tftp目录就是tftp的目录),在跨网段环境下速度飞快,其实gpxe方式也比较简单,只是配置文件不同而已,首先需要更改/esxi5/boot.cfg

 bootstate=0
 title=Loading ESXi installer
 prefix=http://192.168.1.10/tftp/esxi5/
 kernel=tboot.b00
 kernelopt=runweasel
 modules=b.b00 --- useropts.gz --- k.b00 --- a.b00 --- ata-pata.v00 --- ata-pata.v01 --- ata-pata.v02 --- ata-pata.v03 --- ata-pata.v04 --- ata-pata.v05 --- ata-pata.v06 --- ata-pata.v07 --- block-cc.v00 --- ehci-ehc.v00 --- s.v00 --- weaselin.i00 --- ima-qla4.v00 --- ipmi-ipm.v00 --- ipmi-ipm.v01 --- ipmi-ipm.v02 --- misc-cni.v00 --- misc-dri.v00 --- net-be2n.v00 --- net-bnx2.v00 --- net-bnx2.v01 --- net-cnic.v00 --- net-e100.v00 --- net-e100.v01 --- net-enic.v00 --- net-forc.v00 --- net-igb.v00 --- net-ixgb.v00 --- net-nx-n.v00 --- net-r816.v00 --- net-r816.v01 --- net-s2io.v00 --- net-sky2.v00 --- net-tg3.v00 --- ohci-usb.v00 --- sata-ahc.v00 --- sata-ata.v00 --- sata-sat.v00 --- sata-sat.v01 --- sata-sat.v02 --- sata-sat.v03 --- scsi-aac.v00 --- scsi-adp.v00 --- scsi-aic.v00 --- scsi-bnx.v00 --- scsi-fni.v00 --- scsi-hps.v00 --- scsi-ips.v00 --- scsi-lpf.v00 --- scsi-meg.v00 --- scsi-meg.v01 --- scsi-meg.v02 --- scsi-mpt.v00 --- scsi-mpt.v01 --- scsi-mpt.v02 --- scsi-qla.v00 --- scsi-qla.v01 --- uhci-usb.v00 --- tools.t00 --- imgdb.tgz --- imgpayld.tgz
build=
updated=0

再修改pxe的配置文件即可

 LABEL ESXi5
 MENU LABEL ^V---- Install VMware ESXi 5
 KERNEL http://192.168.1.10/tftp/esxi5/mboot.c32
 APPEND -c http://192.168.1.10/tftp/esxi5/boot.cfg

ESXi5开始已经无需配置就可以在安装过程中提示覆盖安装、全新安装和升级安装了。

用了很久的syslinux了,虽然已经实现了PXE网络启动DOS、PE1.0、PE2.0、PE3.0、网络安装各种Linux(Redhat、CentOS、Debian等),但老版本的syslinux是基于TFTP来传输所有的启动文件的,这个在跨网段的情况下,传输速度会比较慢,一直想解决。
听说gPXE有一段时间了,它支持通过HTTP和FTP方式传输引导文件,一直没时间研究,最近研究了下,加上朋友的参考,基本上把功能实现了。
原理非常简单,新版本的syslinux已经支持gPXE了,直接更改DHCP配置文件,指向到gpxelinux.0就可以了,我是直接把gpxelinux.0改名成pxelinux.0,原始配置文件基本不变。
旧版本引导dos镜像的方法

 LABEL dostools
 #MENU PASSWD 1
 MENU LABEL ^A- DOS Disk Tools
 kernel gpxe/memdisk c=938 h=2 s=32 floppy
 append initrd=grub/dos.img

gPXE引导方式支持HTTP和FTP协议

 LABEL dostools
 #MENU PASSWD 1
 MENU LABEL ^A- DOS Tools FTP
 kernel ftp://192.168.1.1/gpxe/memdisk c=938 h=2 s=32 floppy
 append initrd=ftp://192.168.1.1/gpxe/dos.img

旧版本引导PE的方法分为PE1.x和PE2.0/PE3.0
引导多个PE1.x需要修改startrom.0、ntldr和winnt.sif,引导PE2.0/PE3.0则需要bootmgr.exe等等,在此不详细说了,有兴趣的可以上无忧上搜索
旧配置文件

 LABEL PE1.x
 #MENU PASSWD 1
 MENU LABEL ^B- PE XP
 kernel startrom.0
 LABEL PE3.0
 #MENU PASSWD 1
 MENU LABEL ^C- PE Win7
 kernel Boot/pxeboot.0

gPXE引导方式

 LABEL PE XP FTP
 #MENU PASSWD 1
 MENU LABEL ^D- PE XP FTP
 linux ftp://192.168.1.1/gpxe/memdisk
 append raw iso
 initrd ftp://192.168.1.1/win/RAMXP.iso

Linux网络安装和引导dos的img基本类似,另外,关于引导PE,旧版本的方式速度太慢,而gPXE已经可以直接通过HTTP/FTP方式实现了,免去很多繁琐的制作过程了,只要找个自己喜欢的PE的ISO就好啦。

Win7的PE是个好东西,默认识别的设备就比XP的PE多很多,而且Win7PE的驱动比XP的PE增加起来要容易的多。
着手做的时候查了很多资料,网上很多说用PEIMG打驱动的,实际上这个是Vista时代的工具,Win7已经升级到了DISM了。
命令行下使用如下命令(参考http://technet.microsoft.com/en-us/library/dd744355(WS.10).aspx
首先需要安装Windows AIK,下载地址自己google吧,还需要一张Win7的安装光盘。
注:如果你使用的是XP/2003的系统,在安装完Windows AIK以后需要把C:Program FilesWindows AIKToolsx86和C:Program FilesWindows AIKToolsx86Servicing下的exe和dll都拷贝到C:WINDOWSsystem32下面,否则运行下面的指令会出错
查看映像信息

Dism /Get-WimInfo /WimFile:C:\test\images\install.wim

挂载Wim文件,方法1:以名称方式

Dism /Mount-Wim /WimFile:C:\test\images\install.wim /Name:"Windows 7 HomeBasic" /MountDir:C:\test\offline

挂载Wim文件,方法2:以序号方式

Dism /Mount-Wim /WimFile:C:\test\images\install.wim /index:1 /MountDir:C:\test\offline

因为我自己做的Wim文件没注释名称,所以只能以方法2挂载
挂载完毕就可以修改你的wim文件内容了,当然我们这里主要工作是打驱动
集成驱动,方法1:指定驱动的inf文件

Dism /Image:C:\test\offline /Add-Driver /Driver:C:\drivers\mydriver.INF

集成驱动,方法2:指定驱动的文件夹

Dism /Image:C:\test\offline /Add-Driver /Driver:c:\drivers /Recurse

集成驱动,方法3:忽略驱动程序签名

Dism /Image:C:\test\offline /Add-Driver /Driver:C:\drivers\mydriver.INF /ForceUnsigned

基本上第三种方法最常用,毕竟集成自己的驱动不一定都有驱动程序签名,而且最保险,如果有多个驱动,重复使用这个命令集成驱动。
打完驱动后就需要重新生成Wim文件了,输入如下指令

Dism /Unmount-Wim /MountDir:C:\test\offline /Commit

大功告成,如果你不熟悉命令行,可以去bbs.wuyou.com上下载定制好的Win7Builder,然后就可以通过图形界面增加自己的驱动了,不过程序界面增加驱动数量有限制,需要自己修改脚本来实现增加更多的驱动。

一直不怎么愿意用Win7,所以没怎么研究Win7的帐户密码破解,今天刚好有台电脑administrator密码忘了,需要强制更改,放狗搜了一下,除了一些PE里带的自动化破解工具,还找到一个人肉破解的方法:

首先需要通过Win7的PE启动计算机,我这里做了网络启动的Win7的PE,所以插上网线就可以用,呵呵

到C:Windowssystem32下找到narrator.exe,改名为narrator1.exe,并且把cmd.exe改名成narrator.exe,把新的narrator.exe文件权限更改为everyone所有权限

重启计算机,登陆界面左下角点击“轻松访问”,再选择“启动讲述人”点击确定,然后就会弹出我们替换的cmd.exe程序,此时输入

net user administrator 123456

就把Administrator的帐户密码更改为123456了,现在就大功告成了,可以用123456这个密码登陆进administrator帐户了,最后别忘了把刚才替换的文件替换回来。

以前在www.ixwebhosting.com买的空间,有赠域名,因为快到期了,所以准备把它转出来,就在上个月,刚刚免费续完费,还有一年费用,于是做转出,用的是万网的代理。

今天打开域名管理平台,域名已经可以正常管理了,不过一看有效期发现不对,我明明办理的是转入并续费一年,怎么有效期还是明年到期呢,于是打电话问万网,万网的业务处理部回复如下:

域名续费不到60天就办理转移会造成交两次费用,但是实际日期只增加一年的情况,这种情况让客户找原注册商联系退之前的费用可是我的域名是买赠的,上家不可能退钱,任凭怎么说,万网一概不理,最好客服人员说如果不满意让我去投诉吧。。。

无奈写下此文引以为戒吧,域名转出一定要在续费60天以后!