Linux or Windows on my servers

What I run on each machine and why, without the operating system wars.

  • ProblemWhat I run on each machine and why, without the operating system wars.

Linux and Windows live side by side on my machines, and not always for reasons I could defend on a forum. Here's what each one runs, why, what has given me grief and how I'd choose today if I were starting from scratch.

No operating system wars

If you've spent five minutes on a computing forum, you know the argument. Some say Linux is the only serious option and Windows is a toy; others, that Windows is the only comfortable one and Linux is for people who enjoy suffering. They've been at it since before I had my first computer, and they don't look like signing a peace treaty this week.

I'm not getting into it. I don't know which is better in the abstract and I suspect nobody does. What I can tell you is what I have, why I have it and what has given me grief, which is the only thing that helps someone deciding whether their VPS should run Linux or Windows.

To set the scene: I have eight internal servers and six VPSs, the rented servers that live on the internet. Why some are at home and others outside I explain in Why I have eight servers at home and six outside.

What I have on each machine

The split, at a glance: of the fourteen machines, twelve run Linux and two run Windows. All six VPSs are Linux; the two with Windows are on the internal network. Separately there's my work laptop, also running Windows.

For Linux I use Ubuntu Server in its long-term support release, 24.04, on almost all of them. It's not the purest distribution, but it's the one almost every provider ships by default and the one with the most answers on the internet when something breaks. For Windows, Windows 11 Pro on two machines and Windows Server 2022 on one.

Machine System Main role
GPU server Ubuntu Local models with Ollama and llama.cpp
Work laptop (not one of the fourteen) Windows 11 Pro LM Studio and model testing
Data server Ubuntu Backups and storage
Client server Windows Server 2022 A client's management software
Workstation Windows 11 Pro My everyday desk machine, also used over remote desktop
Other internal servers (4) Ubuntu Services, agents and testing
The six VPSs Ubuntu Websites, agents and exposed services

I'll say it up front: the laptop I test models on runs Windows more out of habit than need. I'd already spent months with LM Studio on Windows and I never found the weekend to change it.

Why Linux where there's Linux

The reasons, in my case, are pretty unromantic.

The first: almost all server and AI software is designed for Linux first. When a new tool comes out, the Linux install instructions are usually on the first line of the manual; the Windows ones, if there are any, further down and with a warning or two.

The second: it uses less. A Linux server with no desktop uses a fraction of the memory Windows needs just to boot, and I'd rather give that memory to whatever is actually doing the work.

The third: there's no licence to pay for. And the fourth, a very practical one: VPSs come with it by default. Choosing something else on a VPS usually costs more and takes more work.

A concrete example of something I could only do properly on Linux: setting up llama.cpp to make good use of the graphics card. On Windows I tried for a couple of afternoons and always ended up with some compilation or driver problem; on Ubuntu, following the documentation, it worked first time.

And the fear of the black screen? It's real, I won't deny it. On a Linux server almost everything is done by typing commands. I manage the way you'd imagine: with patience, with my notes and, above all, with an assistant beside me translating what I want to do into the command that does it. More on that a bit further down.

Why Windows where there's Windows

There are reasons here too, although one or two embarrass me slightly.

The Windows Server machine is there because a client uses management software that only exists for Windows, and I needed to have it in a controlled environment to connect it to AI. That's a genuine technical reason: there's no alternative.

The workstation runs Windows because it's my everyday desk machine: I use office tools from there, and I operate it from my laptop or from outside as if I were sitting in front of it.

And then there's habit. I do my model testing on the laptop, with Windows, because I was coming from using LM Studio on my work computer at the time, which was Windows, and I wanted to keep things the same. Today I have no technical reason to keep it that way. I'll admit it without hang-ups: some of my decisions aren't decisions, they're inertia.

Windows 11 Pro and Windows Server aren't the same thing under another name. Reviewed in September 2026 against Microsoft's documentation:

  • Licence. Windows 11 Pro is licensed per computer, and often comes with it. Windows Server is licensed by processor cores and, on top of that, needs access licences for the users or devices that connect to it.
  • Administration. Windows 11 Pro only allows one remote desktop session at a time. Windows Server brings server features (multiple users, domain services, installation without a desktop) and the big updates don't arrive on their own.
  • Support. Each Windows 11 Pro version gets updates for about two years and you have to keep moving to the next. Windows Server 2022 has a long cycle: mainstream support ends in October 2026 and security updates continue until October 2031. The client and I have already talked about when to move to a newer version.

