1 | |
---|
2 | PXE-menu tools README file |
---|
3 | -------------------------- |
---|
4 | |
---|
5 | Author: Ole Holm Nielsen |
---|
6 | Dept. of Physics, Technical University of Denmark |
---|
7 | E-mail: Ole.H.Nielsen@fysik.dtu.dk |
---|
8 | |
---|
9 | Version: 1.1 |
---|
10 | Date: 01-Oct-2007 |
---|
11 | |
---|
12 | Summary |
---|
13 | ------- |
---|
14 | |
---|
15 | The PXE-menu tools are used to control the booting of networked computers |
---|
16 | directly from the computer's console at the BIOS level before any operating |
---|
17 | system has been loaded. This is extremely useful for diagnostic purposes, |
---|
18 | or for selecting an operating system installation method, of an individual |
---|
19 | computer. If you need to do the same operation on many computers, it is |
---|
20 | better to use the pxeconfig tools (https://subtrac.sara.nl/oss/pxeconfig) |
---|
21 | to control the booting from your network's DHCP/TFTP server. |
---|
22 | |
---|
23 | Additional information |
---|
24 | ---------------------- |
---|
25 | |
---|
26 | We provide further details on our Linux cluster's homepage: |
---|
27 | https://wiki.fysik.dtu.dk/niflheim/PXE-booting |
---|
28 | |
---|
29 | Prerequisite software |
---|
30 | --------------------- |
---|
31 | |
---|
32 | We use some of the SYSLINUX tools for providing the PXE menus in this package, see |
---|
33 | http://syslinux.zytor.com/pxe.php and http://syslinux.zytor.com/menu.php. |
---|
34 | For your convenience the binary files are included with this package, but you can |
---|
35 | also build them yourself by following the instructions in the |
---|
36 | https://wiki.fysik.dtu.dk/niflheim/PXE-booting web-page. |
---|
37 | |
---|
38 | We include the SYSLINUX documentation files in the syslinux-doc/ directory, |
---|
39 | since this documentation is not available on the SYSLINUX web-pages. |
---|
40 | Start by reading the README file and syslinux.doc if you want to |
---|
41 | understand the configuration file syntax. |
---|
42 | |
---|
43 | What's included |
---|
44 | --------------- |
---|
45 | |
---|
46 | The pxemenu/ directory tree should be copied to your DHCP/TFTP server's |
---|
47 | /tftpboot directory (or wherever your TFTP server has its root directory). |
---|
48 | Please see the file INSTALL-pxemenu for detailed installation instructions. |
---|
49 | |
---|
50 | When your computer has been configured to do a PXE boot, it will automatically |
---|
51 | download the file pxelinux.0 by TFTP and execute it, and pxelinux.0 will |
---|
52 | download configuration files from the pxelinux.cfg/ subdirectory. |
---|
53 | In the pxelinux.cfg/* configuration files are references to files that |
---|
54 | should be downloaded by TFTP, and these files are all relative to the |
---|
55 | top-level TFTP directory. |
---|
56 | |
---|
57 | Here we assume that the file named "default" in pxelinux.cfg/ is a soft-link to |
---|
58 | the default.menu file so that the PXE menus will be loaded. You could also let |
---|
59 | default.menu be one of the options which you configure by using pxeconfig. |
---|
60 | |
---|
61 | The most important files included in the pxemenu/ directory are: |
---|
62 | |
---|
63 | pxelinux.0 memdisk com32/menu.c32 com32/chain.c32: Binary files from the |
---|
64 | SYSLINUX project which are needed for the usual booting methods. |
---|
65 | com32/*.c32: All SYSLINUX 3.52 COM32 files, see the SYSLINUX comboot.doc. |
---|
66 | pxelinux.cfg/default.menu: The main PXE menu configuration file which |
---|
67 | loads all the other PXE menus listed below. |
---|
68 | The default.menu has a timeout of 5 seconds configured so that you |
---|
69 | may use the arrow buttons to select options; otherwise the default |
---|
70 | boot from harddisk will be selected. This is most likely what you want |
---|
71 | to do on a Linux cluster for unattended operation, but for other uses |
---|
72 | the timeout can be commented out so that the menus will wait forever. |
---|
73 | syslinux-doc: Documentation files from the SYSLINUX source. |
---|
74 | You may want to read the files README.menu, and for further details |
---|
75 | also syslinux.doc and pxelinux.doc. |
---|
76 | |
---|
77 | Example PXE menu files |
---|
78 | ---------------------- |
---|
79 | |
---|
80 | In the pxemenu/ directory are a number of examples that you may find useful |
---|
81 | for customizing your own PXE menu configurations. They are: |
---|
82 | |
---|
83 | x3455/: Example of PXE menus for an IBM X-series x3455 server. |
---|
84 | mysystem/: Example of PXE menus for a generic server. |
---|
85 | Copy this example and modify it for your particular server. |
---|
86 | IMPORTANT: Always keep all images related to one type of hardware |
---|
87 | in the same subdirectory so that you don't mix up different hardwares ! |
---|
88 | ghost/: Example of some Norton Ghost 2003 DOS boot diskette images. |
---|
89 | Tools/: Example of some diagnostics tools, including Memtest86. |
---|
90 | The vendor disk diagnostics tools you must download yourself |
---|
91 | (usually copyrighted), see links in tools.conf. |
---|
92 | centos.conf: Start a CentOS Linux installation. |
---|
93 | |
---|
94 | SystemImager installation with PXE menus |
---|
95 | ---------------------------------------- |
---|
96 | |
---|
97 | SystemImager installation can be started as shown in the x3455/x3455.conf |
---|
98 | example file. Each type of hardware is supported in SystemImager by a |
---|
99 | specially generated UYOK (Use Your Own Kernel) vmlinux kernel and |
---|
100 | initrd.img RAM-disk, see http://wiki.systemimager.org/index.php/UYOK. |
---|
101 | |
---|
102 | Therefore you must copy kernel and initrd.img from |
---|
103 | /var/lib/systemimager/images/<IMAGENAME>/etc/systemimager/boot/ |
---|
104 | to the subdirectory for your hardware (/tftpboot/x3455/ in the present example). |
---|
105 | |
---|
106 | |
---|
107 | What you must supply yourself |
---|
108 | ----------------------------- |
---|
109 | |
---|
110 | The simple PXE menu tools included in this package are just simple but useful |
---|
111 | examples that have proven useful in our Linux cluster and desktop environment. |
---|
112 | You should provide boot images for the tools that you want to run, such as |
---|
113 | vendor firmware upgrade diskettes or Linux installation kernels, for example. |
---|
114 | |
---|
115 | If you want to add a physical DOS boot diskette of your own to the PXE menus, |
---|
116 | you can create an image of the physical diskette by: |
---|
117 | |
---|
118 | dd if=/dev/fd0 of=myimage.img |
---|
119 | |
---|
120 | (assuming that the diskette drive on your Linux PC is /dev/fd0). |
---|
121 | |
---|
122 | Ultimate Boot CD tools |
---|
123 | ---------------------- |
---|
124 | |
---|
125 | If you want a huge selection of boot disks, you may want to look at the |
---|
126 | Ultimate Boot CD (UBC) project, see http://www.ultimatebootcd.com/ for |
---|
127 | information about this project. |
---|
128 | |
---|
129 | All of the UBC tools can be made available within the PXE menus, see |
---|
130 | https://wiki.fysik.dtu.dk/niflheim/PXE-booting#boot-images-from-ultimatebootcd-com |
---|
131 | Basically, just copy the contents of the UBC CD to /tftpboot and use the menu entry |
---|
132 | in pxeconfig.cfg/default.menu to use the UBC tools from the PXE menus. It's |
---|
133 | that simple ! |
---|
134 | |
---|
135 | What doesn't work |
---|
136 | ----------------- |
---|
137 | |
---|
138 | Many people have asked on the SYSLINUX mailing list how to boot ISO CD |
---|
139 | images using SYSLINUX or PXELINUX. The short FAQ answer from the SYSLINUX |
---|
140 | author H. Peter Anvin is that it's impossible because of the ways CD-ROM drives |
---|
141 | are implemented in BIOSes. See for example |
---|
142 | http://syslinux.zytor.com/archives/2006-December/007818.html |
---|
143 | |
---|
144 | Special hardware issues |
---|
145 | ----------------------- |
---|
146 | |
---|
147 | Broadcom network adapters: It is known that certain Broadcom Ethernet |
---|
148 | adapters are buggy. If your system hangs while you move up and down the |
---|
149 | PXE menus, then you've probably been hit by this. Please upgrade the |
---|
150 | firmware on the Broadcom adapter to the latest release. |
---|
151 | |
---|
152 | In the case of IBM X-series servers, you MUST upgrade the Broadcom firmware |
---|
153 | to at least release 2.0.0. |
---|