A P P E N D I X  A

Preconfiguring Your Network to Support PXE Installation

This appendix contains procedures for preconfiguring your network prior to performing a PXE installation.

Follow the procedures in the section appropriate for your operating system.


Preconfiguring Your Network to Support Red Hat Linux Installation

The procedures provided in this appendix describe how to preconfigure your Linux network to support PXE installation of Red Hat Linux software. Some of the following procedures might not be necessary if you confirm that the server packages are already in place and configured.



Note - For 32-bit users: The compressed files and extracted directories described in the Red Hat Linux procedures in this appendix are given for a 64-bit installation. If you are performing a 32-bit installation, the files and directories are slightly different.

For 64-bit, the compressed file image is: rhel3_64-pxefiles.tar.gz
and the extracted directory is: rhel3_64-pxefiles/
For 32-bit, the compressed file image is: rhel3_32-pxefiles.tar.gz
and the extracted directory is: rhel3_32-pxefiles/

All the other directories and directions are the same for both 64-bit and 32-bit.



Required Items

Preconfiguring your network for PXE installation requires the following items.

This task includes the following procedures:

Copying Files From the Documentation and Support Files CD

This section describes how to copy the PXE support files, which are required for PXE configurations, from the Sun Fire V20z and Sun Fire V40z Servers Documentation and Support Files CD. You can also download the driver RPMs from the product pages for the Sun Fire V20z and Sun Fire V40z servers. The following URL is valid for both servers:

http://www.sun.com/servers/entry/v20z/downloads.html

 

1. Insert the Sun Fire Documentation and Support Files CD into the DHCP/PXE server.

2. Type the following commands to copy the files to the /tmp/ directory.

# mount /dev/cdrom /mnt/cdrom

# cp /mnt/cdrom/support/pxeboot/rhel3_64-pxefiles.tar.gz /tmp/

3. Uncompress and extract the contents of the tar file into the /tmp/ directory by typing the following command:

# tar -zxf /tmp/rhel3_64-pxefiles.tar.gz

When you extract the file, a directory with all required files is created at
/tmp/rhel3_64-pxefiles/

Configuring a DHCP Server

Complete the following steps on the server that will be your DHCP server.

1. Power on the server and log in as superuser.

2. Determine whether the DHCP server package is already installed on the server by typing the following command:

# rpm -qa | grep dhcp-

3. If the DHCP server package is not listed, insert Red Hat Enterprise Linux CD 1 and type the following commands:

# mount /dev/cdrom /mnt/cdrom

# rpm -Uvh /mnt/cdrom/RedHat/RPMS/dhcp-*.rpm

4. Remove CD 1 from the server after you type the following command:

# umount /dev/cdrom

5. Set up your DHCP configuration file (for example, /etc/dhcpd.conf) so that only PXEClient requests receive PXEClient responses.

Add the following entry to the DHCP configuration file. Refer to the dhcp.conf man page for more information.

class "PXE" {match if substring(option vendor-class-identifier, 0, 9) ="PXEClient"; option vendor-class-identifier "PXEClient";} 


Note - If the server does not already have a dhcpd.conf file in the /etc directory, start with the supplied sample DHCP configuration file. Copy, then modify the file:
/tmp/rhel3_64-pxefiles/dhcpd.conf



6. Start the DHCP service by typing the following command:

# service dhcpd start

7. Configure the server to always start DHCP by typing the following command:

# chkconfig dhcpd on

Installing Portmap

Complete the following steps on your DHCP server.

1. Determine whether the portmap server package is already installed on the server by typing the following command:

# rpm -qa | grep portmap

2. If portmap is not listed, insert the Red Hat Enterprise Linux CD 2 and type the following commands to install the package from the CD:

# mount /dev/cdrom /mnt/cdrom

# rpm -Uvh /mnt/cdrom/RedHat/RPMS/portmap-*.rpm

3. Remove CD 2 from the server after you type the following command:

# umount /dev/cdrom

Configuring the TFTP Service

Complete the following steps on your DHCP server.

