Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/distrib/notes/common There's a lot of overlap between platfo...
details: https://anonhg.NetBSD.org/src/rev/3bed98480e4d
branches: trunk
changeset: 526412:3bed98480e4d
user: mbw <mbw%NetBSD.org@localhost>
date: Fri May 03 05:17:30 2002 +0000
description:
There's a lot of overlap between platforms for configuring netboot
servers. Store those procedures here. This first version includes the
netboot stuff from hp300, macppc, next68k, and sparc.
diffstat:
distrib/notes/common/netboot | 682 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 682 insertions(+), 0 deletions(-)
diffs (truncated from 686 to 300 lines):
diff -r b271d29f3553 -r 3bed98480e4d distrib/notes/common/netboot
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distrib/notes/common/netboot Fri May 03 05:17:30 2002 +0000
@@ -0,0 +1,682 @@
+.\" $NetBSD: netboot,v 1.1 2002/05/03 05:17:30 mbw Exp $
+.\"
+.\" Copyright (c) 1999-2001 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgement:
+.\" This product includes software developed by the NetBSD
+.\" Foundation, Inc. and its contributors.
+.\" 4. Neither the name of The NetBSD Foundation nor the names of its
+.\" contributors may be used to endorse or promote products derived
+.\" from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.
+.(enum
+Introduction
+.Pp
+To netboot a \*M, you must configure one or more servers to provide
+information and files to your \*M (the
+.Sq client ).
+If you are using
+.Nx
+(any architecture) on your netboot server(s), the information
+provided here should be sufficient to configure everything. Additionally,
+you may wish to look at the
+.Xr diskless 8
+manual page and the manual pages for each daemon you'll be configuring.
+If the server(s) are another operating system, you should consult the
+NetBSD Diskless HOW-TO, which will walk you through the steps necessary to
+configure the netboot services on a variety of platforms.
+.Lk http://www.netbsd.org/Documentation/network/netboot/
+.if !\n[next68k] \{\
+.Pp
+You may either netboot the installer so you can install onto a locally
+attached disk, or you may run your system entirely over the network.
+.\}
+.Pp
+Briefly, the netboot
+process involves discovery, bootstrap, kernel and filesystem stages.
+In the first stage, the client discovers information
+about where to find the bootstrap program.
+Next, it downloads and executes the bootstrap program.
+The bootstrap program goes through another disovery phase to determine
+where the kernel is located.
+The bootstrap program tries to mount the NFS share containing the kernel.
+Once the kernel is loaded, it starts executing.
+.ie !\n[next68k] \{\
+For RAM disk kernels, it mounts the RAM disk filesystem and begins
+executing the installer from the RAM disk. For normal
+(non-RAM disk) kernels, the
+.\}
+.el The
+kernel tries to mount the NFS share that had the kernel and starts
+executing
+.if !\n[next68k] the installation tools or
+.Xr init 8 .
+.ie \n[hp300] \{\
+All supported \*M systems use HP's proprietary RMP (the
+.Xr rbootd 8
+daemon) for the first discovery stage and bootstrap download stages. The
+bootstrap program uses DHCP for its discovery stage.
+.\}
+.el .ie \n[macppc]:\n[next68k] \{\
+All \*M systems use BOOTP for the discovery stage.
+.\}
+.el .ie \n[sparc] \{\
+All \*M systems use a combination of RARP and BOOTPARAMS for the discovery
+stage.
+.\}
+.if !\n[hp300] \{\
+TFTP is used in the bootstrap phase to download the bootstrap program,
+.ie \n[macppc] \{\
+.Pa ofwboot.xcf .
+.\}
+.el .ie \n[next68k] \{\
+.Pa boot .
+.\}
+.el .ie \n[sparc] \{\
+.Pa boot.net ,
+which has been linked to a file name appropriate to the client's
+architecture and IP address as described in the TFTP section below.
+.\}
+.\} \" ! !\n[hp300]
+NFS is used in both the kernel and filesystem stages to download the
+kernel, and to access files on the file server.
+.Pp
+We will use
+.Sq Li "CC:CC:CC:CC:CC:CC"
+as the MAC address (ethernet hardware address) of your netboot client
+machine. You should have determined this address in an earlier stage. In
+this example, we will use
+.Sq Li 192.168.1.10
+as the IP address of your client and
+.Sq Li client.test.net
+as its name. We will assume you're providing all of your netboot services
+on one machine called
+.Sq Li server.test.net
+with the client's files exported from the directory
+.Pa /export/client/root .
+You should, of course, replace all of these with the names, addresses,
+and paths appropriate to your environment.
+.Pp
+You should set up each netboot stage in order (i.e. discovery,
+bootstrap, kernel, and then filesystem) so that you can test them as you
+proceed.
+.Pp
+.It
+.if \n[hp300] \{\
+.Xr rbootd 8
+.Pp
+Get
+.Pa SYS_UBOOT
+from the
+.Pa installation/misc
+directory of the distribution.
+.Pp
+.(disp
+.No # Ic "mkdir -p /usr/mdec/rbootd"
+.No # Ic "cp SYS_UBOOT /usr/mdec/rbootd"
+.No # Ic "chmod -R a+rX /usr/mdec/rbootd"
+.disp)
+.Pp
+Create
+.Pa /etc/rbootd.conf
+with the following line:
+.(disp
+CC:CC:CC:CC:CC:CC SYS_UBOOT
+.disp)
+.Pp
+You will need to start the
+.Ic rbootd .
+If it's already running, you will need to
+restart it to force it to re-read its configuration file.
+If the server is running
+.Nx 1.5
+or later, you can achieve this with:
+.Pp
+.(disp
+.No # Ic "/etc/rc.d/rbootd restart"
+.disp)
+.Pp
+.It
+.\} \" ! \n[hp300]
+.if \n[hp300]:\n[macppc]:\n[next68k] \{\
+.ie !\n[hp300] \{\
+.Xr dhcpd 8
+in
+.Xr bootpd 8
+compatible mode
+.Pp
+.\}
+.el \{\
+.Xr dhcpd 8
+.Pp
+The bootstrap program uses DHCP to discover the location of the kernel.
+.\}
+Put the following lines in your
+.Pa /etc/dhcpd.conf
+(see
+.Xr dhcpd.conf 5
+and
+.Xr dhcp-options 5
+for more information):
+.(disp
+ddns-update-style none;
+ # Do not use any dynamic DNS features
+ #
+allow bootp; # Allow bootp requests, thus the dhcp server
+ # will act as a bootp server.
+ #
+authoritative; # This is the authoritative DHCP server for this subnet
+ #
+subnet 192.168.1.0 netmask 255.255.255.0 {
+ # Which network interface the server will
+ # listen on. The zeros indicate which
+ # range of addresses are allowed to connect.
+}
+group {
+ # Set of parameters common to all clients
+ # in this "group".
+ #
+ option broadcast-address 192.168.1.255;
+ option domain-name "test.net";
+ option domain-name-servers dns.test.net;
+ option routers router.test.net;
+ option subnet-mask 255.255.255.0;
+ #
+ # An individual client.
+ #
+ host client.test.net {
+ hardware ethernet CC:CC:CC:CC:CC:CC;
+ fixed-address 192.168.1.10;
+ #
+ # Name of the host (if the fixed address
+ # doesn't resolve to a simple name).
+ #
+ option host-name "client";
+.if !\n[hp300] \{\
+ #
+ # Name of the bootloader or kernel
+ # to download via tftp.
+ #
+.ie \n[macppc] \{\
+ filename "ofwboot.xcf";
+.\}
+.el .ie \n[next68k] \{\
+ filename "boot";
+.\}
+.\}
+ #
+ # The path on the NFS server.
+ #
+ option root-path "/export/client/root";
+.if \n[next68k] \{\
+ #
+ #next68k machines require non-RFC1048 BOOTP
+ #
+ always-reply-rfc1048 false;
+.\}
+ }
+ #you may paste another "host" entry here for additional clients on this network
+}
+.disp)
+.Pp
+You will need to make sure that the
+.Pa dhcpd.leases
+file exists.
+.Pp
+.(disp
+.No # Ic "touch /var/db/dhcpd.leases"
+.disp)
+.Pp
+You will need to start the
+.Ic dhcpd .
+If it's already running, you will need to
+restart it to force it to re-read its configuration file.
+If the server is running
+.Nx 1.5
+or later, you can achieve this with:
+.Pp
+.(disp
+.No # Ic "/etc/rc.d/dhcpd restart"
+.disp)
+.Pp
+.\} \" ! \n[hp300]:\n[macppc]:\n[next68k]
+.if \n[sparc] \{\
+.Xr rarpd 8
+and
+.Xr rpc.bootparamd 8
+.Pp
+Create an
+.Pa /etc/ethers
+file with the following line:
+.Pp
+.(disp
+CC:CC:CC:CC:CC:CC client
+.disp)
+.Pp
+Add your client to the server's
+.Pa /etc/hosts
+file:
+.Pp
+.(disp
+192.168.1.10 client
+.disp)
+.Pp
+You will need to start the
+.Ic rarpd .
+If it's already running, you will need to
+restart it to force it to re-read its configuration file.
+If the server is running
+.Nx 1.5
+or later, you can achieve this with:
+.Pp
+.(disp
+.No # Ic "/etc/rc.d/rarpd restart"
Home |
Main Index |
Thread Index |
Old Index