Debian Edu is an awesome Debian Pure Blend that just works out-of-the-box once you learn what it can do, and how to use it. Their developers have been working for years and have burned lots of neurons developing it for you. Even so, some work is still necessary to make it work at your place. To succeed, make sure you take enough time to read and understand the following page to bring your Debian Edu network up and running. You need a little technical knowledge, so let's begin acquiring it!
There is basic terminology you need to know and understand to follow any tutorial or instructions. First of all, let's present any element you can find on a standard Debian Edu topology.
It is a node on a TCP/IP network that serves as an access point to another network. Most of the people with an Internet connection at home have a modem router that serves as a gateway to the Internet. On medium to large intranets it will more commonly be a router that in turn receives routed traffic from another router.
WARNING: be aware that on a Debian Edu network this gateway must be able to serve using "class A" IP addresses (typically 10.0.0.1 or similar). At home you will normally use "class C" (typically 192.168.1.1 or similar). Normally those routers are more expensive because they are sold under a "business brand". As an alternative, it is possible to install a Debian Edu system using the Minimal profile and to configure it as gateway. See the manual for details.
A computer networking device used to connect devices on a network. It will send specific packets to the specific hosts that requested them.
Main server (Tjener)
The main server or Tjener (which is the Norwegian word for server) contains information about users as well as their files, and it runs most of the services in a Debian Edu network. Most services can easily be moved to a different machine if necessary. There must be only one main-server in the network. You can install both a main-server and an LTSP server on the same machine.
An LTSP server is a powerful machine that does most of the work by running all the processes and serving the result to the thin clients that are connected to it through a switch. It also provides the file system for diskless workstations.
It provides file central storage, central user authentication and generally they do not offer any services to the rest of the network. There can be multiple LTSP servers in the network and they can be used to share printers.
A thin client is a computer terminal with a monitor, mouse and keyboard that can be an old, weak machine (A 133Mhz Pentium I is enough), without even a hard disk. Ideally the network card should be bootable (by PXE or Etherboot) but, if not, older cards can be obtained for just a few Euro. Alternatively, you can boot them using a Bootdisk. Its function is to draw the result of the thin-client server computation and to provide mouse and keyboard input.
It is regular computer where applications are installed and run locally. It allows faster startup times and access to local devices such as CD-writers but has a big maintenance cost as any workstation's operating system and software must be installed, maintained and configured individually.
It is a solution between a thin client and a workstation. It boots from the network, mounts its root file system from its next-server, and runs all applications on the local hardware. You can think about it like a regular workstation with a very long hard drive cable.
They are like workstations but capable of authentication using cached credentials, meaning it can be used outside the school network. The users' files and profiles are stored on the local disk.
Printers may be connected anywhere in the network, also to thin clients, but they cannot be administrated from them. Skolelinux uses CUPS for printing.
See glossary for more
What is a Profile?
A Debian Edu network can host nodes that are configured in many different ways. This configurations can be easily performed by selecting different profiles during install.
The default selection of profiles includes main-server, workstation and thin-client server. That means, the computer is able to work as a main server (mandatory) and as a workstation at the same time, but if you don't plan to use it as a workstation you could just remove that profile. This adds flexibility and ease of use to the process, so you can perform complex configurations by just selecting appropriate profiles.
The available profiles are:
Configures the main server that provides all services pre-configured to work out of the box for your network. It doesn't include user interface, so if you want one, then select Workstation or Thin-Client-Server in addition to this one. There must only exist one main server per network!
Configures a thin client (and diskless workstation) server from which thin clients boot, run their processes and store their files. This computer needs two network cards, a lot of memory, and ideally more than one processor or core. See the chapter about networked clients for more information on this subject. Choosing this profile also enables the workstation profile (even if it is not selected) - an LTSP server can always be used as a workstation, too.
Provides a computer that boots from its local hard drive, runs all software and devices locally but, performs authenticated user logins by the main server, where the users' files and desktop profile are stored.
Same as workstation but capable of authentication using cached credentials, meaning it can be used outside the school network. The users' files and profiles are stored on the local disk. Notebooks and laptops should select this profile and not 'Workstation' or 'Standalone'.
An ordinary computer that can function without a main server (that is, it doesn't need to be on the network). Includes laptops.
This profile will install the base packages and configure the machine to integrate into the Debian Edu network, but without any services and applications. It is useful as a platform for single services manually moved out from the main-server.
Understanding Thin Clients
Skolelinux, Edubuntu and a number of other Linux and Windows based systems use what are called thin client PCs. For the ordinary user, these behave very much like ordinary computers. However, for the administrator they are cheaper and far easier to maintain. If you are going to use or maintain thin clients on a network, it is important to understand the basics of how they work and their limitations. This will hopefully do this.
The Basic Idea
If you manage a large network of computers, running around to each one fixing issues can be an incredibly time consuming experience -- particularly if your network is spread over a large area. For any administrator, it is preferable to have some means to centrally control all computers rather than spending valuable time running around to each.
As most people are aware, all of the interesting programmable bits of a computer are in the (usually oblong) computer case itself. All of the rest (mouse, keyboard, monitor, printer) are "simple peripherals" which tend to do simple things and break down less often. So really when you are fixing a computer, you usually just need access to the computer itself and can use your own keyboard, mouse, monitor, etc.
With this in mind, a possible solution to avoid running around to computers might be to use extremely long cables for the mouse, keyboard and monitor and keep the computers themselves together in one central room. So when you install a computer you would place the computer case itself in the central storage and connect 200 foot long mouse, keyboard and video cables which you would trail out to the user's room. The user could then just work away without physical access to the computer. If a problem occurred you could go to the case in the centre and connect your own mouse and keyboard.
This sounds like a silly joke but it is effectively what thin clients do.
It turns out that you can't have 500 foot long cables for monitors, mice and keyboards and even so, it would seem silly to have so many long cables. However, it is possible to send the signals from mouse, keyboard and monitor cables across computer networks and computer networks can span effectively infinite distances.
However, you cannot just plug a mouse, keyboard and monitor into a network. Instead you place a very small, low powered computer at the person's desk. This is called the thin client. Its sole purpose is to send and receive the mouse, keyboard and monitor signals across the network. When the user moves/clicks the mouse or presses a key, the thin client sends the signal across the network to the central computer room. The centralised computer runs all programs and sends the screen picture back across the network to the thin client which displays it to the user.
How Many Central Computers?
It would be understandable at this point to have a mental picture of a central room full of computers, one for each desktop and wonder can this really make sense? This is where the real savings happen. When you have a full computer on every desk, you can't avoid having one for each person. However, suppose you could buy a single powerful computer which could run all the programs for a large number of people. It could consolidate a large number of individual PCs into one and could talk to many thin clients. This machine is called a "thin client server".
The question is how many thin clients could one thin client server take? The answer varies, but with Skolelinux a single Eur4000 thin client server can serve up to 40-50 users simultaneously. So 40-50 desktops can be run off one large server.
Another great benefit of thin clients is that because all programs run centrally, users' files are automatically available from every thin client. If you login as user joebloggs you will see the desktop, files, etc belonging to joebloggs regardless of which thin client you sit at, anywhere on the network.
Thin clients are also convenient for security. It is very difficult to secure large numbers of expensive computers scattered around a network. If your thin clients are of little value, you only have to secure the server room.
Thin Client Computer Requirements
The thin client computers themselves need to be of a very minimal standard. They need no hard drive at all.
You can therefore recycle old office computers, such as those typically donated to schools. These can't normally run up-to-date software but can be used as thin clients. So thin clients are very economic too.
So, the idea of thin clients is that you can place a mouse, keyboard and and monitor at desks all over your network and let users login and work at a central computer. To facilitate this, you place a very small "thin client" computer on each user's desk. This acts as a sort of adaptor between the network and the mouse, keyboard and monitor.
Limitations of Thin Clients
A little healthy scepticism should be injected at this point. Surely there must be some catch here. Can this really work as well as a normal desktop? The truth is that thin clients have certain limitations and these should be understood so as not to expect too much and be disappointed.
Just like the monitor, keyboard and mouse signal, it is possible to send the sound card signal (to your speakers) across the network. However, this is very costly in terms of network usage so it is not usually recommended for large scale deployment.
In normal operation, most computer screens change quite infrequently (partially, every second or two) so sending the picture across the network is no problem. If you wish to play a full screen video, the entire screen must be refreshed many times per second. Like sound, this is too costly in network bandwidth and really just doesn't work, so video playback on thin clients is not practical.
Thin clients use considerably more network capacity than ordinary desktops. It is estimated that each thin client should use an average of around 2-3MBit/sec. On an ordinary (100MBit/sec) network, you cannot indefinitely add more thin clients. Skolelinux deals with this by creating a separate private network for each thin client server and its thin clients. This prevents thin clients from jamming up the network. For those who need heavy multimedia applications, dedicated desktop computers (running Linux, Windows, OS X or whatever) are usually needed. The USB/floppy issue is usually best approached by using the network. The user goes to a dedicated desktop to transfer files onto the network and then can access them (read and write) on the thin clients. Alternatively, they can email the files to themselves and access their email from the thin clients. Once they have the files, working from the thin client works fine of course.
Thin clients provide a very cost-effective and time-effective way of providing core desktop computing applications (Email, Web, Office Applications, Instant Messaging, ...) across large networks. They have their limitations particularly in the area of multimedia work and are therefore be used in combination with traditional locally installed desktops.