When building a home server, could a used/cheap PC do the job?
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?
When talking about hardware, the physical computer itself, a "server" is commercial grade and designed to run under heavy loads for years on end with very high reliability. Error correcting RAM, redundant power supplies, room inside for huge processors, more airflow than a C-130 for cooling, etc.
On the software side, a "server" is just a computer that provides some service to users on a network. You very likely have one of those Wi-Fi router/ethernet switch things from the likes of Linksys or whatever, right? That is almost certainly acting as a DHCP server for you LAN, in that capacity it might handle kilobytes of data a day because dynamically assigning IP addresses on a household Wi-Fi network is not a very demanding task, so it'll do it on a tiny little ARM processor with a few MB of RAM. It probably also has a web server, which is how the "go to its IP address in your browser and get to your router settings page" works. It's serving a little website that most of the time gets absolutely zero traffic.
So, turning a desktop PC into a "server." The question is, what services will it provide? Desktop PCs are pretty good at mostly low traffic with bursts of intense work, so if they're going to sit still doing nothing while you're at work all day, and then maybe handle some file storage or media transcoding during the evenings while you're home, a PC will do that just fine, if you're okay paying the power bill of having a computer up and running all the time.
If you're hosting a website or a game server with a lot of active users around the clock, you might want to look into more professional hardware.
If you’re hosting a website or a game server with a lot of active users around the clock, you might want to look into more professional hardware.
Honestly, that's going to be pretty far down the road. Use what you've got, and fix issues as you go. Professional hardware is rarely needed, but it is pretty cool.
My answer would basically be yes, but. An old desktop (or even laptop) can definitely be used and will run fine. It should be very easy to get one for free or very cheap as companies will typically write them off after 3-5 years.
However, you might want to consider power consumption. Running a desktop 24/7 will use a lot more power than a new MiniPC or a NUC, so you may want to calculate how much it'll cost to run a desktop 24/7 compared to a device that only uses 5W or whatever, and see whether the upfront savings make up for what you'll pay in electricity over a certain period.
I think you might actually want to look into second hand MiniPCs unless you absolutely need to fit a bunch of hard drives in a case (like you probably would with Jellyfin).
Also I want to echo what others are saying about noise. A desktop or rack mounted server will make more noise than a laptop or MiniPC.
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.
You could ask the question for video gaming. Can a used computer do the job? Yes, but you may not be able to play cutting edge / demanding games if your computer lacks the appropriate hardware. It really depends what kind of things you want to do, for choosing hardware that's powerful enough.
Jellyfin? You need to consider if you need transcoding. Transcode or not makes quite a difference on the hardware needs.
I'll tell you a secret: my cool looking 4u server case with 8 hot swappable drive bays actually just houses my last gaming rig. Know what's going in there when I update my current rig?
It is a fantastic idea to start your home server project on some e-waste hardware, and use it until you know specifically what features you're lacking that you would need better hardware for.
My current home server that runs three dozen containers including Plex and Emby as well as two dozen other services and many terabytes of data is literally an old Lenovo desktop I got for free out of somebody’s garage 14 years ago. So yeah it’s sort of a perfectly fine place to start.
Yea definitely. I started tinkering with my first server in 2020 and used an ewaste dell tower with an i7 3770 (8 years old at that point) and an old rx460 I had laying around. As others mentioned power consumption was way worse than modern hardware. But I had at one point a half dozen people streaming jellyfin 1080 content from it with no hiccups at all. That said I was running on linux, not sure how it would do if you run windows.
Right now I'm using a low power pc to run my server, again an old ewaste dell micro pc with a 5th or 6th gen i5 and no dedicated gpu. Still no problem streaming to my partners and I's phone/tablet simultaneously. Again, running linux.
Heck yeah! Old desktops or laptops are how most of us got started.
Things to consider:
Power- this will be on 24/7 probably. That adds up
Speed- not just CPU, but RAM, disk access and network interface can limit how much data you want to move.
Noise- fans can suck (pun intended). Laptops tend to run quieter
I'm sort of looking to upgrade and N100 or N150's are looking good. Jellyfin can do transcoding so that takes a little grunt. This box would work well for me. It's not a storage solution, but can run docker and a handful of services.
I wanted to echo this by saying that my lab stated as 4 bay Qnap NAS and evolved into repurposed consumer hardware as my interests and needs changed. My current server is an Optiplex that I bought for being small, quiet, and hanging lots of cores and my NAS is just my old gaming PC build with an HBA card (for extra SATA lanes) stuffed into a fancy case. A server is any computer that you say is a server (ideally one with functional network connectivity).
adding on to Noise, if you do end up in a situation where you're considering buying refurbished enterprise hard disks, know that they are louder than normal consumer drives, esp if you have 4 of them running at once in a NAS
I've been running a plex server on an old desktop bought in 2016. Mostly streaming movies and tv shows to my family. I have a 2 TB SSD and a spare 2TB HDD. I was thinking about getting a mini PC to swap out the larger desktop. Could I get a larg HDD and ad it in an enclosure to the Mini PC to handle the media volume?
100%. That’s how I started, that’s how I continue to operate.
Currently have a few HP prodesk and elite desk mini pcs, my old desktop converted to be a proxmox node that runs OPNsense as a vm, and an even older desktop that runs TrueNAS.
However, I would like to replace my current truenas system with something newer and lower power as it consumes quite a bit for what it’s doing.
A couple years ago my in-laws were downsizing after retiring and they asked if I would possibly have any use for their ancient desktop PC (at least old enough to have shipped with Windows 7).
I installed Debian on it and it's running Jellyfin, qBittorrent through Gluetun, Calibre-web, NextCloud, and Pi-Hole containers, with plenty of room to spare. I've also got some services running on Raspberry pis (back when they were cheap). And an external 4TB hard drive connected to it acting as a NAS. No hardware transcoding or 4K video on Jellyfin but that's no big deal for me.
All that to say yes, you can absolutely self-host on repurposed hardware. Any old PC you're looking at is no doubt newer than mine.
When I build my NAS/server last year, I bought a used Dell Optiplex from 2013 on eBay for $50. I tossed in an old SSD I had laying around, and squeezed in 42 TB worth of HDD drives. I added a PCIE SATA expansion card, and a 10 gig network card for 60 bucks to improve performance.
The only real downsides of doing it this way are
No realistic way of upgrading hardware
Limited space for internal drives
No hardware transcoding abilities out of the box
More power consumption than buying something newer
If you already have one, it's a good place to start. However, power efficiency will be the biggest drawback. Power ain't free, and in some places it is very expensive. I'd recommend picking up some cheap ThirdReality switches and using them to monitor power consumption in Home Assistant.
It really depends on what you're trying to do. At the end of the day, the foundational components are pretty standard across the board. All machines have a CPU, motherboard, storage mechanism, etc. Oftentimes those actual servers have a form factor better suited for rack mounting. They often have more powerful components.
But at the end of the day, the difference isn't as striking as most people not aware of this stuff think.
I'd say considering this is your first experience, you should start with converting an old PC due to the lower price point, and then expand as needed. You'll learn a lot and get a lot of experience from starting there.
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.
There are a lot of ways to go. My own isn't particularly efficient, but it's an old rack mount server. Everything is built like a tank. It's robust as hell, and yet everything was well used and cheap. Probably not a good solution if you live somewhere with expensive power, but I don't.
It depends on what you are running, but at one point I had an Odroid N2+ with 8GB RAM running Home Assistant, mpd, Snap server, zwavejs, mympd, jellyfin, and Calibre, all in containers, controlling the house and providing music for the sound system, playing movies, and with no issues. It ran for 7 years. So you don't need much; memory helps.
Oh - I take it back; after I put Jellyfin on it, it would struggle with transcoding. No GPU, old, weak CPU, whatever. But otherwise, it was fine.
At some point I realized I'd have to leave the computer with the house, because I have over 30 hardwired z-wave devices I'm not taking out if we sell, so I moved all of the services except Home Assistant and zwavejs to another computer.
My point is: old computers should be fine, assuming you're not trying to run LLMs on them. Or going heavy video transcoding. Just for serving up some web applications? You don't need much.
Yes, a used PC can work great for a home server. Just don't go too old or it will be power hungry. Obviously you will want one with an integrated GPU to save power too. If you want to run jellyfin, make sure it supports hardware video encoding, preferably AV1 or H.265.
I use a couple of old HP proliant mini towers. Relatively low power consumption, i7 CPUs and 32GB of RAM. I got mine from ewaste but it's the sort of thing you can easily find refurbed for the price of a high end Raspberry Pi.
Hardware requirements really depend on what you want to do with the server. I have a few raspberry pi, an old PC, and at least one or two old laptops to host things on. But really, I use the old PC the most. It pulls more power than a raspberry pi, but I've found it to be much more reliable and stable.
Drop some additional hard drives if you need a media server. More memory & CPU if you are doing things like manipulating images or transcoding video. I run a webserver and host various subdomains for things I don't want to pay to host. Plus working samples of my portfolio projects. I keep my actual portfolio on cloudflare, but link out to these work samples.
I also host some other apps that are just for my home network. Everything works great on a 10 year old PC sitting in a network closet. You are very likely not in need of professional server hardware.