“Do you have to administrate a computer lab or a whole school network? Would you like to install servers, workstations and laptops which will then work together? Do you want the stability of Debian with network services already preconfigured? Do you wish to have a web-based tool to manage systems and several hundred or even more user accounts? Have you asked yourself if and how older computers could be used?
Then Debian Edu is for you. The teachers themselves or their technical support can roll out a complete multi-user multi-machine study environment within a few days. Debian Edu comes with hundreds of applications pre-installed, but you can always add more packages from Debian.”
See Debian Edu / Skolelinux Jessie — a complete Linux solution for your schoolI’ve done this many times, used Debian GNU/Linux to convert a school’s lab to run FLOSS (Free/Libre Open Source Software) from top to bottom. Typically, I used a proper server or the teacher’s PC as as a terminal server and ran clients from boot CD, hard drive or even PXE. With practice one can do it in an hour, not days, but the first time days is correct. It takes time to learn the extra things beyond desktop that make LTSP work.
With skill and practice one can telescope the time for transition by parallel processing:
- Install Debian GNU/Linux on the teacher’s PC or server whilst configuring the network hardware to supply the lab’s PCs from a second Ethernet interface controller (NIC) on that PC or server. I like to configure the BIOS of clients to boot over the LAN/network/PXE and enable Wake On LAN – 30 minutes
- Install the LTSP packages to provide a DHCP server and PXE services to the clients over the second NIC. – 5 minutes
- Boot and test the clients for basic functionality – 10 minutes
- Install Apache web server and several web-applications such as Moodle, Bulletin Board, Coppermine Photo Gallery and php5-mysql or php5-pgsql. I also like to install several databases I used to travel with from school to school: ~100K recipes, a library of books from Gutenberg.org, and a snapshot of Wikipedia in which the school can incorporate local knowledge. – 15 minutes
So, it can be done in an hour if you know what you are doing. Fortunately, it is easy to practice on small clusters or multiple labs to gain the knowledge but it can take years to accumulate data and skills with all the different packages of software. Times expand when reading all the fine manuals. The chief problem for new teachers/techs is that one does not know all the problems that can arise and what questions to ask the web to solve them. I used to take hours to solve simple problems. Later, it took seconds. To be safe, I used to like to make the transition on a long weekend so no matter what happened, the lab would be up and running properly in the next week. Several times I printed single-sheet blurbs with all the info needed to access all the services for teachers and students including URIs for the web-applications. Normally, I set up a template for each user’s desktop so the web-browsers came up with bookmarks of all the good stuff. I also set up DansGuardian to filter the web to block most deliberate or inadvertent access to inappropriate material from the web. In a simple lab, one can have a per-seat user automatically boot with the PC. Otherwise, one can take the time to generate accounts and passwords. With scripts this takes a few seconds per user. By manual operations it can take a minute per user.
It’s very useful to have a brief session to introduce teachers to the usage of the lab: order of booting, how to wake on LAN, and shutdown on schedule or by command. There are packages that permit teachers to interact with students’ desktops in real time but they may be sluggish on a slow network. I recommend 24+2 network switches to improve bandwidth. Full gigabit/s is best. I like to use RAID 1 on the server to allow multiple seeks and redundancy. A key requirement is sufficient RAM per user. One doesn’t need ~1GB per user as with a typical desktop PC but ~500MB for the OS and about 200 MB per user because executable files are cached in RAM. The per user RAM is mostly for the user’s files, not the system’s. In the old days of 32-bit single core PCs, 50MB per user worked fine but the move to 64-bit and the gluttony of browsers and office suites these days has increased demand.
Anyway you do it, LTSP is a wonderfully efficient solution for a school’s computer lab and it can be extended to a whole school. Users of That Other OS will be amazed that a single server can easily service a whole lab or ~30 or more users out on the LAN. Largo, Florida has powerful servers running GNU/Linux that can deal with hundreds of simultaneous users. They put particular applications on their own servers, like the browsers and office suites. That allows better service for that application and snappier response for users. A lab runs well on just a single desktop PC of recent purchase or a decent server even several years old. The clients can be up to about ten years old. This is a match made in heaven, schools able to repurpose the hardware they own or with small additions and get better service than the typical system with legacy desktop PCs. The key is that the server has most commonly used files already cached in RAM. There is no need to seek all over a hard drive slurping up ~100 files on each boot or login. Using PXE, one can even disconnect the hard drives of the clients. Alternatively, one can set the hard drives to contain a minimal system with boot loader and X-server to connect to the terminal server. There are many options and they all work.
My record using this system was getting a lab running TOOS fitfully with only about 4 machines reliable and 17 in total to 24 machines running reliably. I increased the number of machines by pulling dusty old machines off shelves all over the school. The oldest client was about 10 years old and with a tiny video card. The old clients often needed special configuration to get the monitors working. That project required completely redoing the networking, turning all the tables to dodge conduits on the floor, gathering spare parts, and repurposing my old desktop PC, a single-core AMD64 machine with 1.5gB RAM. The biggest problem? Allowing That Other OS to boot on some of the PCs… I needed to modify each bootloader. Calls for help from that lab went from almost daily to never. I was worried that folks were not using it but every time I sneaked down and peeked in, it was humming. Idle hands are the Devil’s tools and students busy using their PCs are a joy to teachers.
So, I strongly recommend Debian GNU/Linux for schools and for many cases LTSP is the way to go. Try it. You’ll like it.