[CentOS] Network Installation of CentOS disk image via PXE

Ross S. W. Walker rwalker at medallion.com
Sat Feb 9 18:48:04 UTC 2008


Joseph L. Casale wrote:
> 
> >If you have a Win2k3 server license you could setup a Xen guest to
> >act as a RIS server too which would allow you to host Windows and
> >Linux distributions.
> 
> Ross,
> I would love to know how you did this, I assume it wasn't 
> trivial to install Linux guests with RIS?
> Thanks,
> jlc

Start with a working RIS setup, enable support for legacy RIS images.

Then:

Create a directory structure as such, from the base RIS volume:

 RemoteInstall
      |
      +- Setup
           |
           +- English
                 |
                 +- Images
                       |
                       +- CentOS5
                             |
                             +- amd64
                             |    |
                             |    +- templates
                             |           |
                             |           +- pxelinux.cfg
                             |
                             +- i386
                                  |
                                  +- templates
                                         |
                                         +- pxelinux.cfg

Under the templates directory for each version copy:

initrd.img (the pxeboot version)
vmlinuz (the pxeboot version)

as well as a copy of the pxelinux.0 binary from the most recent
syslinux/pxeboot available.

Optionally I throw in the 'splash.lss' from the distro media, and
create or copy a 'pxeboot.msg' file to give it a little flare.

Next create a pxelinux.sif file in each templates directory. This
file will be picked up by RIS and will set up the menu for this
distro/processor.

Here's the contents of mine:

[OSChooser]
Description ="CentOS 5"
Help ="This option runs the CentOS 5 install for the [i386|x86_64] processor family."
LaunchFile = "%INSTALLPATH%\%MACHINETYPE%\templates\pxelinux.0"
ImageType =Flat
Version="1.01"

Then in the pxelinux.cfg directory create the 'default' syslinux file
per the particular distro's needs (ram file size etc).

Here is the contents of my CentOS5 default:

default server
prompt 1
timeout 100
display pxeboot.msg

label server
	kernel vmlinuz
	append initrd=initrd.img ramdisk_size=8192 root=/dev/ram0 ip=dhcp lang=us expert ksdevice=eth0 ks=http://10.1.1.60/CentOS/5/server.cfg method=http://10.1.1.60/CentOS/5/os/i386 noipv6 quiet
label desktop
	kernel vmlinuz
	append initrd=initrd.img ramdisk_size=8192 root=/dev/ram0 ip=dhcp lang=us ksdevice=eth0 ks=http://10.1.1.60/CentOS/5/desktop.cfg method=http://10.1.1.60/CentOS/5/os/i386 noipv6 quiet

I basically have the distros located on a web server. I wget
replicate the distro creating a directory for each version (5.0,5.1 etc)
and an alias '5' that points to the current supported version.

I'd be happy to share my kickstart files, but will do so off-list as they are lengthy
and it just adds unnecessary volume to the list.

-Ross

______________________________________________________________________
This e-mail, and any attachments thereto, is intended only for use by
the addressee(s) named herein and may contain legally privileged
and/or confidential information. If you are not the intended recipient
of this e-mail, you are hereby notified that any dissemination,
distribution or copying of this e-mail, and any attachments thereto,
is strictly prohibited. If you have received this e-mail in error,
please immediately notify the sender and permanently delete the
original and any copy or printout thereof.




More information about the CentOS mailing list