Linux Remote Booting a Diskless Computer

Remote booting a diskless computer involves using network services to load an operating system on a computer and running it. What this means is that the remote computer will have no need of a hard drive, floppy, CD-ROM or permanent storage media of any sort. It will only need its network card with a boot PROM on board in order to boot and run a remotely loaded operating system. Since there is no permanent storage media on the remote computer, it will need to store the operating system in its own RAM memory. Generally any programs that the user may want to run are also stored in RAM. However, the server can allow read access to the remote boot computer for accessing additional programs. Furthermore, depending on the boot mode, the user may be able to log onto the server and make changes to files they have permission to access. This will in no way compromise the security of the server and access to the server can be controlled easily by administrators. This is explained in more detail later.

Having diskless computers offers several advantages and disadvantages:

Advantages:

  1. Lower cost of most computers fielded.
  2. Remote computers can be configured from one location.
    1. Future upgrades and changes to the remote computers' configuration are easy to make.
    2. The administrator can choose the operating system the remote computer will boot from the server.
  3. Users can use remote computers without worrying about messing up their configuration.
  4. Outdated computers from 386 based micro's and above can be used.

Disadvantages:

  1. If the server for remote booting fails, the remote computers won't function, but redundancy can solve this.
  2. The administrators must keep track of Remote computer NIC hardware address(MAC) to configure computers.


Hardware Requirements:

  1. 386 based microprocessor or better, 486 recommended.
  2. 8M RAM minimum, 16 or more recommended.
  3. Network Card.

Operating Systems that can currently be run on the remote computer include Linux and DOS. Linux can be run in a terminal mode or X windows mode depending on the configuration set by the server. X windows mode is a graphical user mode similar to Microsoft Windows 95/98/NT/2000/etc.


There are several network services that must be provided by the server computer which are as follows:

  1. BOOTP - Allows the remote computer to get an IP address when it boots. This lets it identify itself and start using the other network services to continue its boot process. The IP address is assigned by the server based on the hardware(MAC) address of its network interface card(NIC).
  2. TFTP - Allows the remote computer to load an image file that contains the operating system
  3. NFS - Network File System, Allows the remote computer to have read access to a shared file system on the server computer in order to support Linux booting.
Linux Remote Booting Contents Page