Submitted by Crouse on Sat, 02/07/2004 - 05:52. Articles | Distributions

Setting up K12LTSP 4.0 (Fedora based - Linux Terminal Server Project)


This short article is a synopsis of my experience recently of installing K12LTSP 4.0 and using it. It is in no way a substitute for digging deeper and I don't claim it to be complete by any means. I've only skimmed over some of the basics and what I thought might be useful for someone installing K12LTSP for the first time. While the intended audience is schools, it works great for a home network where you would like to be able to log in from several different terminals and access your own files/desktop/etc. A quick overview of what K12LTSP is and does.

Basically K12LTSP allows you to take older machines and turn them into usable thin clients for a faster server. The applications run on the terminal server (your fastest machine) . Workstations (your older machines) are like thin clients. They don't have software or need hard drives. In other words, take an old, slow, antique machine and give it new life instead of throwing it into the trash bin. I myself have set up a 75 MHz IBM with 48 MB of ram and an older 2 MB video card and a 3com509tpo ethernet card........... and booted K12LTSP on it; and it was fast !

It's really strange to see an old antique perform like a new machine, but that's what it did, I even created some graphics using The GIMP as a gauge on how fast it seemed to run, and it SEEMS to run almost as fast as the server machine. The 75 MHz machine is 9 years old ! I even pulled the hard disk completely out and removed the CD-ROM drive that was in it.

The basic configuration is Internet to Ethernet card#1 of the SERVER then card #2 from the server goes to a hub, router, or switch that in turn feeds the network of client machines (dumb terminals)

A default K12LTSP installation uses two ethernet cards; eth0 and eth1. One card connects the server to the internet (eth1). The other card (eth0) creates a private network for terminals (thin-clients). Your server and eth1 act as a gateway for the terminals to the Internet. eth1 is configured to get its ip address via DHCP. A private DHCP server runs on eth0 to give IP numbers to terminals. Servers are "plug and play" with little or no configuration required. It only takes about 20 minutes to be up and running.

Setup Requirements

You need a server (with 2 ethernet cards installed) , a hub (or switch) and at least one client machine (only 1 ethernet card needed in the client machines).

Basic steps needed to get K12LTSP 4.0 up and running.

1. Download the iso's for K12LTSP 4.0
2. Make sure you have adequate server hardware
3. Install the K12LTSP 4.0 onto the server
4. Check client machines (terminals) and configure.
5. Download boot roms if needed (load on floppies)
6. Configure Sessions if needed for each machine
7. Installing .mp3 support (optional~~but nice)


Step 1 - Downloading

Your first stop should be http://www.k12ltsp.org/contents.html This gives a good overview on what K12LTSP is all about and it's the homepage for the project. This is also the place you need to go to download the iso files from. The download URL is http://www.k12ltsp.org/download.html Please note the md5sums, check them after you download the iso files. Just for reference, when using Linux, here is how you check md5sums. From: http://www.usalug.org/phpBB2/viewtopic.php?t=1215
QUOTE:
At the command prompt cd to the directory containing the iso's Type md5sum the_name_ofthe_iso.iso give your computer a minute to figure it out........ and it will display a long number and that should match the
md5sum that the download site gave.

If they don't..... you have a corrupted iso file and will need to download again. Checking your downloaded iso's is an important step that shouldn't be forgotten, as it will save you headaches later on........ not to mention lost time. At the command prompt cd to the directory containing the iso's Type: md5sum the_name_ofthe_iso.iso give your computer a minute to figure it out........ and it will display a long number and that should match the md5sum that the download site gave.

If they don't..... you have a corrupted iso file and will need to download again. Checking your downloaded iso's is an important step that shouldn't be forgotten, as it will save you headaches later on........ not to mention lost time.

Step 2 - Server Hardware Analysis