1. Determine whether the TFTP server package is already installed on the server by typing the following command:

# rpm -qa | grep tftp-server

2. If the TFTP server package is not listed, insert the Red Hat Enterprise Linux CD 1 and type the following commands to install the package from the CD:

# mount /dev/cdrom /mnt/cdrom

# rpm -Uvh /mnt/cdrom/RedHat/RPMS/tftp-server-*.rpm

3. Remove the CD from the server after you type the following command:

# umount /dev/cdrom

4. Edit and save the /etc/xinetd.d/tftp file to make the following changes:

a. Change the -s /tftpboot entry to -s /home/pxeboot.

b. Change the disable attribute to no.

5. Restart the xinetd service by typing the following command:

# service xinetd restart

Installing and Configuring the neopxe Boot Server Daemon

Complete the following steps on your DHCP server.



Note - The neopxe server is designed for use with a DHCP server that is running on the same system.



1. Type the following commands to install the neopxe boot server daemon on your system that is your DHCP server:

# cd /tmp/rhel3_64-pxefiles/neopxe-0.2.0/

# ./configure

# make

# make install

2. Append the path /usr/local/sbin/neopxe to the rc.local file by typing the following command, making sure to use two greater-than signs:

# echo "/usr/local/sbin/neopxe" >> /etc/rc.d/rc.local

3. Copy the PXE Linux image to the /home/pxeboot directory by typing the following commands:

# mkdir /home/pxeboot

# cp /tmp/rhel3_64-pxefiles/pxelinux.0 /home/pxeboot

4. Configure the PXE Linux image by typing the following commands:

# mkdir /home/pxeboot/pxelinux.cfg/

# touch /home/pxeboot/pxelinux.cfg/default

5. Edit the /usr/local/etc/neopxe.conf configuration file, which is read by neopxe at startup.

ip_addr=n.n.n.n
prompt=boot-prompt-string
prompt_timeout=timeout
service=service-number,boot-server,boot-file,label

Where:

For example:

ip_addr=192.168.0.1
prompt=Press [F8] for menu...
prompt_timeout=10
service=1,192.168.0.1,pxelinux.0,Linux
service=2,192.169.0.1,nbp.unknown,Solaris



Note - Refer to the neopxe.conf man page for more information.



6. Start the neopxe daemon by running the following command:

# /usr/local/sbin/neopxe

Configuring the NFS Service

Complete the following steps on your DHCP server.

1. Determine whether the NFS service package is already installed on the server by typing the following command:

# rpm -qa | grep nfs-utils

2. If the NFS server package is not listed, insert the Red Hat Enterprise Linux CD 2 and type the following commands to mount the CD and install the package from the CD:

# mount /dev/cdrom /mnt/cdrom

# rpm -Uvh /mnt/cdrom/RedHat/RPMS/nfs-utils-*.rpm

3. Remove the CD from the server after you type the following command:

# umount /dev/cdrom

4. Edit and save the /etc/exports file to add the following line to it:

/home/pxeboot *(no_root_squash,no_subtree_check,insecure) 

5. Start the NFS service by typing the following command:

# service nfs start

6. Configure the server to always start the NFS service by typing the following command:

# chkconfig nfs on



Note - If you are using a DNS server, make sure that DNS entries exist for the range of addresses defined in the pxe subnet dynamic-bootp entry in the dhcpd.conf file.

If you are not using a DNS server, edit the /etc/hosts file to add the range of host addresses found in the pxe subnet dynamic-bootp entry in the dhcpd.conf file.



Disabling the Firewall

If you enabled firewall security when you installed Red Hat Enterprise Linux software on the system that will be your PXE server, complete the following steps to disable the firewall so that PXE clients can download from the server.



Note - When you disable the firewall protection on the system that is your PXE server, the security of the data on that server cannot be assured. If this server is networked outside of your local intranet, be sure to re-enable the firewall after downloading software to PXE clients.



1. Stop the ipchains service by typing the following command:

# service ipchains stop

2. Stop the iptables service by typing the following command:

