Creating a PXE Deployment server with Red Hat Enterprise Linux 6

Once you have saved your “default” config file, its time to copy the necessary boot files from your Installation media to your tftp root directory.

In the example of my RHEL 6 install, you can see I store the kernel and initrd files in images/rhel/6/x86_64. This is actually /var/lib/tftpboot/images/rhel/6/x86_64.
You can call the directory what ever you like, as long as the location matches the directory stated in the config file.

I’ve mounted my RHEL 6 installation DVD to /media. Copy the necessary files to the right location.

[root@deployment ~]# cp /media/images/pxeboot/vmlinuz /var/lib/tftpboot/images/rhel/6/x86_64/
[root@deployment ~]# cp /media/images/pxeboot/initrd.img /var/lib/tftpboot/images/rhel/6/x86_64/


Now that we have a working boot configuration, the last thing we need to do is point our DHCP server(s) to our new PXE server.

If you are using a linux based DHCP server, add the below options to your DHCP zone

next-server <ip address of tftp server>;
filename "pxelinux.0";


If you are using Windows DHCP, add the below options to your DHCP Zone

option 66, <ip address of tftp server>
Option 67, pxelinux.0


That’s it. You should now be able to go and boot any network boot capable device over the network. You should be presented with a nice pretty boot menu.


2 comments on “Creating a PXE Deployment server with Red Hat Enterprise Linux 6

  1. George November 10, 2013 07:35

    Thank you very much for the guide! Quite useful and result is impressive! I combined it with a kicksstart and voila: finally an automated deployment environment.

  2. umesh March 20, 2014 20:30

    thanks very much for the guide and result is spot on.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>