For K12LTSP 4.0 your going to want to have two ethernet cards that are linux compatible. I found some fairly inexpensive cards at, of all places, Wal-mart. :) It was a Network Everywhere NC100u-wm Ethernet card. I bought this at my local Wal-Mart for $14.62 plus tax. Pretty cheap for a network card 10/100 pci. I used those for my SERVER. You really should have a fairly fast machine. The faster your server, the more responsive your terminals (clients) will appear. A cdr burner for fast and easy backups and a fairly large hard drive is a definate plus also, as you are probably going to only end up using the server hard drive and not the local hard drives on the clients. A really fast way to check the compatibility of hardware with Linux is to download Knoppix and boot Knoppix and see if everything configures okay. If it doesn't, you may want to dig deeper and make sure that your hardware is Linux compatible, although that isn't as big a problem today as it was a few short years ago.

Step 3 - K12LTSP 4.0 Server Installation

Exactley what it says, stick that first disk in and get started :) It's a very easy straightforward install. In the beginning you get to choose what you want to set up:

# LTSP - Creates a terminal server for thin-client workstations. Server defaults to an IP gateway/firewall when 2 ethernet cards are present.

# Workstation - Installs all the workstation applications and a stand-alone, workstation version of Fedora.

# Server - Installs common server applications and skips the graphical goodies. Use this option for file, print and web servers. Note that you will only have a command line interface with the server option.

# Custom - This option lets you pick and choose. You can mix and match applications.

Picking LTSP is probably the best choice for you if your wanting to setup the terminal server. You still get the option of choosing some additional apps that aren't included in the default settings if you want. Follow the prompts and in short order the installation of your server machine will be finished.