# service iptables stop

3. Stop the ipchains service from starting when you restart the server by typing the following command:

# chkconfig ipchains off

4. Stop the iptables service from starting when you restart the server by typing the following command:

# chkconfig iptables off



Note - You might encounter error messages if the ipchains service is not installed on the server. You can safely ignore these messages.



Installing Red Hat Linux From the Network

1. Reboot the server when you have finished all of the configuration steps.

2. Refer to Installing Red Hat Enterprise Linux 3 Software From a Network for instructions on completing the PXE installation.


Preconfiguring Your Network to Support SUSE Linux Installation

The procedures provided in this appendix describe how to preconfigure your Linux network to support PXE installation of SUSE Linux software. These procedures assume that you already have a bootable server that is running the appropriate SUSE Linux operating system.



Note - Some of the following procedures might not be necessary if you confirm that the server packages are already in place and configured. You may be prompted for a UnitedLinux CD.



This task includes the following procedures:

Required Items

Preconfiguring your network for PXE installation requires the following items.

Copying Files From the Documentation and Support Files CD

This section describes how to copy the PXE support files, which are required for PXE configurations, from the Sun Fire V20z and Sun Fire V40z Servers Documentation and Support Files CD. You can also download the driver RPMs from the product pages for the Sun Fire V20z and Sun Fire V40z servers. The following URL is valid for both servers:

http://www.sun.com/servers/entry/v20z/downloads.html

 

1. Insert the Sun Fire Documentation and Support Files CD into the DHCP/PXE server.

2. Create a temporary directory to copy the PXE support files to:

# mkdir /tmp/

3. Type the following commands to copy the files to the /tmp/ directory.

# mount /media/cdrom

# cp /media/cdrom/support/pxeboot/version-pxefiles.tar.gz /tmp/

Where version is sles8 for SUSE Linux Enterprise Server 8, sles9 for SUSE Linux Enterprise Server 9, and suse9 for SUSE Linux Professional 9.0 software.

4. Uncompress and extract the contents of the tar file into the /tmp/ directory by typing the following command:

# tar -zxf /tmp/ version-pxefiles.tar.gz

When you extract the file, a directory with all required files is created at
/tmp/sles8-pxefiles/ , /tmp/sles9-pxefiles/ or /tmp/suse9-pxefiles/

Configuring a DHCP Server

Complete the following steps on the server that will be your DHCP server.

1. Power on the server and log in as superuser.

2. Determine whether the DHCP server package is already installed on the server by typing the following command:

# rpm -qa | grep dhcp-server

3. If the DHCP server package is not listed, install the package using yast with the following command:

# yast -i dhcp-server

4. Set up your DHCP configuration file (for example, /etc/dhcpd.conf) so that only PXEClient requests receive PXEClient responses.

Add the following entry to the DHCP configuration file. Refer to the dhcp.conf man page for more information.

class "PXE" {match if substring(option vendor-class-identifier, 0, 9) ="PXEClient"; option vendor-class-identifier "PXEClient";}



Note - You can start with a sample DHCP configuration file in the directory
/tmp/sles8-pxefiles , /tmp/sles9-pxefiles or /tmp/suse9-pxefiles.



5. For SUSE Linux Enterprise Server 9 or SUSE Linux Professional 9.0: Edit the /etc/sysconfig/dhcpd file and be sure the DHCPD_INTERFACE is set to the interface that is connected to the network you are planning to run the PXE server.

For example, if you are using Ethernet interface 0, the DHCPD_INTERFACE variable would be set as follows:

DHCPD_INTERFACE="eth0"

6. Start the DHCP service by typing the following command:

# /etc/init.d/dhcpd start

7. Configure the server to always start DHCP by typing the following command:

# chkconfig dhcpd on

Installing Portmap

Complete the following steps on your DHCP server.

1. Determine whether the portmap server package is already installed on the server by typing the following command:

# rpm -qa | grep portmap

2. If portmap is not listed, install the package using yast with the following command:

# yast -i portmap

