5    Booting a RIS Client

You must register a RIS client on the RIS server before you can use RIS to install the operating system on the RIS client. If you use RIS to install the operating system on a client, the client must boot across the network by issuing a BOOTP request. This chapter includes the following topics:

5.1    Remote Boot Files and Daemons

Several files and daemons are associated with booting a RIS client over the network. This section includes the following topics:

Refer to the following reference pages for more information:

bootptab(4)
inetd.conf(4)
inet(7)
inetd(8)
joind(8)

Table 5-1 describes the files and daemons used by RIS servers to boot a remote client.

Table 5-1:  Remote Boot Files and Daemons

Name Description
/etc/bootptab Contains information needed to boot remote clients
/etc/inetd.conf Contains start-up information for various internet daemons
/sbin/init.d/dhcp Script used to start joind
/usr/sbin/inetd The Internet server daemon
/usr/sbin/joind The BOOTP server daemon (handles both BOOTP and DHCP requests, if configured)
/usr/sbin/tftpd The tftpd server daemon

5.1.1    The Internet Daemon and Configuration File

The inetd internet daemon starts networking-related daemons on the system. Some of these daemons, such as tftpd, are related to RIS; others, such as fingerd, are not. On request, the inetd daemon starts any of the daemons listed in its configuration file, /etc/inetd.conf.

Network boots use the BOOTP protocol and are serviced by the joind daemon, discussed in Section 5.1.2.

5.1.2    The BOOTP Daemon

The internet boot protocol (BOOTP) daemon joind processes any BOOTP requests received by the RIS server. As it starts, the BOOTP daemon reads the /etc/bootptab file to determine the systems from which it will recognize remote boot requests. Whenever the /etc/bootptab file is modified, the BOOTP daemon rereads it.

The joind daemon provides configuration to network clients using either BOOTP or the Dynamic Host Configuration Protocol (DHCP). If joind is not running, RIS restarts it with the /sbin/init.d/dhcp script.

Section 5.1.3 describes the content and format of the /etc/bootptab file. Refer to the bootptab(4) and dhcptags(4) reference pages for more information.

5.1.3    The /etc/bootptab File

The /etc/bootptab file is a text file containing information that a server needs to boot a remote client. The ris utility adds and removes entries from this file during client management. Other applications may place entries in the /etc/bootptab file.

Example 5-1 describes the entries in an /etc/bootptab file for RIS clients.

Example 5-1:  Sample /etc/bootptab File

.ris.dec:hn:vm=rfc1048 [1]
.ris0.alpha:tc=.ris.dec:bf=/var/adm/ris/ris0.alpha/vmunix: [2]
atlanta:tc=.ris0.alpha:ht=ethernet:gw=nn.nn.nnn.nnn: \
  ha=nnnnnnnnnnnn:ip=nn.nn.nnn.nnn : [3]
.ris93.alpha:tc=.ris.dec:bf=/ris/ris93.a/vmunix: \
  rp="ds9:/ris/ris93.a/product_001": [4]

  1. The .ris.dec entry defines characteristics common to all clients. The fields specify the following:

    [Return to example]

  2. The .risN.arch entry, in this example .ris0.alpha, defines characteristics common to all clients using this RIS area. The fields specify the following:

    [Return to example]

  3. The hostname entry, in this example atlanta, defines characteristics for a specific client. The fields specify the following:

    [Return to example]

  4. The .ris93.alpha entry defines characteristics for the current version of the operating system RIS area. The fields specify the following:

    [Return to example]

The general format for entries in the bootptab file is a label followed by one or more colon-separated fields. Each of these fields consists of a two-character tag field tg followed by an equal sign (=) and the tag value value:

[label]:tg[=value][:tg[=value]:...]

For additional information about the contents of the bootptab file, refer to the bootptab(4) reference page. For information about valid tg tags, refer to the dhcptags(4) reference page.

5.1.4    The tftpd Daemon

The tftpd daemon uses the Trivial File Transfer Protocol (TFTP) to transfer the boot file during a remote boot process. The tftpd daemon starts when a file is ready to be transferred. Refer to the tftp(1) and tftpd(8) reference pages for more information.

5.2    Remote Boot Process Flow

Client systems use the bootp protocol to perform the remote boot operation from a RIS server. The command used to initiate a remote boot is processor-specific. For additional information, refer to the Installation Guide -- Advanced Topics. However, once the remote boot operation has started, the underlying process is the same for all versions of the operating system that support network booting:

  1. The processor-specific remote boot command is issued at the client console prompt.

  2. The client processor firmware sends a BOOTP packet over the Ethernet contining the client's hardware Ethernet address.

  3. The BOOTP server daemon compares the Ethernet hardware address in the packet with the client registration information stored in its /etc/bootptab file to determine if the client requesting the remote boot is registered to the RIS server.

  4. If a matching address is found in the /etc/bootptab file, the BOOTP daemon sends the client an information packet that includes the server's Internet address, the client's Internet address, and the name of the file to be loaded from the server. This information was placed in the bootptab file by the ris utility when the client was registered on the RIS server.

    Internet addresses are used to download the /var/adm/risN.alpha/vmunix file specified in the bootptab file to the client processor, where risN.alpha corresponds to the RIS area to which the client is registered. This file contains the standalone operating system used to start the installation.

  5. The client system requests the file from the server system.

  6. The client and server system use the TFTP protocol to transfer the vmunix file to the client.

  7. Once vmunix is loaded, the client system begins to execute the vmunix file, and the operating system standalone system messages are displayed on the client console terminal.

After the operating system is installed, the client is a self-supporting system. Follow the procedures documented in the Installation Guide to boot the system from its own local disk.