When building a home server, could a used/cheap PC do the job?
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?
I started with an old and half-broken laptop. Keyboard war busted.
Worked fine for months, then choosed to upgrade because I started hosting jellyfin and the laptop was unable to transcode on the fly...
You are fine with whatever hardware you have lying around... You can always grow later
Keep an eye for energy consumption tough... Too old stuff might be less efficient running 24/7 depending on your kW/h cost.
Let’s put it this way, I’m hosting about 30 Docker containers including a full Servarr stack, Jellyfin, and Mastodon on an old Dell workstation intended for office work.
I just got a great Jellyfin+*arr setup running off of an old PC. Let me know if you need a hand
This was maybe 2-3ish years ago;
I started with a raspberry pi 4 bundle from Amazon, played around with the Linux filesystem, bash shell, APT package manager and just kept reinstalling the headless Debian 12 OS if I believed to have bricked it beyond repair.
Eventually learned about the Docker Engine & Docker Compose and that essentially gave access to a plethora of software I would’ve have never have used before.
The raspberry pi 4 started to show sluggishness as I started piling more and more services on it so, Instead of buying traditional server grade hardware I liked the small form factor of the Pi so I opted for a 13th gen Asus Nuc with an 12 core i7.
Everything runs beautifully now and I even run Debian 12 on my desktop as well!
I'm running my Proxmox VE on a small asus mini pc with embedded cpu. It can't even match a 5 year old i3 and I'm having no issues.
Running mainly containers and small projects
Anything you need to buy is more expensive than anything you already have.
Especially if youre worried about power costs.
Reuse wha you have, replace when you need to.
If you aren't worried about power costs, yes, go for it.
I calculated the energy cost of running a 100w PC 24/7 for 2 years, covers the cost of a new mini PC + 2 years of its own energy cost. So I just bought a NUC which draws 7-8W. Less noisy too. Laptops usually draw less than desktops though so you may be good 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.Totally agree, I'll add that I run jellyfin, the *arrs, an admittedly low throughout ripping/encoding setup, and a few other containers on a single optiplex micro 7060 and there's a lot of room leftover. I very much appreciate the laptop processor in it because it usually sits idle for 16 hours a day.
Old PC's and especially laptops (make sure to consider removing the battery though) make great homeservers. You can run dozens of services on old hardware.
Leave the battery in and you have a free UPS. Perhaps set it capped at 80% charge to increase its lifespan.
My home media server is an old nuc mini pc i5 16Gb RAM with attached usb storage running on a Linux distro, runs Jellyfin and a few other applications for the household.
In short yes, an old pc will work fine.
These also have the advantage of being nice and quiet, which if you are going to have it in your house rather than a hot garage or whatever can be nice.
I bought a NAS, later realised that it supported Plex and Jellyfin but it was often too slow to do the transcoding. I still use it for storage but there were no real upgrade options. It was cheaper to get an old NUC, rather than replace the NAS with a high spec one to be able to run Jellyfin properly.I’m doing a very similar thing with an old Dell thin client. I did inherit a large server from a company that was upgrading, but I’ve been thinking about downsizing a lot lately so now I use a few small computers on a 10 inch rack.
the best server is one that you already have
Yeah, any relatively modern used PC will be more than enough
My home server is made of literal garbage.
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.
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
While laptop batteries may not have aged well, especially if they're left discharged, one other nice perk is that laptops effectively have an integrated UPS.
Some laptops (Thinkpads in particular) are capable of limiting the battery level via a Linux application called
tlp
so it doesn't go pop when plugged in 24/7.
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).
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?
Could I get a larg HDD and ad it in an enclosure to the Mini PC to handle the media volume?
Like an external USB drive? Absolutely.
My server is always my old desktop hardware. It's a 4th-gen i5 with 16GB RAM and it's keeping up fine. I have thrown quite a lot of work at it too. If you avoid containers, you can serve 20 services off it no problem.
I too, was worried about power costs. Every time I do the maths, the new hardware will be obsolete by the time I make the money back in savings. If you're concerned about environmental impact, the initial manufacture of hardware does more damage than running it over its lifetime.
Dedicated (1U rackmount) servers are always loud and power-hungry. I they idle at 130w and sound like a hairdryer that's been left on.
Find secondhand on Facebook marketplace. Dive into an e-waste bin if you have to.
Do it. Jump in. Just start with whatever you can assemble.
It's a great way to keep your room warm.There are advantages to getting server-grade hardware. It’s designed to run 24/7, often supports more hard drives, ram sticks, processors, etc, and often is designed to make it very quick to replace things when they break.
You can find used servers on sites like EBay for reasonable prices. They typically come from businesses selling their old hardware after an upgrade.
However, for simple home use cases, an old regular desktop PC will be just fine. Run it until it breaks!
While yes, there is a reason why I have retired the Dell server I had for a normal desktop PC. The server was so loud, I could hear it two stairs and two closed doors away.
Yes, but if you care about power efficiency then they really aren't a great option. Most professional server hardware that you can get for a decent price uses significantly more power than an old mini computer or a cheap N100 PC. I own a proliant but rarely power it on due to the fact that I could rent an similarly performant VPS for 2x the power bill. Besides that many server CPU's don't have integrated GPU's and will require additional hardware if you want to run something like Jellyfin.
LabGopher extracts information from active eBay listings to help you easily find the right hardware for your needs.
I love the vibe in this thread/community. You all seem like real cool cats. I appreciate that.
Absolutely, this is great. Knowledgeable people being reasonable.
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.
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.
Not sure how recently you ran this, or what all your were running, but in the past couple of years Paper has hit some pretty major milestones in unlocking threaded processing. Barring some sort of spammy 0-tick redstone nonsense or over the top plugins, I'd wager a Raspberry Pi 4 could handle up to about 5 or 6 friends without seeing any TPS dips. Its really remarkable how far they've pushed performance recently.
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.
I use my previous desktop and a rando openbox thinclient I picked up at Bestbuy for like $250 in a proxmox cluster. The desktop does the heavy lifting on stuff like jellyfin transcoding, immich ML, or just general fucking about with things that require a more powerful GPU (got a 3080ti in there)
The thinclient handles all the lighter stuff that needs to be constantly available, like my traefik instance, dns/dhcp server, etc
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 started with handmedowns donated to my by someone from mastodon that was getting rid of junk computers. All tiny think stations.
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.
That depends. A lot of the power consumption comes from spinning media. Even very old desktop Intel chips have CPU throttling and consume very little while idle. Corporate desktops, even old ones, are usually quite economical.
You don’t need more than an old desktop with a low powered i3/i5 and a free drive bays to build your first NAS. Just install TrueNAS and get going.
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 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.
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?
This rig.
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.
My server pc is just my old computer parts. Ryzen 3 2200G with with 6Gb of RAM. It gets the job done!
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
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.
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.
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.
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.
My server is an HP Small Form Factor Corei5 32GB RAM that I bought on a second hand shop. The thing I paid attention the most was the i5's gen, as some older ones don't include h265 transcoding acceleration, or sometimes h264. This is rather important for Jellyfin. ANything else, just go with it and try!
You definitely want an 8th gen (Intel) or better to have Jellyfin Quick Sync support. It's what I have (i5-8400T) and it offer a fairly decent AVC (h264) and HEVC (h265) transcoding for my usage. However, for futur proofing consider an 11th gen for the AV1 support.
Thanks for specifying. You are correct, and that is exactly the CPU I have in my SFF, too.
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.
Heck yeah. Not always the best for power efficiency though.
Old laptops also a great choice but I really recommend removing the battery first.
Why removing the battery? I was thinking that could be one good thing about using a laptop is that in a way it has its own UPS.
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
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.
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.
I bought a used m920q for this reason, still working on it, I'm at the docker-compose phase
Those are beasts! My homelab has three of them in a Proxmox cluster. I love that for not a ton of extra money you can throw in a PCIe expansion slot and the power consumption for all three is less than my second hand Dell Tower server.
Do you have any good resources I can look at to see if a cluster is something I should look into?
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.
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.
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.
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.
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.
Servers are just really big computers. I started off with a Chinese Raspberry Pi clone, then upgraded to an old mac mini + mini pc + a cheap cloud server (VPS). As you can see, you can turn any old computer into a server.
The cloud is expensive but reliable. Having your own server is cheap but it will go offline with every network fault or brownout. If you’re serious about self hosting I suggest buying a UPS.
Whatever computer you decide to use as a server, make sure it is quiet. When I first started, I tried to use an old 2010 aah workstation as a server, but the fans were so loud I couldn’t sleep, it was driving me crazy.
Generally speaking, yes. My home server is just a Pi.
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 think that's preferable. I have resused my old gaming computer as a server since I stopped gaming for a while.
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.
Its less of a need for powerful hardware and more of a want.
I started off my days with a laptop that had a broken screen. I took screen off and hid it behind my desk, worked perfectly fine, even came with a built in backup battery too xD
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.
I started with my old gaming rig as a server, any decent intel cpu with quicksync is very good for plex and transcoding saving having to buy a cpu if you went with like a server grade cpu with no igpu
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.
Mine are lenovo thinkcentres, ypu xan get a good cpu, low power usage, up to 32GB RAM, one 2"5 drive + one nvme. Very easy to open and service.
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.
It depends, but probably. I use 5-10yo laptops running Debian.
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.