Introduction
A Linux Workstation is a single user computer that you use as your primary interface for computing, especially for “work” purposes. At a bare minimum, a workstation includes a keyboard and a display (although a workstation could also be a VPS that you SSH into, this book will focus on physical workstations).
Historically, there has been a hardware distinction between a personal computer (PC) and a Unix workstation, but ever since the introduction of Linux, the difference in hardware doesn’t really matter anymore, and any computing device can become a workstation. The only important distinction for a workstation is the role that it serves, and how you configure and use it on a daily basis.
The role of a workstation is very different than that of a server. A workstation’s only purpose is to serve you, during the moments that you are interfacing with its physical keyboard/display. A workstation is usually connected to a network, but only as a client (terminal, web browser, etc.), not as a server. (Of course, you may bend this rule if you like, to make your computer a server-workstation, or “Sworkstation”, but it is cleaner, and more secure, to use separate [virtual] machines for all servers, even for development purposes.)
This book will describe my preferred method for setting up a new computer, for use as a personal Linux workstation. It will also show you how to bend the rules a bit, and create a few virtual machines (VM) for running local development servers (Docker), or even public, production-lite, and/or LAN party services.