Ubuntu and Linux Terminal Server Project
Dr. Sameer Verma, Ph.D.
Associate Professor
Information Systems Department
College of Business
San Francisco State University
San Francisco, CA 94132 USA
Ubuntu Community Day, LinuxWorld 2008
About
teach: information systems strategy and governance
research: diffusion and adoption (open source, mobility)
fun: ubuntu, olpc, mythtv, etc.
Me
SF State University
Open Source at SF State http://opensource.sfsu.edu
OLPC-SF list http://lists.laptop.org/listinfo/olpc-sf
One of the largest live environments of Moodle
Software Freedom Day 2006, 2007 (and 2008)
Courses I Teach
Managing Open Source
Information Systems elective
Free and Open Source Software
in general
Collaborative software
development
Licensing
Business models
Software maturity models
Multimedia App Development
Information Systems elective
Use of multimedia applications
Graphics, Animation, Desktop
Publishing, Audio, Video, Web
Content creation and licensing
Business models
Managing Open Source
Introduction to FOSS on Windows
The Open CD/The Open Disc
Introduction to Ubuntu
Live CDs + voluntary installs
Linux Lab with Ubuntu
Introduction to the Open Source “community”
Field study: Attend a LUG meeting
Guest Speakers
Multimedia Business Application Development
The experiment
Software needed for the class: Approx. $200
Will a student at a public university spend $200 on software for a
semester?
Can FOSS tools adequately fill the need?
Important constraint
Choice of tool should be based on the curriculum and not the other
way around.
Applications
•GIMP – Bitmapped graphics
•Blender – 3D rendering
•Inkscape – Scalable Vector Graphics
•Audacity – Audio editing and manipulation
•Scribus – Desktop Publishing
•Tux paint – Fun for kids...and grown ups!
•Kino – Non-linear Digital Video Editor
•Drupal
*
– Web 2.0 CMS
*Server-side
Examples
•Elephant's Dream
•CG animation made entirely
with FOSS
Assignment
ccmixter.org
•Audio assignment based on
ccmixter.org samples and loops
•Students download vocals, drum
loops, effects, etc. and use
Audacity to mix and recreate
tracks.
•Learn audio tools and legal
aspects via Creative Commons
licenses
Our “Linux” Lab
Communication and Advanced Computing Lab
Limited/specialty software lab
Dual-boot Windows XP and Linux
Windows XP
Simulation
Statistical Analysis
Linux
GIMP
Inkscape
Audacity
...
Lab
Dual boot Ubuntu Dapper and Edgy and Windows XP.
Installation and upgrades are labor-intensive.
Actively explored LTSP on Edubuntu platform (Feisty and
Gutsy)
Multiboot environment: PXE boot for Linux with Windows XP on
local disk
Medusa Project
Thank you!
Bo Kim – taking up the challenge
Jack Tse and Don Strickler – loaning us a switch
Tony Chan and Karl Schackne (BUS computing) – for letting
us use the lab.
Edubuntu team – making an excellent LTSP distro!
What is LTSP?
Linux Terminal Server Project
Allows “thin” clients to connect to a Linux Terminal Server.
All programs run on the server
Clients run a thin Linux base with network and X session capabilities.
LTSP allows for a single point of configuration and control
Great for lab environments
LTSP until 4.x
LTSP 5
A “thin” client performs a Preboot Execution Environment
(PXE) boot and retrieves an IP from the LTSP server via
DHCP.
/etc/ltsp/dhcpd.conf points to a bootable img file
Note location of the dhcpd.conf file
DHCP response
PXE DHCP request
How it works
How it works
A small footprint Linux image is sent to the thin client
computer via TFTP.
The client loads the Linux image and starts the X window
system via secure shell (ssh)
client images and server have ssh keys
X session forwarded over ssh
DHCP response + TFTP Linux image
How it works
All programs execute in a X session on the server, but are
forwarded via ssh and displayed on the thin client.
Feedback from the user (keyboard & mouse) are sent back to
the server over ssh as well.
X session forwarded over ssh
mouse+keyboard
What Does it Look Like?
192.168.0.0/24
eth1 eth0
SFSU
130.212.14.0/24
firewall
Hardware Requirements
Server
CPU should be powerful enough to run multiple simultaneous X
sessions.
Intel Xeon processor(s).
75-150MB of RAM per client.
2 Network Interface Cards
Private interface preferably Gigabit
Hardware Requirements
Client
Minimum
Pentium II with 64 MB RAM and a 2MB display card.
Recommended
Pentium II and above with 64MB RAM and 4MB display card.
Identical hardware for each client preferred
Networking Requirements
Network
Avoid
Hubs
10-BaseT cards
Preferred:
100 Mbps switch
100-BaseT cards
Ideal:
Gigabit switch.
100 Mbps switch with 1 Gbps uplink to the LTSP server.
Software Requirements
A Linux distribution with or without LTSP included.
LTSP (if not installed natively)
OR
LTSP 5
LTSP 5 is significantly different
Builds thin-client environment off of the server environment.
sudo apt-get install... sudo chroot /opt/ltsp/i386/
sudo apt-get update...
Software Requirements
Four services running on the LTSP server:
DHCP for IP address leases
TFTP for initial netboot kernel
NBD for filesystems
SSH for all communication on the LAN
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.20 192.168.0.250;
option domain-name "sfsu.edu";
option domain-name-servers 130.212.10.163;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option subnet-mask 255.255.255.0;
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
filename "/ltsp/i386/pxelinux.0";
}
else{
filename "/ltsp/i386/nbi.img";
Advantages
Diskless clients
Highly centralized
patches
firewalling
Cost effective
Customized profiles
LDAP auth
Change lab footprint as needs grow
Invest in powerful server
Need a fast network
Documentation is weak
Many references to LTSP 4.x
Latency sensitive apps will not work
well, especially multimedia
Disadvantages
Thin Client Scenario
Client Server
Pentium II
128 MB RAM
Pentium 4
4 GB RAM
Distribution of “crunch”
Fat Client Scenario
Client Server
Pentium III
512 MB RAM
Pentium III
512 MB RAM
Distribution of “crunch”
Individual installs
Lowfat Client Scenario
Client Server
Pentium 4
2 GB RAM
Pentium III
1 GB RAM
Distribution of “crunch”
PXE Boot images
LDAP + NFS
•Authentication
•Storage
•Configuration
•Backup
Ubuntu 8.04 (Hardy Heron)
Alternate CD
At boot screen, hit F4 and select LTSP server
If your server has two NICs, the installation is seamless
You will be ready to boot into a thin client after the install
LTSP 5
Many more options for building images
Default image is a thin client based on what's running on the server
Custom images (lowfat, kiosk, mythbuntu...)
sudo ltsp-build-client --workstation --Kubuntu
sudo ltsp-build-client --workstation --Ubuntu
sudo ltsp-build-client --kiosk
sudo ltsp-build-client --mythbuntu
...
LTSP and Sugar
sudo apt-get install sugar*
Ten steps for fun and profit!
1)Get the alternate CD http://releases.ubuntu.com/releases/8.04/
2)Get a machine (PIII will do) with two NICs
3)Boot from CD
4)Hit F4 at the boot screen
5)Select LTSP Server
6)Install
7)Plug in a crossover CAT5 into eth1
8)Plug in a PXE Bootable client into the other end
9)Boot
10)Profit!
Links to check out
http://ltsp.org/
http://en.wikipedia.org/wiki/Linux_Terminal_Server_Project
https://help.ubuntu.com/community/UbuntuLTSP/LTSPQuickInstall
http://edubuntu.org/Documentation
http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/customizing-thin-client.html
https://help.ubuntu.com/community/UbuntuLTSP/LTSPFatClients