FC9-LTSP5 walk-through

From K12LTSP Wiki

Jump to: navigation, search

Background

The original version of K12LTSP was released on July 4, 2001. It was based on Red Hat 7.1 and the LTSP packages created by Jim McQuillan. Eric Harrison modified the Red Hat install scripts to create a turnkey server install. Eric continued to adapt Red Hat, Fedora and CentOS releases until until Red Hat adopted K12Linux with the FC9 release. Now there are several Linux distributions that support LTSP including Edubuntu.org and others.


Draft - This is a work in progress.

Much of the information for this walk-through comes from the K12Linux LTSP for Fedora wiki. You should check there for updated information.

  • Install Fedora 9. The FC9 Install Guide is helpful. I downloaded all of the *.iso files to a folder on my USB hard drive, created a boot CDrom from disc1 and after booting from the CD told the installer to look in the folder on the USB drive for the rest of the data. This was fast and easy.
  • After installing you should run yum update. You might also want to go ahead and install extra applications like Adobe Acrobat, Flash and others.
  • Now it's time to install the LTSP server. All you have to do is type yum install ltsp-server.
  • You'll need to configure your NFS exports file so that the client will have access to its operating system. Just add this line to your /etc/exports file: /opt/ltsp *(ro,async,no_root_squash)
  • Warren Togami documents on the K12Linux Network Setup page information about how LTSP 5 runs on a virtual bridge device instead of a real Ethernet interface. This can be useful for testing. I think (because I'm used to doing it the old way) that having two network cards is a great way to run K12LTSP and that many people use the two network card option as a quick way to build private networks for schools or labs.

We need some more documentation here...

  • The traditional, two-Ethernet card setup came with earlier versions of K12LTSP. One Ethernet card (eth1) connected the server to the Internet. The other card (eth0) established a private network for thin-clients and other workstations. Setting up the private network requires a dhcpd.conf file that will hand out IP addresses and configure thin-clients. Installing the ltsp-server rpm package places a sample dhcpd.conf file in /etc/ltsp. You can use this file to create a working dhcpd configuration for your clients.

We need some more documentation here...

  • If you are using other workstations on your private K12Linux network you'll want them to get addresses, have access to DNS and go out to the Internet through your LTSP server. Eric created a Nat RPM to do this. This is an old file but you can look at /etc/rc.d/init.d/nat and see what it does. I think this is an area were we need some scripting help with FC9 and LTSP 5. I've heard that Eric is working on this and I'll follow up with him and revise this section later.
  • If you have dhcpd setup, your next steps are to make sure that the required services are running. Each of these needs to be started and set to run in run level 5 with chkconfig. xinetd ltsp-dhcpd rpcbind nfs sshd The K12Linux install guide has a one line command to do it all:

for service in xinetd ltsp-dhcpd rpcbind nfs sshd; do chkconfig $service on; service $service restart; done
The next line turns on all the servers you'll need running:
for server in ldminfod nbdrootd nbdswapd tftp; do chkconfig $server on; done

  • Building the client files with ltsp-build-client will finish your install with the client files necessary to run FC9.
  • If you have a working dhcp server, you should be able to boot thin-clients. But... you won't have a working dhcpd.conf file. This is another piece missing from the older K12LTSP. Eric's install examined your network configuration and created a dhcpd.conf file. You can find a good sample version in /etc/ltsp. Just change the ip addresses as needed, drop that file into /etc and you should be good to go.

This is what happens when you feed Eric and get him to help...

Network defaults: I think the default K12LTSP network setup with DNS, NAT and the two Ethernet cards worked well. Eric worked on the scripts to configure that and had it all working on my test box. He's promised to work with Warren to update the ltsp-server package so this will still be a working option.

3D Video on the clients Eric's laptop with an Intel video card worked fine with 3d enabled. My client had an NVIDIA card. Eric got my thin client working in 3D as well and produced the set of instructions below. Once the Nvidia drivers built and installed, you can specify that card in /var/lib/tftpboot/ltsp/i386/lts.conf. Note new location of that important file. Here are the two lines added to lts.conf. First line is MAC address of my Ethernet card. You'll need to edit that to match your client. Second line points the client to the right xorg.conf file.

[00:13:D4:FB:82:B0]
    X_CONF=/etc/X11/xorg.conf.nvidia
 ### copied my working nvidia xorg.conf to give the client something to use. (damn proprietary drivers...)
cp /etc/X11/[[xorg.conf]] /opt/ltsp/i386/etc/X11/

  ### setarch needed on 64bit servers...
setarch i386

chroot /opt/ltsp/i386/
  ### now you are in the /opt/ltsp/i386 change root
mount /proc
yum install  dkms gcc make kernel-devel.i586
cd /tmp

  ### The version of nvidia-x11.drv may change so adjust as needed
wget http://ftp.freshrpms.net/pub/freshrpms/fedora/linux/9/nvidia-x11-drv/nvidia-x11-drv-173.14.05-1.beta.fc9.i386.rpm 
rpm -ihv /tmp/nvidia-x11-drv-173.14.05-1.beta.fc9.i386.rpm

  # nvidia version is in /var/lib/dkms/nvidia
cd /var/lib/dkms/nvidia && export NVIDIA=`ls`

  # the kernel version is in /lib/modules
cd /lib/modules && export KERNEL=`ls`

  # dkms needs the nvidia version (-v) and the kernel version (-k)
dkms build -m nvidia -v $NVIDIA -k $KERNEL
dkms install -m nvidia -v $NVIDIA -k $KERNEL
mv /etc/X11/xorg.conf /etc/X11/xorg.conf.nvidia
exit

  ### now you are out of the /opt/ltsp/i386 change root
exit
  ### back to "x86_64" 

edit /var/lib/tftpboot/ltsp/i386/lts.conf
and set "X_CONF=/etc/X11/xorg.conf.nvidia" for the terminals that have 
 an NVIDIA video card

One more tip is to add LDM_DIRECTX=true to the default section of lts.conf to turn off tunnelling through SSH for clients. This makes the clients run faster but login passwords are still sent encrypted over ssh.

Personal tools