You don’t believe in magic in the 21st century? Try this:
- take twenty-four eight to ten years old PCs running XP Pro taking minutes to boot
- collect their network connections to one switch with two gigabit/s ports
- add a GNU/Linux terminal server to the uplink
- boot from a floppy each client, loading software from the server into RAM
- run a script on the server to wipe the hard drives and install a boot-loader on the hard drives
Then, for a couple of hours of work, the client machines provide virtual desktops from a newer server and the users feel the speed and responsiveness of the newer server instead of the ancient PCs.
Perhaps it is not magic but only sufficiently advanced technology, but it is a wonderful way to upgrade a lab with very little equipment costs. The ancient PCs can be made useful again and give a few more years of service. When they finally must be replaced they can be replaced with new thin clients which cost $100 or less and are tiny, cool and quiet. This is a great solution for schools. Replace the management of many PCs with the effort required to manage one.
A few details:
- The terminal server is an AMD64 3000 with 2gB RAM dating from 2004, not young but a generation or two more advanced than the clients. Most importantly, it has a 200gB RAID 1 array to speed disc storage. It also provides local services like chat/web/database so users have much better response than the Internet.
- The clients work in an NFS share from the server which contains an LTSP 4.2 environment. Clients have two sessions, GUI and local BASH shell but also have keyed SSH access, useful for the scripting.
- Script run on the server:
for f in list-of-ip-addresses-spaced ; ssh $f /nfsroot/script.sh& done
- Script the client runs:
script.sh at /opt/ltsp-4.2/i386
modprobe ide-generic # loads driver
dd if=/dev/zero of=/dev/hda # wipes drive to free licence
dd if=/nfsroot/boot-loader-from-rom-o-matic.net of=/dev/hda #write netboot loader
It cannot be emphasized too much how great an improvement this small effort gives to each user of the lab every day in every way:
- faster booting because there is less software to boot
- faster login because the first user to login loads all the necessary files into shared memory
- faster loading of applications because the files are already in shared memory on the server, much faster than reading from a hard drive
- files are accessed by processes on the server from drives on the server so there is no network traffic/bottlenecks for data
- no need to run AV scanning for each user
- web applications and data from the local server are much faster than going through the Internet bottleneck
- RAID storage is much faster and more reliable than the hard drives on the client
I demonstrated this technology to teachers at a conference last week and they were amazed as one should be by magic.
Don’t have a GNU/Linux terminal server? Install Debian GNU/Linux or Ubuntu or K12LTSP. Debian packages to add is ltsp-server-standalone. It sets up DHCP for the subnet on the switch and the tftpd service to boot clients and sets up the file share. Every school should have a few of these terminal servers.