Differences between version 4 and predecessor to the previous major change of HowToThinclientHOWTO.
Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 4 | Last edited on Tuesday, October 26, 2004 11:05:32 am | by AristotlePagaltzis | Revert |
Older page: | version 3 | Last edited on Thursday, May 1, 2003 11:17:10 am | by JohnMcPherson | Revert |
@@ -1,770 +1 @@
-(see also LinuxInstallationNotes)
-----
-
-Thin Client: New User Guide
-
-
-
-----
-
-!!!Thin Client: New User Guide
-
-!!Stephen Noble stephen7 at bigfoot.com30th November 1999
-
-
-----
-''1.How to turn inexpensive legacy computers into fast terminals using the power
-of your main computer, you will need : A fast computer to act as Server, A
-client computer (old and unwanted). Linux compatible network cards. A
-connection between computers.
-2.How to centralise system administaration by useing NFS, ie placing the
-entire file system of a faster client on the server.''
-----
-
-
-
-
-!!1. Introduction
-
-
-
-
-!!2. Hardware and Documentation
-
-
-****2.1 Hardware
-
-****2.2 Documentation
-
-
-
-
-
-!!3. Server setup
-
-
-****3.1 Check your network services on your server
-
-****3.2 Setting up a dhcpd daemon
-
-****3.3 Tftpd setup
-
-****3.4 Kernel image
-
-****3.5 Security
-
-
-
-
-
-!!4. Client setup
-
-
-
-
-!!5. Network files system
-
-
-****5.1 server specific
-
-****5.2 client specific
-
-
-
-
-
-!!6. X-terminal
-
-
-
-
-!!7. Acknowledgments & further exercises
-----
-
-!! 1. Introduction
-
-
-
-
-
-****Linux allows any reasonably new computer to be used as a server to a
-thin client, or many thin clients, these thin clients can be inexpensive
-legacy computers. For a console terminal you need a 386 with 4-8mb of ram, or
-for an X-Terminal a 486/66 with 8-16mb ram.
-
-****
-
-****One Option is without a hard drive, it keeps the noise down and
-simplifies administration as you only have one system to maintain.
-
-****
-
-****If you have legacy apps, you can have them on a hard drive with it's
-legacy Operating System
-
-****
-
-****This howto is aimed at those new to Unix/Linux, it will cover the
-essential areas you need to be aware of and point you to other documentation
-in that area you need to be familiar with.
-
-****
-
-****You will probably use this as an aid to the
-http://www.slug.org.au/etherboot/ documentation, I include some more
-examples of config files, and leave many of the other features of etherboot as
-an exercise for the reader
-
-****
-
-****If your client is sufficiently powerful only the file system need be
-shared, applications can run on the client system. (say a 233 32mb ram).
-Install an application on the server and all clients have access
-
-****
-
-
-
-
-
-
-
-----
-
-!! 2. Hardware and Documentation
-
-
-
-
-!!2.1 Hardware
-
-
-
-When you start, you will need at least this
-
-
-
-
-
-
-
-
-****a computer to act as Server,
-****
-
-****a client computer, I unplugged the power to the hard disk
-and disabled the drive in the bios to emulate a diskless machine
-****
-
-****compatible network cards
-****
-
-****connection between computers, I used twisted pair ethernet with RJ45
-terminators
-
-
-*****For two computers a ''cross-over cable '' is sufficient, and
-saves another power point, the first computer shop I went to gave me blank
-stares, idiots !
-*****
-
-*****For two or more clients, you need a hub, a kit with a 10 mb
-4 port hub ,2 cards sells for under A$150, you can probably do better,
-I've had some success with $5 second hand cards, 3m cables for $6, a new
-hub for $40, a found monitor and a $60 pentium 75
-*****
-
-
-****
-
-
-
-
-
-!!2.2 Documentation
-
-
-
-You may like to familiarise yourself with the linux documentation,
-specifically you can read (skim) for an overview the following :
-
-
-
-
-
-****/usr/doc/HOWTO/mini/Diskless - a similar howto tackling this problem
-****
-
-****Networking Overview HOWTO - Networking capabilities of the Linux
-****
-
-****Ethernet HOWTO - Information on Ethernet hardware compatibility
-****
-
-****NET-3 HOWTO - How to configure TCP/IP networking under Linux.
-****
-
-
-
-
-
-
-Also you probably have in the /usr/doc/LDP/ directory
-
-
-****The System Administrators' Guide
-****
-
-****The Network Administrators' Guide
-****
-
-****Linux Installation and Getting Started
-****
-
-
-
-
-
-
-The obligitory link
-
-
-****
-http://www.magma.ca/~bklimas help for new linux users.
-****
-
-
-
-
-
-
-One last thing
-
-
-**** my network server is snoball , my client is elite and my (local)domain
-is gundog.net Replace with your computers names where applicable
-****
-
-
-
-
-----
-
-!! 3. Server setup
-
-
-The server needs to be setup in readiness for the client in a number of ways
-
-
-
-
-!!3.1 Check your network services on your server
-
-
-
-run the command /sbin/ifconfig if your output is similar to below
-then your loopback and ethernet card are correctly configured.
-
-
-
-----
-
-
[[cassie@snoball cassie
]$ /sbin/ifconfig
-lo Link encap:Local Loopback
-inet addr:127...1 Bcast:127.255.255.255 Mask:255...
-UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
-RX packets:854 errors:0 dropped:0 overruns:0 frame:
-TX packets:854 errors:0 dropped:0 overruns:0 carrier:
-collisions:
-eth0 Link encap:Ethernet HWaddr 00:AA:00:BB:BD:09
-inet addr:192.168.53.1 Bcast:192.168.53.255 Mask:255.255.255.
-UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
-RX packets:190369 errors:0 dropped:0 overruns:0 frame:
-TX packets:249267 errors:0 dropped:0 overruns:0 carrier:1
-collisions:4793 Interrupt:5 Base address:0x320
-
-----
-
-
-
-
-
-If not ...
-
-
-**** loopback, if this isn't
here you need to activate it at start up,
-
-****
-
-**** ethernet card, is it being detected,is the driver a module
-
-****
-
-**** you can set these in linuxconf or netcfg
-
-****
-
-
-
-
-
-!!3.2 Setting up a dhcpd daemon
-
-
-
-Here the server gives out IP numbers to requests by clients
-
-
-
-
-
-****is DHCPD installed, maybe (as root) just run ntsysv and have it start at
-boot time
-
-****
-
-****this /etc/dhcpd.conf file assigns static IP numbers if you have
-a matching MAC address, A MAC address is a unique 'number' given to the NIC.
-The start of the 'number' is based on the manufacturer, if you don't have a
-sticker on the card, attempt to load the rom image from eprom or floppy and
-see what it reports. (see client setup)
-----
-
-#/etc/dhcpd.conf
-subnet 192.168.35.0 netmask 255.255.255.0 {
-option domain-name "gundog.net";
-range dynamic-bootp 192.168.35.128 192.168.35.255;
-default-lease-time 21600;
-max-lease-time 43200;
-}
-host 286 {
-filename "/tftpboot/kermit.nb";
-hardware ethernet 00:80:c8:22:ae:de;
-fixed-address 192.168.35.70;
-}
-host elite {
-filename "/tftpboot/vmlinuz.xterm";
-hardware ethernet 00:00:79:80:34:c9;
-fixed-address 192.168.35.23;
-option host-name "elite";
-
-----
-
-****
-
-****the /etc/hosts file resolves IP numbers into host names
-----
-
-#etc/hosts
-127...1 localhost localhost.localdomain
-192.168.53.1 snoball snoball.gundog.net
-192.168.53.23 elite elite.gundog.net
-
-----
-
-****
-
-
-
-
-
-
-
-
-!!3.3 Tftpd setup
-
-
-
-trivial ftp - after you have your IP number your client requests a kernal,
-this is delivered over ethernet.
-
-
-****Install tftpd, make sure it's active in /etc/inetd.conf,
-typical line
-----
-
-tftp dgram udp wait root /usr/sbin/tcpd in.tftpd -s /tftpboot
-
-----
-
-****
-
-
-
-restart inetd, kill -HUP "process id of inetd"
-
-
-
-
-!!3.4 Kernel image
-
-
-
-You must compile a kernel for the Client that includes NFS support and the NIC
-driver for that client compiled in (not modules). Answer yes to
-''Root file system on NFS?'' and ''BOOTP support?''
-
-
-After building the kernel, run mknbi-linux from the Etherboot distribution
-on it.(the mknbi program in the netboot/linux directory) Install this tagged
-image as /tftpdir/"vmlinuz.xterm".
-
-
-see etherboot-4.2/doc/html/README-3.html
-
-
-should i put a copy of mine somewhere for download RH6.0 ne2000 NIC
-
-
-
-
-!!3.5 Security
-
-
-
-It's easiest to allow anybody and anything to run services
-and process on your computer, but one day you will be sorry. You restrict
-these by your /etc/hosts.deny and specifically restore rights by
-/etc/hosts.allow, indicative examples :
-----
-
-#hosts.deny
-# all except those in hosts.allow
-ALL:ALL
-#hosts.allow
-#only hosts within my domain and my host at home.
-ALL:LOCAL, 192.168.53. #<-- note:no space after :
-
-----
-
-
-more security - look for more information in the ldp-howto's and if your
-using etherboot, in it's security howto.
-
-
-
-----
-
-!! 4. Client setup
-
-
-''Network loader''
-
-
-A small program that runs as a BIOS extension, can be loaded from a floppy,
-or you can burn an eprom chip and insert it on your network card for a totally
-diskless client. It handles the DHCPD query and TFTP loading and then
-transfers control to the loaded image. It uses TCP/IP protocols.
-
-
-
-
-
-There are two free implementations of TCP/IP net loaders:
-Etherboot and
-Netboot: Etherboot
-uses built-in drivers while Netboot uses Packet drivers.
-
-
-
-
-
-****see etherboot-4.2/doc/html/README-2.html,
-****
-
-****I compiled the option to ask local or Network and default to local after
-5 seconds
-****
-
-****making a boot rom floppy, floppyload.bin was tricky to find, I copied it
-into the directory of compiled rom images
-----
-
-cat floppyload.bin ne2000.lzrom > /dev/fd0
-
-----
-
-****
-
-----
-
-!! 5. Network files system
-
-
-
-
-
-The Client requests to mount /tftpboot/''<IP address of
-client>'' as its / by NFS from server. You must export this from
-the server,(maybe symlink to /tftpboot/''client'' to be safe.)
-
-
-''NFS'' is a big topic there is a HOWTO and two mini Howto's.
-
-
-first you need to create a copy of your current system under /tftpboot
-ken has written two scripts that do all your work, I called them makefirst and
-makecopy. my first client takes 20-30mb and the copy less. I used du -h to look
-for large unnecesary files.
-
-
-see etherboot-4.2/doc/html/diskless-5.html
-
-
-the following seem to me to be the critical files here
-
-
-
-
-!!5.1 server specific
-
-
-
-
-----
-
-#/etc/exports
-/tftpboot/elite elite(rw,no_root_squash)
-/tftpboot/elite gordon(rw,no_root_squash)
-/usr *.gundog.net(ro)
-/home *.gundog.net(rw)
-/mnt/cdrom (ro)
-run exportfs -a to reread the exports file after
-changes /usr/sbin/exportfs --help
-#/etc/sysconfig/network
-NETWORKING=yes
-FORWARD_IPV4="no"
-HOSTNAME="snoball" <-----------
-GATEWAYDEV=""
-GATEWAY=""
-#/etc/sysconfig/network-scripts/ifcfg-eth0
-IPADDR="192.168.53.1" <-----------
-BOOTPROTO=none
-
-----
-
-
-
-
-!!5.2 client specific
-
-
-
-
-----
-
-#tftpboot/elite/etc/fstab
-snoball:/tftpboot/elite / nfs rw 1 1
-none /proc proc defaults 0
-snoball:/usr /usr nfs ro 1 1
-snoball:/home /home nfs rw 1 1
-#tftpboot/elite/etc/sysconfig/network
-NETWORKING=yes
-FORWARD_IPV4=nomore
-HOSTNAME=elite
-GATEWAYDEV=
-GATEWAY="192.168.53.1" <-----------
-#/tftpboot/elite/etc/sysconfig/network-scripts/ifcfg-eth0
-DEVICE=eth0
-USERCTL=yes
-ONBOOT=yes
-BOOTPROTO=none
-BROADCAST=192.168.53.255
-NETWORK=192.168.53.
-NETMASK=255.255.255.
-IPADDR=192.168.53.23 <-----------
-
-----
-
-
-#odd fiddles
-#itemize>
-#item>fast...
-#item>cp /usr/bin/xargs /tftpboot/client/bin/xargs
-#/itemize>
-
-
-
-----
-
-!! 6. X-terminal
-
-
-
-
-
-With no further changes your client should boot on the CLIENT pc,
-it just happens to be sharing it's files via NFS
-
-
-At this point you have a console terminal. you need to make just a few more
-changes to run X
-
-
-
-
-
-
-
-
-****Configuring X
-
-
-As root on client run Xconfigurator and mouseconfig,
-
-
-If this fails use XF86Setup check your RPMS dir on your CD (eg.ls *Setup*)
-
-
-
-
-****
-
-****X Font Server
-----
-
-#chech how xfs starts on server /etc/rc.d/init.d/xfs
-start)
-echo -n "Starting X Font Server: "
-rm -fr /tmp/.font-unix
-daemon --check xfs su xfs -c xfs -s /bin/sh
-touch /var/lock/subsys/xfs
-echo
-;;
-#edit XF86Config for all machines
-!FontPath "tcp/snoball:7100"
-
-----
-
-****
-
-****Console login
-
-
-You are now set up for a console login to the client PC. You are using the
-client memory and processor, this is adequate for console programs and there
-and many or great merit, program in python, email with pine or browse with
-lynx.
-
-
-
-
-
-You may still start X from here, make the server changes in the next
-section, at the prompt type X -query snoball and you will get the
-login box to the server
-
-
-
-
-****
-
-****Graphical login
-
-
-''Server set up''
-
-
-
-----
-
-1. Make sure the client is matched by a clause in /etc/X11/xdm/Xaccess
-* CHOOSER BROADCAST #any indirect host can get a chooser
-2. Comment out the :0 in /etc/X11/xdm/Xservers
-#:0 local /usr/X11R6/bin/X
-3. Then make sure that xdm is run from the init scripts.
-#etc/inittab
-id:5:initdefault:
-and
-# Run xdm in runlevel 5
-# xdm is now a separate service
-x:5:respawn:/etc/X11/prefdm -nodaemon
-xdm:5:respawn:/usr/X11R6/bin/xdm -nodaemon
-
-----
-
-
-
-
-
-''On the client''
-
-
-Get the slow PC's to run on the server, Fast PC's (eg 166mhz 32mb ram)can run
-ok on their own CPU and memory
-
-
-
-
-
-the part maarked WARNING dosn't actually work as yet, but I'm close
-to getting the syntax correct, use the two stage method via the console login
-in the mean time.
-
-
-
-----
-
-#/tftpboot/elite/etc/inittab
-id:5:initdefault: #WARNING
-x:5:respawn:/usr/X11R6/bin/Xwrapper -query snoball #WARNING
-OR to run on client ??
-id:3:initdefault: #runlevel 3 ie console
-x:5:respawn:/etc/X11/prefdm -nodaemon
-
-----
-
-
-
-
-****
-
-
-
-
-----
-
-!! 7. Acknowledgments & further exercises
-
-
-
-
-
-''Markus Gutschke and Ken Yap''
-the authors of the Etherboot program.
-
-
-
-
-
-
-
-
-Extend your system with the following programs
-
-
-****squid - cache your web browsing for others on your network
-****
-
-****junkbuster - banish web banner adds
-****
-
-****mailman - mailinglist ;setup via e-mail or web
-****
-
-****imp - web based email (with a java enabled browser)
-****
-
-****python - for some Java and C is just too hard
-****
-
-****sgmltools - knock out multiple versions of your docs
-****
-
-****suggestions ?
-****
-
-
-
-stephen7 at bigfoot
.com
-----
+Describe
[HowToThinclientHOWTO
] here.