diff options
Diffstat (limited to 'en/tutorials/disklessx/disklessx.sgml')
-rw-r--r-- | en/tutorials/disklessx/disklessx.sgml | 266 |
1 files changed, 0 insertions, 266 deletions
diff --git a/en/tutorials/disklessx/disklessx.sgml b/en/tutorials/disklessx/disklessx.sgml deleted file mode 100644 index 408ae81e91..0000000000 --- a/en/tutorials/disklessx/disklessx.sgml +++ /dev/null @@ -1,266 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN" [ -<!ENTITY base CDATA "../.."> -<!ENTITY date "$Date: 1996-12-28 23:36:52 $"> -<!ENTITY title "Diskless X Server: a how to guide"> -<!ENTITY copyright " "> -<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes; -]> -<!-- $Id: disklessx.sgml,v 1.3 1996-12-28 23:36:52 mpp Exp $ --> - -<html> -&header; - -<H3>By Jerry Kendall</H3> -<H3>(<a href="mailto:jerry@kcis.com">jerry@kcis.com</a>)</H3> - -<p>With the help of some 'friends' on the FreeBSD-hackers list, I have -been able to create a diskless X terminal... The creation of the X terminal -required first creating a diskless system with minimal utilities mounted -via NFS. These same steps were used to create 2 separate diskless systems. -The first is 'altair.kcis.com'. A diskless X terminal that I run on my -old 386DX-40. It has a 340Meg hard disk but, I did not want to change it. -So, it boots from 'antares.kcis.com' across a Ethernet. The second system -is a 486DX2-66. I setup a diskless FreeBSD (complete) that uses no local -disk. The server in that case is a Sun 670MP running -SunOS 4.1.3. The same setup configuration was needed for both.</p> - -<hr> -NOTE: I am sure that there is stuff that needs to be added to this. Please send me any comments.... -<hr> - -<h2>Creating the boot floppy (On the diskless system)</h2> - -<p>Since the network boot loaders will not work with some of -the TSR's and such that MS-DOS uses, it is best to create -a dedicated boot floppy OR, if you can, create an MS-DOS menu -that will (via the config.sys/autoexec.bat files) ask what -configuration to load when the system starts. The later is the -method that I use and it works great. My MS-DOS (6.x) menu is below.</p> -<pre> - ---- config.sys ---- - [menu] - menuitem=normal, normal - menuitem=unix, unix - [normal] - .... - normal config.sys stuff - ... - [unix] - ---- - - ---- autoexec.bat ---- - @ECHO OFF - goto %config% - - :normal - ... - normal autoexec.bat stuff - ... - goto end - - :unix - cd \netboot - nb8390.com - - :end - ----</pre> - -<h2>Getting the network boot programs (On the server)</h2> - -<p>Compile the 'net-boot' programs that are located in -/usr/src/sys/i386/boot/netboot. You should read the comments -at the top of the makefile. Adjust as required. !!!! make a -backup of the original in case it gets fobar'd !!! When the build -is done, there should be 2 MS-DOS executables, 'nb8390.com' and -'nb3c509.com'. One of these two programs will be what you need -to run on the diskless server. It will load the kernel from the -boot server. At this point, put both programs on the MS-DOS -boot floppy created earlier. - -<h2>Determine which program to run (On the diskless system)</h2> - -<p>If you know the chipset that your Ethernet adapter uses, this is -easy. If you have the NS8390 chipset, or a NS8390 based chipset, -use NB8390.COM. If you have a 3Com 509 based chipset, use the -NB3C509.COM boot program. If you are not sure which you have, -try using one, if it says 'No adapter found', try the other. -Beyond that, you are pretty much on your own. - -<h2>Booting across the network</h2> - -<p>Boot the diskless system with out any config.sys/autoexec.bat -files. try running the boot program for your Ethernet adapter.</p> -<pre> - My Ethernet adapter is running in WD8013 16bit mode so - I run NB8390.COM - - C:> cd \netboot - C:> nb8390 - - Boot from Network (Y/N) ? Y - - BOOTP/TFTP/NFS bootstrap loader ESC for menu - - Searching for adapter.. - WD8013EBT base 0x0300, memory 0x000D8000, addr 00:40:01:43:26:66 - - Searching for server..</pre> - -<p>At this point, my diskless system is trying to find a machine to act -as a boot server. Make note of the addr line above, you will need this -number later. Reset the diskless system and modify your config.sys and -autoexec.bat files to do these steps automatically for you. Perhaps in -a menu. If you had to run 'nb3c509.com' instead of 'nb8390.com' the -output is the same as above. If you got 'No adapter found' at the -'Searching for adapter..' message, verify that you did indeed set the -compile time defines in the makefile correctly.</p> - -<h2>Allowing systems to boot across the network (On the - server)</h2> - -<p>Make sure the /etc/inetd.conf file has entries for tftp and bootps. -Mine are listed below:</p> -<pre> - ---- /etc/inetd.conf ---- - tftp dgram udp wait nobody /usr/libexec/tftpd tftpd - # - # Additions by who ever you are - bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab - ---- -</pre> -<p>If you have to change the /etc/inetd.conf file, send a HUP signal to -inetd. To do this, get the process ID of inetd with 'ps -ax | grep -inetd | grep -v grep'. Once you have it, send it a HUP signal. Do this -by 'kill -HUP <pid>'. This will force inetd to re-read its config file.</p> - -<p>Did you remember to note the 'addr' line from the output of the boot -loader on the diskless system???? Guess what, here is where you need it.</p> - -<p>Add an entry to /etc/bootptab (maybe creating the file). It should be -laid out identical to this:</p> - -<pre> - altair:\ - :ht=ether:\ - :ha=004001432666:\ - :sm=255.255.255.0:\ - :hn:\ - :ds=199.246.76.1:\ - :ip=199.246.76.2:\ - :gw=199.246.76.1:\ - :vm=rfc1048: - - The lines are as follows: - 'altair' the diskless systems name without the domain name. - 'ht=ether' the hardware type of 'ethernet'. - 'ha=004001432666' the hardware address (the number noted above). - 'sm=255.255.255.0' the subnet mask. - 'hn' tells server to send client's hostname to the client. - 'ds=199.246.76.1' tells the client who the domain server is. - 'ip=199.246.76.2' tells the client what it's IP address is. - 'gw=199.246.76.1' tells the client what the default gateway is. - 'vm=...' just leave it there... -</pre> -<p>NOTE: -****** Be sure to setup the IP addresses correctly, the addresses -above are my own......</p> - -<p>Create the directory '/tftpboot' on the server it will contain the -configuration files for the diskless systems that the server will -serve. These files will be named 'cfg.<ip>' where <ip> is the IP -address of the diskless system. The config file for 'altair' is -/tftpboot/cfg.199.246.76.2. The contents is:</p> - -<pre> - ---- /tftpboot/cfg.199.246.76.2 ---- - rootfs 199.246.76.1:/DiskLess/rootfs/altair - hostname altair.kcis.com - ---- -</pre> -<p>The line 'hostname altair.kcis.com' simply tells the diskless -system what its fully qualified domain name is.</p> - -<p>The line 'rootfs 199.246.76.1:/DiskLess/rootfs/altair' tells the -diskless system where its NFS mountable root filesystem is located.</p> - -<p>NOTE:!!!!! The NFS mounted root filesystem will be mounted READ ONLY.</p> - -<p>The hierarchy for the diskless system can be re-mounted allowing -read-write operations if required.</p> - -<p>I use my spare 386DX-40 as a dedicated X terminal...</p> - -<p>The hierarchy for 'altair' is:</p> - -<pre> - / - /bin - /etc - /tmp - /sbin - /dev - /dev/fd - /usr - /var - /var/run -</pre> - -<p>The actual list of files is:</p> - -<pre> - -r-xr-xr-x 1 root wheel 779984 Dec 11 23:44 ./kernel - -r-xr-xr-x 1 root bin 299008 Dec 12 00:22 ./bin/sh - -rw-r--r-- 1 root wheel 499 Dec 15 15:54 ./etc/rc - -rw-r--r-- 1 root wheel 1411 Dec 11 23:19 ./etc/ttys - -rw-r--r-- 1 root wheel 157 Dec 15 15:42 ./etc/hosts - -rw-r--r-- 1 root bin 1569 Dec 15 15:26 ./etc/XF86Config.altair - -r-x------ 1 bin bin 151552 Jun 10 1995 ./sbin/init - -r-xr-xr-x 1 bin bin 176128 Jun 10 1995 ./sbin/ifconfig - -r-xr-xr-x 1 bin bin 110592 Jun 10 1995 ./sbin/mount_nfs - -r-xr-xr-x 1 bin bin 135168 Jun 10 1995 ./sbin/reboot - -r-xr-xr-x 1 root bin 73728 Dec 13 22:38 ./sbin/mount - -r-xr-xr-x 1 root wheel 1992 Jun 10 1995 ./dev/MAKEDEV.local - -r-xr-xr-x 1 root wheel 24419 Jun 10 1995 ./dev/MAKEDEV -</pre> -<p>Don't forget to 'MAKEDEV all' in the 'dev' directory.</p> - -<p>My /etc/rc for 'altair' is:</p> - -<pre> - #!/bin/sh - # - PATH=/bin:/sbin - export PATH - # - # configure the localhost - /sbin/ifconfig lo0 127.0.0.1 - # - # configure the ethernet card - /sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00 - # - # mount the root filesystem via NFS - /sbin/mount antares:/DiskLess/rootfs/altair / - # - # mount the /usr filesystem via NFS - /sbin/mount antares:/DiskLess/usr /usr - # - /usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&1 - # - # Reboot after X exits - /sbin/reboot - # - # We blew up.... - exit 1 -</pre> - -<hr> -<p>Any comments and ALL questions welcome....</p> - -<address> -Jerry Kendall<br> -<a href="mailto:jerry@kcis.com">jerry@kcis.com</a> -</address> - -&footer; -</body> -</html> |