K12Linux.org
[ K12LTSP.org | Downloads | Installation
| Configuring Server | Configuring
Clients
| FAQ's & More ]
K12LTSP WIKI
Documentation
Server Package Configuration:
[ Boot Process | NFS mount for
/home | Printers ]
Your new K12LTSP server has packages from the Linux Terminal Server
Project (www. ltsp.org ) and
packages
from the Fedora Core 4 Linux
distribution.
That means that in addition to using it as a terminal server you can
run hundreds of packages for Red Hat and Fedora Linux.
We'll provide pointers to configuring some of these other packages but
this page will focus on configuring the LTSP packages that are required
for booting diskless workstations. See Fedora
documentation for other packages.
Understanding the diskless boot process:
(More
detailed description from www.ltsp.org
docs... )
There are several ways diskless workstations can connect to your
server. You can have bootp enabled boot roms on your ethernet card,
bootp rom code that loads from a floppy or you can use the PXE boot
protocol from a PXE enabled motherboard or floppy. In all of these the
process is the same:
- The
client boots and requests an IP number from the server.
- The
server looks first in the /etc/dhcpd.conf file to see if there is a
static address that matches the mac address of the client. If
there is no match then an IP number is issued from within the ip range specified in the dhcpd.conf file.
Note that the dynamic range starts at 192.168.0.100. This means that
numbers under 100 are good choices for other servers, printers and
workstations with static addresses.
shared-network
WORKSTATIONS {
subnet 192.168.0.0 netmask 255.255.255.0 {
range dynamic-bootp
192.168.0.100 192.168.0.253;
use-host-decl-names on;
option
log-servers 192.168.0.254;
# trick from Peter Rundle
<peter.rundle@au.interpath.net>
if substring (option vendor-class-identifier,
0, 9) = "PXEClient"
{
filename "/lts/pxe/pxelinux.bin";
# NOTE: kernels
are specified in /tftpboot/lts/pxe/pxelinux.cfg/
}
else
{
filename
"/lts/vmlinuz-2.4.9-ltsp";
}
}
}
|
- The first
step in trouble shooting is to make sure your client
is getting an IP number. You can watch this process by tailing the
messages file on the server while the client boots:
tail
-f /var/log/messages
Once the client has an ip number it will then continue booting and ask
for its operating system from the server. There are two protocols for
doing this, bootp and PXE. The dhcpd.conf file is configured to answer
both kinds of requests.
- The
server gives out boot kernels through a program called tftpboot. All
kernels are in the tftpboot dir. PXE booting is configured in a file
called
/tftpboot/lts/pxe/pxelinux.cfg/default
. The actual PXE
kernels are in /tftpboot/lts/pxe/
/tftpboot/lts/pxe/vmlinuz-2.4.9-13-k12ltsp
<<
Default kernel...
/tftpboot/lts/pxe/vmlinuz-2.4.9-1-kitchen-sink << kernel with many options
compiled in... Use this one if
you're having trouble with the default kernel.
We'll cover how to make boot
floppies again when we discuss configuring clients. We do supply many
floppy boot images in
/tftpboot/lts/boot/bootroms. These boot images are handy for
testing. Just put a formatted floppy disk in your computer and type cat
/tftpboot/lts/boot/bootroms/eepro100.lzdsk > /dev/fd0 to create a boot floppy for any
of the cards listed. We used the Intel eepro100 card in the example
above.
- You can
list specific clients in the dhcpd.conf file. This helps
when some need a special kernel or workstation specific settings are
required for different video drivers, mice or sound settings. Clients
not specifically listed in
dhcpd.conf
will
boot with default settings as supplied in the lts.conf
. Examples are included in the default dhpcd.conf
file. Note that the IP numbers here are below 192.168.0.100.
host ws002 { hardware ethernet 00:D0:09:30:6A:1C; fixed-address 192.168.0.2; filename "/lts/vmlinuz-2.4.9-ltsp"; }
|
After adding an entry for the workstation in dhpcd.conf you can add options in the lts.conf
file found in /opt/ltsp/i386/etc/.
This is an important file as it also contains the default settings for
all your workstations. We've included a sample in the box below.
#
# Config file for the Linux Terminal Server Project (www.ltsp.org)
#
[Default]
SERVER
= 192.168.0.254
XSERVER
= auto
X_MOUSE_PROTOCOL
= "PS/2"
#
X_MOUSE_PROTOCOL = "IMPS/2" << for wheel mice
X_MOUSE_DEVICE = "/dev/psaux"
X_MOUSE_RESOLUTION =
400
X_MOUSE_BUTTONS = 3
X_USBMOUSE_PROTOCOL=
"PS/2"
X_USBMOUSE_DEVICE =
"/dev/input/mice"
X_USBMOUSE_RESOLUTION = 400
X_USBMOUSE_BUTTONS =
3
USE_XFS
= N
LOCAL_APPS = N
RUNLEVEL = 5
# enable sound by default, set the default volume to 75 SOUND = Y VOLUME = 75
# ISA sound cards require you to manually load the proper module: # for example: #SMODULE_01 = sb io=0x220 irq=5 dma=1
#------------------------------------------------------------------------------
#
# Example of specifying X settings for a workstation
#[ws001]
#
XSERVER
= auto
#
LOCAL_APPS = N
#
USE_NFS_SWAP = Y
#
SWAPFILE_SIZE = 48m
#
RUNLEVEL = 5
|
- If you're
having trouble at this point a good resource is the LTSP documentation.
They have a step by step description of the boot process and
troubleshooting tips that are much more detailed than what we've
provided here. If your client is getting its IP number and kernel image
you should be up and running.
NFS Mount for /home: (more
NFS info from the
Red Hat Customization Guide )
We have
several LTSP servers in one building. All of them share the same /home
directory via NFS. We have one server that acts as the home folder file
server for the school. We sync the passwd, group and shadow files to
each LTSP server from this server. This means that any user can sit
down
at any terminal regardless of the host LTSP server and still have
access
to his/her settings and files. Setting up NFS is very easy to do.
- Configure
the /home folder server by adding a line to
/etc/exports:
/home 192.168.0.0/255.255.255.0 (rw)
- Make sure
that /home is an empty directory on the LTSP server. We'll use it as
the mount point for the NFS mount by adding one line to
/etc/fstab:
server:/home/ /home
nfs
defaults,rsize=8192,wsize=8192 0 0
In
this example we are mounting from a computer called "server."
Make sure the NFS host and IP number are listed in your /etc/hosts file
and adjust as needed for your network.
- We don't
add users often so simply copying passwd, group and shadow files from
the home server to /etc on the LTSP servers works well for us to keep
user logins synched. I'm sure there are better ways of doing it.
Share
yours with me and we'll put your howto's on this page! ;-)
Printing:
There are two ways to add
printers. Adding printers to the LTSP server makes them available to
all the clients as well. This is the easiest way to do it. Just run the
printtool utility and add printers as you
would for any other Linux box. You will need to run the spadmin
utility as root to configure printers
for OpenOfice. This utility is copied to /root/OpenOffice when root
runs OpenOffice for the first time. See the
Red Hat Customization Guide for more
printtool info.
NOTE: If you are having problems printing from
OpenOffice, make sure you've set the paper size to letter.
You can also
add printers to workstations. See the LTSP documentation for
examples on this.
|