I’ve never done any sort of home networking or self-hosting of any kind but thanks to Jellyfin and Mastodon I’ve become interested in the idea. As I understand it, physical servers (“bare metal” correct?) are PCs intended for data storing and hosting services instead of being used as a daily driver like my desktop. From my (admittedly) limited research, dedicated servers are a bit expensive. However, it seems that you can convert an old PC and even laptop into a server (examples here and here). But should I use that or are there dedicated servers at “affordable” price points. Since is this is first experience with self-hosting, which would be a better route to take?
My home server is made of literal garbage.
Yeah, any relatively modern used PC will be more than enough
I use my former PC as the home server. It is probably 10+ years old, has no M2 slot or something, but an SSD for the OS. More than big and fast enough for all my needs: File service (Samba), Web service (apache2), Wiki service (mediawiki), Database (MySQL), Calendar service (Radicale), Project service (Subversion), and probably some others I forgot. All of it running on Ubuntu Server, aministrated by WebMin.
The only investment I did when I turned this into a server was that I put 2x8TB in it as a RAID for bulk storage - I dump the family PCs backups on that machine, too.
Certainly could, depends what exactly you want to run and the specs of the machine of course. Something to keep in mind though is if its very old it may cost more in electricity than a fairly cheap new machine. But really it depends on your use case.
A lot of self hosted things have fairly low requirements but not all of them.
Servers are just computers, you build what you are going to use it for. You can use a cheap N100 mini pc to host jellyfin as the important part there is the video encoder/decoder to transcode video. Though it can only do 2 streams at 4k with tone mapping. So it might not be good enough if you have more than 2 people using it or are running more stuff on it.
I installed a Linux server on an old laptop, then installed Jellyfin. It’s like a Walmart special from 8 years ago, so no graphics card outside of the integrated graphics. Doesn’t matter. I disabled sleep, and power saving settings on the Wi-Fi. I had a USB external 1tb drive hooked to it. The laptop doesn’t even have support for a 5ghz wifi connection. No issues at all. I can run 2 movies at 1080p in different rooms off the external USB drive without issue. Just go for it. I installed RustDesk on it so wherever I am I can remote to it, turn on the VPN and kick off a torrent for whatever movie someone mentioned while at work or what not. Then when I get home it’s there.
Any normal computer can become a “server”, its all based on the software.
Most enterprise server hardware is expensive because its designed around demanding workloads where uptime and redundancy is important. For a goober wanting to start a Minecraft and Jellyfin server, any old PC will work.
For home labbers office PC’s is the best way to do it. I have two machines right now that are repurposed office machines. They usually work well as office machines generally focus on having a decent CPU and plenty of memory without wasting money on a high end GPU, and can be had used for very cheap (or even free if you make friends that work in IT). And unless you’re running a lot of game servers or want a 4k streaming box, even a mediocre PC from 2012 is powerful enough to do a lot of stuff on.When I started my home server was an old laptop, eventually it became an old desktop, and now it’s server specific hardware. My recommendation is use whatever you have at hand unless you have specific reasons. I went from laptop to desktop because I needed more disk space, and went to specialized hardware for practical reasons (less space, less electricity, easily accessible hot swappable hard drives). But for most of the stuff I have there an old laptop would still be enough, heck, a raspberry pi would be enough for most of it.
Yes, you can easily do it.
You want to look at 2 things: 1. Noise 2. Ratio of performance / power usage.
- Noise
When your PC runs 24/7 then it might be annoying to hear it’s noise sometimes. Real server cases are usually even much louder than former PC’s because they are built for super strong air flow inside.
Think carefully what you need. In my situation it is just one light wooden door away from my bed, so I wanted it impossible to hear. I optimized it so, and it ended up being so quiet that I cannot hear any fans, but I hear the clicking of the harddisks all the time. Well, I got used to that, mostly. For my next home server I want to build my own case that absolutely blocks this noise.
- Ratio of performance / power usage
People are frequently asking what if I turn this old Pentium etc. into a server?
Well, these old CPU’s have very low performance compared to new ones, but it might just be sufficient. But then you recognize that the old veterans burn 100 Watts for the same performance where a modern (low performance) CPU burns only 5 Watts, and now it will do that 24/7. Think about your yearly costs. Many times it turns out that buying a new one saves your money very easily.
I have 3 servers at home. The main is an AMD epyc server. Very nice hardware. The other two, are cheap 13 and 14 Gen Intel i3s (14100t) and they work like a charm, despite being cheap consumer grade hardware. For self hosting, a server is just any computer. Unless you need the features or reliability of enterprise hardware, basically anything can be used. Do it
Absolutely yes. It’s better to use an old PC for a home server, because upgrades are cheaper, parts are easier to find, troubleshooting is generally easier, they’re usually more energy efficient than an older dedicated server, and you’re saving an old pc from becoming e-waste.
That being said, what you want to run on it determines how old/cheap of a PC could work for you.
Jellyfin works best when you can do hardware encoding, and these days that means throwing an ARC A310 in there and calling it a day. If you have a new enough processor, you don’t even need the graphics card.
Mastodon is pretty disk heavy, but if you’ve got a nice hard disk to put the Minio server on and an SSD for the db, you’re golden. That’s how I run https://port87.social/. It’s running on an old 6th gen Intel i7. The PC I built in 2015 (with a few upgrades).
CPU intensive servers like Minecraft are where you start to run into problems with older hardware. If it’s just you on there, a 10 year old CPU is fine, but if you’ve got a few friends, the server may start to struggle to keep up. I had to move my server off that same system I talked about above, because Minecraft was pegging the CPU a lot. But a 5 year old CPU would be fine for that. (Assuming that the 10 year old and 5 year old CPUs were both top tier CPUs when they were new. Like i7, i9, Ryzen 7, Ryzen 9. A five year old i3 would still struggle.)
Basically unless you’re trying to run AI models on it, cheap hardware is fantastic for personal servers.
There’s no right way, really. You can turn almost anything into a server.
If you have old hardware laying around I suggest you start with that. When you’re comfortable with setting everything up and using it on your day to day, then it’s time to invest into hardware.
I bought a used m920q for this reason, still working on it, I’m at the docker-compose phase
I have two servers/mini lab / whatever you want to call em. Ones running unraid and is my main server Frankensteined from an old mini itx mobo off of ebay with an Intel quicksync capable cpu. And the others a $80 Lenovo m93p that I just installed Ubuntu server + casa os to mess around with it.
I started out with an old laptop then eventually “upgraded” to a refurbished office surplus desktop. I highly recommend starting out on a project PC as a sort of proof of concept before investing any money into it. Even hosting the family media libraries, I have never had an issue with streaming video, etc. even with pretty dated hardware.