Linux – Server vs Workstation
The distinction between a “Workstation” and a “Server” may be obvious to somebody working in Information Technology (IT), but is not so obvious to a typical home computer user. With Linux running on 94% of all “servers” in the world and used extensively inside so many domestic appliances, you may be wondering why you haven’t seen it anywhere, or heard about it.
This article will give you a bird’s eye view of what the distinction is and will also give you a bit of an understanding of the concept of providing additional “services” on your new home Linux system.
Linux Used Everywhere Today
The following table gives a broad-brush picture of how different applications of the Linux operating system are deployed in 2023. I have added “Linux Embedded Appliance” as this is a common application for this operating system. Linux is installed in most WiFi, Bluetooth and “Smart” devices, like TVs, etc. today.
| Function | Linux Workstation | Linux Server | Linux Embedded Appliance |
|---|---|---|---|
| Graphical user interface (GUI) | essential (user choice) | optional | rare |
| System Auditing Software | not required | essential (security requirement) | never |
| Logging | some | lots | none |
| Applications | as many as you want | as many as you want | single |
| Applications write protected | generally not, but offered in immutable versions of some distributions | no, but extra security mechanisms prevent system writing by unauthorised software installation | yes (other than firmware updates) |
| Data storage | yes | yes | small amount, usually only configuration settings. |
Of the functions you can see, you are generally only aware of the GUIs on computers. So while it may be obvious that you are looking at a computer “Workstation” (sometimes referred to as just “Desktop”), as they have a GUI installed, it is not so obvious that the system is a “Server”, or even an “Appliance”. A smart TV is a good example, where you almost have a full desktop computing experience, on your TV, using just a remote control.
Modular Architecture
Linux has the unique ability to customise it in nearly every possible way. It is totally modular in its architecture and this is why is the operating system of choice for so many applications. To keep this article brief, I will cover only the broad concept of what you are likely to be implementing on your home PC. As I have already indicated, there is a very blurred line between server and workstation. Due to the modularity in Linux it is possible to start with a “server” installation and make a “workstation” and visa versa. This makes it exceptionally easy to build custom systems for home, or business.
Typical Linux Home Installation
The methodology that I use for home installations works very well for 99% of home users. The steps are as follows:
- Install the “Workstation” version of the Linux distribution (e.g. Ubuntu, Fedora, etc.).
- Uninstall the applications that the person will never use. (trimming down the clutter)
- Install extra applications specific to the person’s requirements.
- Tweaking the desktop to suit their personal preferences.
- Optional – Adding “Services”, as required.
The beauty of this methodology is that is works just as well, in setting up a new “Server” for a business. In my case, I love working on a GUI, so having one installed by default works for me. Turning the workstation into a server just requires adding the “functions” shown in the top of this article.
Services In A Box – Containerisation
What I am about to tell you is not restricted to services, but for the purpose of illustration, I will say, that it is perfectly suited to the provision of services and therefore, will use it to show you how you can effortlessly install and manage them on your new PC.
If you are setting up a home Linux installation and the hardware is relatively new (later than about 2019 vintage) you should familiarise yourself with the concept of “containerisation of software”. Without going into too much detail, think of it as a shipping barge, filled with your standard shipping containers. The barge is not a “food” barge or a “vehicle” barge, it is simply a transport for standard sized shipping containers which can contain anything. In our case Linux is the barge and the containers contain multiple applications that work together to perform a single function.
What is Docker?
Linux and other operating systems, running on modern hardware, are able to manage blocks of functionality packaged in a “container”. The technology commonly deployed for Linux is called “docker“. I suggest looking up this reference if you are looking at providing functionality on your home PC running Linux, that provides services to your family and friends, such as a private website, for example. To achieve this, there are docker packages available which include all of the component services to allow you to run a full wordpress website in a single container.
Hundreds of Ready Made Packages
There are hundreds of community and company created docker packages, available for almost any purpose.
Pre-configured For Your Convenience
The docker images you download, are pre-configured to work out-of-the-box and in many cases all that you need to do is make some minor adjustments to your home modem/router to allow family and friends access to services on your new PC.