(A very useful url for server installation instructions: http://www.k12ltsp.org/install.html )

Step 4 - Configure Client Systems

Many machines have a bios option that allows you to boot from network. If your motherboard has a built in ethernet adapter, chances are this is the case. All you will probably need to do on one of these machines to get it to boot, is adjust the bios settings. However, if your like myself, I have a few machines that don't have the built in ethernet adapters, and in fact have old ISA slots. Since ISA ethernet cards are EXTREMEMLY cheap ($5 or less) a common way is to get a boot disk for them to boot from the floppy drive. This is much easier than it sounds.

Step 5 - Configure Boot Floppy (if required)

The ISA card I used was a 3com509tpo ethernet card from 3com. To get an older machine to boot from floppy with this ethernet card you should go here: http://www.rom-o-matic.net/5.2.2/

Choose your network card from the dropdown list in the first box. Then choose: PXE loadable ROM Image (.zpxe) That's the only choice you need to make for K12LTSP 4.0

Then follow the directions for creating a boot disk from the downloaded file. It's that simple. For a linux system the directions are simple.

Put a formatted floppy in your floppy drive. Open a terminal window and cd to the directory where the downloaded file is. Then do:

$ cat eb-5.2.2-yournic.zdsk > /dev/fd0

Do you want to use a really small hard drive and boot ltsp from a hard drive instead of network card ?? Here is a url with some helpful instructions on that: http://www.peak.org/~mountainman/misc/LTSP-boot.html

(A very useful url for client installation instructions: http://www.k12ltsp.org/clients.html )

Step 6 - Configure Client Sessions

For some older i386 clients you get THIS nice little error !!!

Fatal server error:
You must specify a keyboard in XF86Config
The fix is a very simple one actually:

From : http://www.ltsp.org/ltsp-4-errata.html We get the answer. -------------------------------- QUOTE:
Problem:
When the workstation boots and tries to enter graphical mode, it fails with the following error message:
Fatal server error:
You must specify a keyboard in XF86Config

Explanation:
The above error can happen if you are attempting to use the XFree86 3.3.6 Xserver.

The message is misleading. What has actually happened is the /tmp/XF86Config.1 file is empty. This is caused by the fact that the build_x3_cfg script is missing.

Solution:

The solution is to download this build_x3_cfg script and install it in your ${LTSP_ROOT}/i386/etc directory. Typically, this will be in /opt/ltsp/i386/etc.

Once you've put the script into the proper place, make sure you set the ownership and permissions properly. Here's an example of how to set it:

chown root:root /opt/ltsp/i386/etc/build_x3_cfg
chmod 0755 /opt/ltsp/i386/etc/build_x3_cfg


----------------------------------

The missing file is located here:
http://www.ltsp.org/ltsp-4-errata/build_x3_cfg

After a couple HOURS I finally stumbled across this..... hopefully the way the forums here index someone searching for the fix will find it via google and searching for You must specify a keyboard in XF86Config should bring them to this page and the fix... hopefully saving them the time of looking through page after page of documentation.

One file you may need to edit if your machines have older ethernet cards is /etc/dhcpd.conf
A sample change/addition would be something like this:


     host ws005 { 

        hardware ethernet     00:A0:24:6E:2B:62; 

        option option-128 e4:45:74:68:00:00; 

        option option-129 "NIC=3c509"; 

    } 

 


The HOST ws005 would change to the next number in the list.
The HARDWARE ETHERNET is the MAC address of the actual card.... You have to know that. Booting up a boot disk that you created earlier will show you the MAC address as it starts to load. (If you need to edit this line, you will know it because the boot up disk won't complete.)

The option-128 line DOES NOT CHANGE !!!
The option-129 line changes to YOUR ETHERNET CARD name.
You should also check out the settings in the /opt/ltsp/i386/etc/lts.conf file. This file contains settings for local hardware and default printer/video/sound settings.

Some tweaks I made after installation that weren't really terminal server related per se, but were very nice. The Synaptic Package Manager is very impressive. I installed several apps with it that weren't on the default install and not on the disks. (Bluefish for one). Talk about something that was a breeze. That's the easiest install I've ever done on a Linux system EVER !!!

I was able to install Firebird (one click --- take that you windows lovers !! ) Also one click installs for Java, Adobe Acrobat, Flash (from the ROOT desktop)

Step 7 - Installing MP3 Support

Here is how you enable .mp3 support in fedora for XMMS

Grab this file: http://www.osnews.com/files/xmms-mp3-fc1.tar.gz
Run this command: tar -zxvf xmms-mp3-fc1.tar.gz
Copy the two lib files it extracts (as root) to /usr/lib/xmms/Input
Restart xmms

Should work perfectly... it did for me.

Conclusion - Final Thoughts

Assuming you followed the instructions, you should now have a working K12LTSP network comprised of a terminal server capable of supporting multiple clients. If not, the USA Linux User Group offers a dedicated forum for troubleshooting and discussing the K12LTSP platform. For my conclusion, pictures of my K12LTSP network, along with additional reference material below.

Config files and Useful links

----------------------------------------------------

Some common config files

/etc/dhcpd.conf

For hardware setup (ethernet)
/opt/ltsp/i386/etc/lts.conf

Settings for local hardware and default printer/video/sound settings.

----------------------------------------------------

Website Links

http://www.usalug.org/phpBB2/viewforum.php?f=99
K12LTSP forums on USA Linux Users Group website.
http://www.usalug.org/phpBB2/viewtopic.php?t=1266
Screenshots and pics of my current K12LTSP setup.

http://k12ltsp.org/contents.html
K12 Linux Terminal Server Project - Home Page

http://k12ltsp.org/download.html
Download K12LTSP 4.0 here

http://www.k12ltsp.org/phpwiki/
K12LTSP wiki home page

http://www.ltsp.org/
Linux Terminal Server Project Home Page

http://www.ltsp.org/ltsp-4-errata.html
This page contains information about problems relating to LTSP-4.

http://www.xfree86.org/current/XKB-Config2.html

http://www.rom-o-matic.net/5.2.2/
ROM-o-matic dynamically generates Etherboot ROM images.

http://fedora.redhat.com/
K12ltsp is based on Fedora, this is Fedora's home page.

----------------------------------------------------
IRC links
All channels are on the freenode IRC network
#usalug (USA Linux Users Group)
#k12ltsp (The official K12LTSP channel0
#ltsp (The Linux Terminal Server Project Channel0 #fedora (The official fedora channel)

---------------------------------------------------

Email mailing list:
The k12osn Archives
http://www.redhat.com/archives/k12osn/index.html

~~~~~~~~~~~~

by Dave Crouse
and edited by: Robert Richmond
http://www.usalug.org
USA Linux Users Group
An online forum for Linux Users.