I am trying to use my old laptops for self-hosting. One has a 6th gen Intel Core i3 (4GB ram), the other has an 11th gen Intel Core i5 (8GB ram). I have previously tried both ubuntu server and desktop but couldn’t get it to work well. For the former I found it difficult to remote ssh and the latter I had difficulty installing Docker containers. (I’m not very good with the command line)
I would like to find an OS that is easier to setup with less of a neccesity for the command line (I would still like to learn how to use it though, I don’t want to get rid of it entirely!). I’ve heard of CasaOS, is that a good option? It seems quite easy to use. What about other alternatives?
If you’re afraid of the terminal, you won’t get far in self hosting. You should learn to use the terminal. It’s not as scary as people make it sound.
You mentioned having issues with SSH into your old server. You can install a desktop environment if it makes things easier for you, but you should still learn how to be proficient in the terminal. Proxmox might help. It lets you create and manage VMs through a web interface. It can be annoying if you’re not super familiar with networking though.
It’s not as scary as people make it sound.
It is not “scary”. It is complicated and requires special knowlege.
I wouldn’t call it complicated, but yeah, it’s special knowledge. So is all of self hosting.
You wouldn’t. A lot of tech people wouldn’t. But it is. I’ve found this out the hard way, after spending dozens of hours trying to figure it out. You’re not doing anyone any favors.
It’s not any more complicated than a GUI, it’s just that the dozens of hours you spent learning to use a GUI was a long time ago, and you don’t remember how complicated it was.
Also, you’re probably exaggerating, because dozens of hours is way longer than it should take to become proficient at the terminal. There are resources online that you can use to learn in a few hours.
it’s just that the dozens of hours you spent learning to use a GUI
This is utter nonsense. You do not need to learn to use a GUI. You just look at the available buttons and click the ones you need. And when you click them they do what they say, they don’t return a “command not found” or “undefined error” with zero diagnostic information. And they work the same regardless of what OS or distro you’re on.
The fact that you don’t understand this is why you’re not qualified to tell people that it’s “easy”.
Ok, so it’s been long enough for you, that you can’t even conceive of not knowing how to use a GUI anymore. Good for you, I guess.
Removed by mod
Self hosting is doomed until this isn’t the answer.
Yeah, this whole “Linux server” thing just isn’t going to take off.
Notice that it hasn’t amongst mainstream consumers.
You know what self hosted projects have been successes? Plex and Home Assistant. You know what projects don’t require the terminal? Plex and Home Assistant.
Notice that it hasn’t amongst mainstream consumers.
Good. Mainstream consumers don’t understand enough about networking and computer security to be trusted to self-host anything beyond desktop applications. And even that is debatable. They’re so bad at it that walled-gardens have become ubiquitous just to keep viruses from running rampant.
Self hosting isn’t likely to ever get to the point of “plug and play”. It’s inherently incredibly flexible and different people will do different things with it. Some people just want NAS. Some people want to build a router. Some people want to have a modest compute farm that they physically own. Some people want a virtualization playground. Or pretty much anything else you can think of, or some combination thereof.
For instance, I custom built a 2-tier + optane cached NAS running proxmox, and I have a handful of old thin clients I can spin up for doing Beowulf things when I feel like it, and I also have another repurposed thin client with an old enterprise-grade SFP+ NIC running pfSense as my router that can support up to 10g (futureproofing).
Imagine if OP asked: “I want to repair/maintain my own car, but I don’t want to open the hood or get under the car. What are my options?”
Obviously there would be some options, but those options would be very limited and not ideal. This is very similar. Self-hosting, like self-repair of a vehicle, requires some foundational knowledge and understanding of your specific hardware, usecase, and needs, as well as the knowledge and ability to bring those things to fruition. There is no single universal answer that applies to everyone, but those skills can be acquired by anyone.
I don’t think self-hosting is any more doomed than self-repair of a vehicle. It’s certainly not for everyone, but it can be satisfying, rewarding, enjoyable, and generally optimized for those who choose to participate.
No. You really don’t want to self host unless you are pretty familiar with how these services work. Otherwise, you’re just setting yourself up to get hacked.
I mean what’s the point of “self” hosting then?
If you have to be a professional server administrator to host one of these services, then why even have a self hosting community as opposed to just a hosting community for server admins to discuss how to set and configure various services? Is this community dedicated to just discussing the uniqueness of managing a home server without a static IP?
If you want to ride a bike, you need to learn to balance on a bike. That will never change. You don’t need to be a professional cyclist.
If you want to self host, you need to learn some basic administration, and that includes the terminal. That will never change. You don’t need to be a professional server administrator.
You might be able to get by with some hand holdy solution that offers a few things you can do, but just like riding a scooter is much more limited than riding a bike, using a turnkey solution is much more limited than setting up your own server.
Imagine wanting to self host but refusing to learn how to forward a port. There are just some things you need to learn. Like I said in my original comment, the terminal is not as scary as people make it sound. Right now, you are the person making it sound scary.
Generally, Linux Servers are best administered from a command line. At least in the beginning to set everything up. In turn they are faster on lower hardware as they dont even have a graphical desktop at all so need less resources. You could of course install a windows server OS. They can be fully administered through Remote Desktop and a GUI.
There are multiple projects to make self hosting more accessible (like casaOS). They automate many steps of the setup and then offer you a webUI for further steps. Maybe have a look here https://github.com/awesome-selfhosted/awesome-selfhosted?tab=readme-ov-file#self-hosting-solutions
Woah, there’s a lot. Nice that there’s plenty of options!
Almost all of selfhosting is editing config files, setting permissions and starting/stopping services.
Setting it up so you can administer a server by desktop is probably as hard as learning how to edit config files from a terminal. Maybe harder.
Yep my thoughts. New selfhosters think the hard part of selfhosting is command line but that’s “kinda” like thinking that the hard part of math is writing numbers on paper. Terminal is just the medium, not the complex part. Navigating filesystem and editing files is easier on the desktop but changing permissions and managing services would be be extremely difficult for a newbie without using the terminal because (almost) every online tutorial uses terminal. OP would have to learn how to translate the terminal command to its desktop counterpart at which point they might as well use the terminal.
OP also has an XY problem. They asked for a system which does not require terminal usage but they should have actually asked for an easy to set up system. People are recommending things like Yunohost though, so it’s fine in the end.
For what it’s worth given the age of this thread and disagreement going on in it, I would recommend Unraid.
Easy for a beginner, with enough to take you up to intermediate level: a web GUI for pretty much all the required terminal commands. It’s been around for years, is not going away, but instead getting updated. Works on any old eBay hardware and most of all, the community there are very supportive of beginners. There’s also lots of YouTube tutorials.
It ticks all the boxes for easy self hosting. It’s just not for Linux protocol purists.
EDIT: I’m learning a lot from this thread, and it’s interesting to see how tolerant people are for self hosting. I would add in my vote for Unraid: it allows me to be dynamic with the time I have for self hosting. I’m sometimes extremely busy and don’t have the time to keep my self hosting updated, so the web GUI is essential for basic maintenance. Then there are times when I do want to waste an afternoon trying something in terminal and learning more, and that’s when Unraid again comes to the rescue. I couldn’t self host with 100% terminal, and neither would I want to with 100% GUI. The best self hosting platform is one that can mix them up efficiently and effectively. I am keen to try some others mentioned here, as some look quite interesting. However NAS is a massive element of what I need for my homelab, so Unraid will stay for now.
The command line is an exceptionally useful tool, you may want to spend a little time getting familiar with it and common command line tools that would probably make self hosting almost anything easier.
It’s like wanting to learn to play guitar but not learning how to restring and tune it, sure it’s not necessary but you’re going to be overly dependent on others to do something you could learn for yourself with a little time and patience, and it will probably broaden your perspective on what you can do once you do get familiar with how to pipe commands together and combine basic tools into something more sophisticated and complex.
don’t go with server variants of the OS. they are intended for boxes that work without display and keyboard, which you have. instead, install any normal distro you’re familiar with. it’s infinitely easier to fix something with the full GUI at your disposal.
this is just your first install, you will iterate, and through that process you’ll get better and leaner, in terms of underlying OS. think of it as training wheels on a bike, you’ll pull them off eventually.
wired connection only, leave wireless turned off, and assign it a static IP address.
don’t do containerS, do one container first. figure out where you’re gonna store the compose files, where it will store data, how you will back that data up, etc. then add another. does it fit into your setup? do you need to modify something? rinse. repeat.
casaOS, aside from it’s murky background (some chinese startup or sumsuch, forgot?) doesn’t provide that path forward nor allows you to learn something, too much hand holding.
good luck.
ah okay, gotcha. So no CasaOS then. Lots of others suggest YUNOHost, is that fine?
I misread that as “self-loathing” and the answer was obvious.
I believe all of these are actually just running Debian as the actual OS underneath, but they give you a webui that makes deploying apps easier.
Of these three, I like the look of Cosmos the most. Seems to be security focused and comes with a reverse proxy and a built in SSO solutions. That’s something that’s usually a pain in the ass to set up yourself.
There’s technically that stupid ass LTT OS but I’m purposely leaving that one out.
Cosmos does look quite good. TrueNAS can’t run on my old laptops so HexOS was never really an option
YUNOHost iso is basically just Debian, but the one-click-install for various self-hosted things is it’s primary purpose. All done through web interface.
I ended up installing Debian since Yunohost can’t install and my old laptop doesn’t meet the hardware requirements of TrueNAS Scale
Not that I’m using them, but what about these two?
Proxmox rox.
https://hexos.com/ is also trying to be a low skill low effort version of truenas, but it does have a one time payment. I didn’t think you’d need a nas specific OS for just one storage laptop though, it’s more meant for large home storage servers.
yunohost
Mint or Ubuntu is like Windows but better.
Hey :) I’m not giving you any recommendations but want to give you my personal experience !
5 years ago I had absolutely no clue about Linux/CLI/networking/docker… You name it ! And I also wanted to repurposed and old laptop as a server.
The first distro I installed on my server was Debian ! Why? Because I remembered my brother said something along the line: “Every server infrastructure is run by Debian or a Debian derivative”. So this sounded like the perfect thing to install as a server distro :) !
5 years later I’m still running Debian on this old laptop and it’s going strong ! Never did it failed me except if I did something wrong over the CLI !
As you guessed it, you will need some degree of proficiency on the command line specially if you install your distro without a graphical user interface, which I would recommend… Yes, the CLI isn’t easy to beginning with and you will do some mistakes that will need a full reinstall of your system… But before you learn to move, you learn to stay up right on your legs and this involves a lot a failing !!
It’s not mandatory, you can install a lightweight GUI and take your time. There are a lot of application with good UI which will help you out ! However, not once did I regret to take the harder route and learned so many things along the way ! After this amount of time in the CLI, I can say I’m getting quite good In navigating my system, keeping it healthy and alive :p !
Okay, If it’s a matter of time I get it ! We only have 24h a day and most of this time is already spend at work/school, family time, friends, sleep, eat ! If you’re lucky enough to have 2 hours to spare to tinker arround, a UI is a good idea to keep a healthy balance between all your personal activities ! But keep in mind, both are thorny and have their fair share of issues and debug time.
Last words, have fun with your system :)
thanks for sharing your experience :D
I honestly would use a headless Linux system with docker compose. You can find premade docker compose files.