Configuring the TFTP Service

Complete the following steps on your DHCP server.

1. Determine whether the TFTP server package is already installed on the server by typing the following command:

# rpm -qa | grep tftp

2. If the TFTP server package is not listed, install the package using yast with the following command:

# yast -i tftp

3. Edit the file that corresponds to the appropriate version of SUSE Linux:

4. Restart the inetd server by typing the following command:

# /etc/init.d/inetd restart

# /etc/init.d/xinetd restart

 

Installing and Configuring the neopxe Boot Server Daemon

Complete the following steps on your DHCP server. The neopxe server is designed for use with a DHCP server that is running on the same system.

1. If a compiler is not installed on the server, use yast to install gcc with the following commands:

# yast -i gcc

# yast -i make

2. Type the following commands to install the neopxe boot server daemon on your system that is your DHCP server:

# cd /tmp/version-pxefiles/neopxe-0.2.0

# ./configure

# make

# make install

Where version is sles8 for SUSE Linux Enterprise Server 8, sles9 for SUSE Linux Enterprise Server 9 and suse9 for SUSE Linux Professional 9.0 software.

3. Append the path /usr/local/sbin/neopxe to the rc.local file by typing the following command, making sure to use two greater-than signs:

# echo "/usr/local/sbin/neopxe" >> /etc/rc.d/boot.local

4. Copy the PXE Linux image from the /tmp/ directory by typing the following commands:

# mkdir /home/pxeboot

# cp /tmp/version-pxefiles/pxelinux.0 /home/pxeboot

Where version is sles8 for SUSE Linux Enterprise Server 8, sles9 for SUSE Linux Enterprise Server 9 and suse9 for SUSE Linux Professional 9.0 software.

5. Configure the PXE Linux image by typing the following commands:

# mkdir /home/pxeboot/pxelinux.cfg/

# touch /home/pxeboot/pxelinux.cfg/default

6. Edit the /usr/local/etc/neopxe.conf configuration file, which is read by neopxe at startup.

# mkdir /usr/local/etc

ip_addr=n.n.n.n
prompt=boot-prompt-string
prompt_timeout=timeout
service=service-number,boot-server,boot-file,label

Where:

For example:

ip_addr=192.168.0.1
prompt=Press [F8] for menu...
prompt_timeout=10
service=1,192.168.0.1,pxelinux.0,Linux
service=2,192.169.0.1,nbp.unknown,Solaris



Note - Refer to the neopxe.conf man page for more information.



7. Start the neopxe daemon by running the following command:

# /usr/local/sbin/neopxe

Configuring the NFS Service

Complete the following steps on your DHCP server.

1. Determine whether the NFS service package is already installed on the server by typing the following command:

# rpm -qa | grep nfs-utils

2. If the NFS server package is not listed, install the package using yast by typing the following command:

# yast -i nfs-utils

3. Edit and save the /etc/exports file to add the following line to it:

/home/pxeboot *(sync,no_root_squash,no_subtree_check,insecure)

4. Start the NFS service by typing the following command, as appropriate:

# /etc/init.d/nfsserver start

5. Configure the server to always start the NFS service by typing the following commands:

# chkconfig nfslock on

# chkconfig nfsserver on



Note - If you are using a DNS server, make sure that DNS entries exist for the range of addresses defined in the pxe subnet dynamic-bootp entry in the dhcpd.conf file.

If you are not using a DNS server, edit the /etc/hosts file to add the range of host addresses found in the pxe subnet dynamic-bootp entry in the dhcpd.conf file.



Disabling the Firewall

If a firewall is enabled on your PXE/DHCP server, make sure to disable it before attempting to install the PXE image onto the client system.



Note - When you disable the firewall protection on the system that is your PXE server, the security of the data on that server cannot be assured. If this server is networked outside of your local intranet, be sure to re-enable the firewall after downloading software to PXE clients.



Installing SUSE Linux From the Network

1. Reboot the server when you have finished all of the configuration steps.

2. Refer to the appropriate procedure to complete the installation.