Index: faq/faq4.html
===================================================================
RCS file: /cvs/www/faq/faq4.html,v
retrieving revision 1.265
diff -u -p -r1.265 faq4.html
--- faq/faq4.html 1 Jul 2008 11:01:40 -0000 1.265
+++ faq/faq4.html 30 Sep 2008 01:40:04 -0000
@@ -2541,6 +2541,11 @@ command will do what you need, allowing
sector-for-sector. This would provide the same functionality as
commercial programs without the cost.
+
PXE boot automated installation
+For architectures which support PXE booting (currently amd64 and i386)
+there is support for
+scripted installation
+
4.15 - How can I get a dmesg(8) to report an install problem?
When reporting a problem, it is critical to
Index: faq/faq6.html
===================================================================
RCS file: /cvs/www/faq/faq6.html,v
retrieving revision 1.269
diff -u -p -r1.269 faq6.html
--- faq/faq6.html 8 Jun 2008 20:36:10 -0000 1.269
+++ faq/faq6.html 30 Sep 2008 01:40:06 -0000
@@ -1504,8 +1504,6 @@ that will permit PXE booting, as well.
Many ROMs on older NICs support network booting but do NOT support PXE;
OpenBSD/i386 or amd64 cannot currently be booted across the network by these.
-
-
How does PXE booting work?
First, it is wise to understand how OpenBSD
@@ -1594,6 +1592,18 @@ a customized kernel.
Note that /etc/boot.conf is only needed if the kernel you wish to
boot from is not named bsd, or other pxeboot defaults are not
as you need them (for example, you wish to use a serial console).
+
+
+In order to support finer grained control over boot parameters in a heterogenous
+environment pxeboot will check the following paths for boot parameters before
+/etc/boot.conf (only the first file found used):
+
+/etc/boot.conf.x0x1x2x3x4x5
, where x0x1x2x3x4x5 is the PXE
+interface mac address with colons removed.
+/etc/boot.conf.OpenBSD-mm.n-arch
, where mm.n is the
+OS version and arch is the machine architecture.
+
+
You can test your tftpd(8) server using a
tftp(1) client, making sure you can fetch the needed files.
@@ -1649,6 +1659,36 @@ The bsd.rd in
Yes, although with the tools currently in OpenBSD, PXE booting is
primarily intended for installing the OS.
+
+Can I do an automated install using PXE?
+When the cd version of bsd.rd is booted via PXE
+the script /install.netboot is invoked before any user interaction.
+install.netboot performs the following steps:
+
+- Create a dhclient.conf including a request for option-225.
+
- Invoke dhclient on the PXE boot interface.
+
- Extract the value of option-225 from the DHCP lease file as url.
+
- Attempt to retrieve a script using ftp, trying in order
+url.x0x1x2x3x4x5 where x0x1x2x3x4x5 is the boot
+interface mac address with colons removed,
+url.OpenBSD-mm.n-arch where mm.n is
+the operating system version and arch is the architecture
+(both as returned by uname), and finally url as the full path.
+
- If it finds a script it saves it to /bootscript, makes it
+executable, and runs it. Only the first script found is executed.
+
+
+If no script is found due to no option-225 value in the lease
+file or no valid url then install.pxe attempts to clean up by
+deleting the DHCP lease file, deleting the dhclient.conf file,
+running ifconfig down on the boot interface, and finally running
+ifconfig delete on the boot interface.
+
+The custom install script should perform an installation
+and then reboot, otherwise install.netboot will do the cleanup and
+then return control to the default installation script which
+will then sit at the install/upgrade/shell prompt waiting
+for user input.
6.11 - The Common Address Redundancy Protocol (CARP)