Remote desktop has real advantages over the terminal. You can see what's happening, you can use programs with windows, and anyone who's used a computer knows how to get around. For a beginner, or for showing a client, that's worth a lot. Mind you, remote desktop on my Windows machines is never open to the internet: I go in through the tunnel to the internal network, same as for everything else.

What has given me grief on each

Neither has left me entirely in peace.

On Windows, the classic. An update rebooted the laptop in the middle of the night, halfway through a long test with a model, and I lost about eight hours of machine work. Since then I've set the hours when it isn't allowed to restart. And the memory usage: with the system, the antivirus and a couple of programs open, it was eating almost six gigs before loading any model.

On Linux, the graphics card drivers. A kernel update left the GPU server unable to recognise the graphics card, and it took me a whole afternoon, about four hours, to understand what had happened and reinstall the right drivers. And permissions: a service that wouldn't start because it couldn't read a folder. An hour and a half to discover that was it.

What I learnt: on Windows, control when it updates; on Linux, before updating anything that touches the graphics card, write down how to roll back. On both, read the whole error message before searching the internet; half the time the answer is in the last line and I'd stopped at the first.

Cost and performance in my case

No generic tables from the internet comparing machines that aren't mine with workloads that aren't mine. What I know about my machines, and what I don't know too. There are no benchmarks here: these are home measurements, and the recommendation at the end is my opinion, not a result that comes out of them.

Licences: the two Windows 11 Pro licences came with the computers, and the client pays for the Windows Server one as part of the service. So, in my case, the direct licence cost is low. I won't quote market prices because I haven't checked them.

Resources: on two similar machines, the Ubuntu one with no desktop uses less than a gig of memory at idle and the Windows one is around four. That's my own measurement, looking at Windows' resource monitor and the free command on Ubuntu with the machine freshly booted, not a study. Even so, three gigs of difference on a machine that loads models is no small thing: it's the difference between a model fitting entirely in memory or limping along.

Performance with local models: I haven't measured it seriously. My impression is that I get a bit more out of the graphics card on Linux, but I have no numbers to back that up, so it stays marked as not measured.

AI as interpreter for the black screen

What has changed my relationship with Linux most is having Claude, or another assistant, beside me. I tell it what I want to do, it suggests the command and I ask it to explain it bit by bit. Once I understand it, I run it.

I have a rule: I never run anything I don't understand, however much a machine has suggested it. It saved me once when I asked how to free up space on a disk and the suggested command deleted an entire folder that turned out to hold another service's backups. When I asked it to explain, I saw it. Without the explanation, I'd have pasted it in quite happily. And it wasn't the assistant's fault: I'd asked it to free up space, not to free up space without touching anything important. The model doesn't know what you don't tell it, and the black screen doesn't ask if you're sure.

How I'd choose today

If I had to decide today, free of habits:

  • Make a list of what you're going to install on the machine.
  • Check which system each thing runs on.
  • Think about who's going to maintain it and what they're comfortable with.

If everything runs on Linux, Linux. If there's something essential that only runs on Windows, Windows, and don't overthink it.

If you're unsure, these are the criteria I look at, all measurable on your own machine:

  • Workload: free memory at idle and whether what you'll run makes use of the graphics card on that system.
  • Updates: whether you can decide when it restarts and how much time a month it costs you. Of the roughly six hours a month I spend on the home network, almost half go on the Windows machines.
  • Backups: whether you know how to restore the whole machine and how long it takes.
  • Security: what's left exposed and how often it gets patches.
  • Remote access: what you log in with (terminal with keys or remote desktop) and through where, which shouldn't be straight from the internet.

What I'd change in my own split: I'd move the model testing on the laptop to Linux, since it's still on Windows out of sheer inertia. The rest have their reasons.

The detail of which program lives where is in What runs on each of my machines.

Community alternatives 0

Nobody has suggested an alternative to this case yet. You could be the first.

Suggest an alternative

Related cases

Contents

    Closed cases, every Thursday

    One email a week with what was verified, what was refuted and what is still on the bench. No news roundups.

    You can unsubscribe from any email.