VMware ESXi5 PXE/gPXE 网络安装

作者:tKC 发布时间:August 28, 2011 分类:IT技术,虚拟化,网络启动

终于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的配置文件增加以下内容即可

阅读剩余部分...

使用gPXE做网络启动引导DOS/PE/Linux

作者:tKC 发布时间:August 26, 2011 分类:IT技术,网络启动

用了很久的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

阅读剩余部分...

Linux下让tftp忽略大小写

作者:tKC 发布时间:August 25, 2011 分类:IT技术,Linux,网络启动

由于需要实现pxe启动winpe,而在windows下实现没出什么问题,可是在Linux服务端上就有问题了,原因是启动所需的文件大小写不一致,导致linux服务端无法提供正确的文件而无法启动pe,下面我们来进行以下操作,让Linux下的tftp忽略大小写:

首先,创建规则文件,来让所有tftp的文件请求中的所有字符都变成小写创建如下文件

#cat /tftpboot/rules
ri ^[a-z]: # Remove “drive letters”
rg \\ / # Convert backslashes to slashes
rg \# @ # Convert hash marks to @ signs
rg /../ /..no../ # Convert /../ to /..no../
rg A a
rg B b
rg C c
rg D d
rg E e
rg F f
rg G g
rg H h
rg I i
rg J j
rg K k
rg L l
rg M m
rg N n
rg O o
rg P p
rg Q q
rg R r
rg S s
rg T t
rg U u
rg V v
rg W w
rg X x
rg Y y
rg Z z
r ^/(.*) \1

阅读剩余部分...

openwrt上配置pxe网络启动服务

作者:tKC 发布时间:December 26, 2010 分类:IT技术,网络启动,软路由

新买了个带USB接口的无线路由器(中兴H118B),终于可以尝试把PXE网络启动服务全装在路由器上了,以前只是路由器上配置dhcp指向局域网的一台TFTP,现在可以完全跑在路由器上了。
方法很简单,刷机成openwrt,这个就不说了,太简单了,我刷的是http://downloads.openwrt.org/backfire/10.03/brcm-2.4/openwrt-brcm-2.4-squashfs.trx
如果只需要传统的pxe,也就是dhcp+tftp的话,openwrt全都自带,ssh登录进路由器,输入以下指令即可
uci set dhcp.@dnsmasq[0].enable_tftp=1
uci set dhcp.@dnsmasq[0].tftp_root=/mnt/usb/tftp
uci set dhcp.@dnsmasq[0].dhcp_boot=/mnt/usb/tftp/gpxelinux.0
uci commit dhcp


注:/mnt/usb/目录是我U盘的位置
由于我用gpxe,所以还加入了ftp的配置,这样可以网络启动通过ftp来传输引导文件
#opkg install pure-ftpd
#vi /etc/config/pure-ftpd #按下面进行修改
config pure-ftpd
option port "21"
option noanonymous "0"
option chrooteveryone "0"
option maxclientsperip "5"
option maxclientsnumber "4"
option peruserlimits "3:4"
option umask "133:022"
option authentication "unix"
option enabled "1"
#vi /etc/passwd #增加下面一行创建ftp匿名访问的账户
ftp:x:500:500:Linux User,,,:/mnt/usb/tftp:/bin/false


注:这里配置的ftp为开发匿名访问,如果不需要匿名把option的noanonymous改成1就可以了

更多uci命令请参考http://wiki.openwrt.org/zh-cn/doc/uci