Operating Systems

Operating Systems

“what OS should i choose?” seems to be one of the top frequently asked questions. rightly so – this decision will shape how you interact with your server and what direction your home server journey takes.

Hypervisors

to get the terminology correct, what we are talking about is either a type-1 or type-2 hypervisor. a type-2 hypervisor is an everyday OS like Windows or Ubuntu which is used to run virtual machines (VMs) or containers (think Docker). what characterizes this kind of hypervisor is the fact that you plug a monitor, keyboard and mouse (components commonly called a “head”) and use them like any other desktop or laptop computer. this is not what differentiates them from type-1, but this is an entry-level blog, so we’ll stick with this for now.

type-1 hypervisors are very different. these are what are traditionally used in servers. they are run on “bare metal” which means they host VMs and containers directly on the components rather then with middleware and translation layers, making them much faster and “lighter weight” than a type-2. OSs like ESXi, xcp-ng, proxmox, unraid, and truenas are examples of type-1 hypervisors. these OS are accessed and managed through a different computer than the server they are installed on through a webpage, also called a web GUI.

Personal Use

many people like the idea of starting with a type-2 hypervisor because of how close it is to a traditional OS. this is a false sense of security. it also misses the point of a home server, which is to do things differently than your everyday computer. while you can do all of these things in a type-2, they are really designed to be daily drivers and not purpose built to run the kind of services server do.

my recommendation is to start with a type-1. a type-1 can run on older hardware, is more stable, needs less attention, and is meant to go long periods of time without a restart. while these reasons may not look like they make sense now, after some time working in the server space, these will all be things you thank your lucky stars for.

TrueNAS Scale

i am quite a fanboy of truenas scale. the reasons for this are many, but i should start by telling you why truenas over all the other type-1’s out there. first, ESXi, proxmox, and xcp-ng are built to run VMs. this is an old way of thinking. VMs are quickly falling out of favor due to the proliferation of containerization. this is not the place to have the “VM vs Docker” fight, but a little googling will tell you docker is winning hands down. truenas scale is built to run containers using a large catalog of prebuilt apps purpose built to run on the OS. that isnt to say you cant run containers on proxmox (you can, but its more geared to VMs) or you cant run VMs on truenas (you can but its VM management isnt anywhere near as good as proxmox’s).

there are many youtube videos on how to get things going with truenas scale as well as great documentation from ix-systems (the builders of truenas). i also produce some how-tos for complex subjects, but i love the support the youtube community is putting towards the OS. i always recommend truenas scale over synology and unraid because while these are also beginner type-1 hypervisors which have great expansion capability, truenas edges those OSs out in terms of price or functionality.

when starting out for the first time, give truenas scale a try. it runs on just about everything, has awesome built in tools to do necessary server tasks that beginners arent always aware of, has an amazing catalog of apps, and can expand to accommodate some serious enterprise-class hardware.