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.
Self hosting is doomed until this isn’t the answer.
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.
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 mainstream customers dont self host.
You’re viewing this through an incredibly skewed lense. The average person will never even consider self hosting nor will care, if anything the average person prefers cloud services. Who cares if server grade software is terminal only? Its good enough for the companies that sponsor these projects and its good enough for enterprise level users.
You’re viewing this through an incredibly skewed lense. The average person will never even consider self hosting nor will care, if anything the average person prefers cloud services.
The only lens I’m viewing this through is one that dares to imagine that the Venn diagram of “computer users savvy enough to care about privacy” isn’t 100% contained within the circle of “computer users savvy with the terminal”.
Quite frankly your stance that the ‘average person’ doesn’t care, when this post is LITERALLY from an ‘average person’ who does, is the one that seems off base on its face.
This is literally lemmy, a (relatively) niche platform where somebody is asking about a (relatively) niche subject. I dont think anything about this is a average person. Also im viewing this through realistic lenses, enterprise software developers fund TTY server grade software and people like you who complain about that are very rarely the type of people who contribute or make software. Yeah sorry but imagining is worthless unless you can code and your complaints come off as entitled whining.
This is literally lemmy, a (relatively) niche platform where somebody is asking about a (relatively) niche subject. I dont think anything about this is a average person.
‘Average person’ was in quotes because it’s the language you used to describe someone not comfortable with the command line.
Notice that mainstream customers dont self host.
Yes, that’s what they said.
Notice that it hasn’t amongst mainstream consumers.
What? A niche technical hobby isn’t popular among mainstream consumers? Wow!
Mainstream consumers don’t know words “Plex” and “Home Assistant” either. There are already products that target these people. And there are products targeted at technical people. We need diversity.
Self hosting is just an extension of open source software. It’s only goal is being able to run your own backends of apps to not be exploited by major companies. It’s goal is not to be a niche technical hobby, if that’s your goal in its own right, then get a model train or a Warhammer set.
Mainstream consumers don’t know words “Plex” and “Home Assistant” either.
Yes, they do lol. It’s flat out weird to think that the only people who have ever heard of pirating are software developers and server admins who use the command line.
You got into Self Hosting for unreasonable ideological reasons
I got into self hosting to avoid AWS Fees
We are not the same
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.
It isn’t, self hosting just isn’t for everyone, and it never will be.
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).
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 dedicated 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.
Self hosting will always remain a hobby thing. Most people won’t give the time need to properly admin their own system and an improperly admined system is a risk that you don’t want to take with your precious data. I can’t blame people for not doing this - there are ball games to watch, saw dust to make, kids to raise, and millions of other things to do with your free time such that you cannot do everything you might want to. Sure most people could learn to do this, but it isn’t a good use of their time.
What the world needs is someone trustworthy and cheap enough to handle data for people who have better things to do. Which is why I have fastmail handle my email. I self host a lot of other things though because I don’t know of anyone I can trust to do a good job for a reasonable price.
A desktop environment is a waste of resources on a system where you’ll only use it to install and occasionally upgrade a few server applications. The RAM, CPU power, and electricity used to run the desktop environment could be instead powering another couple of small applications.
Selfhosting is already inefficient with computing resources just like everyone building their own separate infrastructure in a city is less efficient. Problem is infrastructure is shared ownership whereas most online services are not owned by the users so selfhosting makes sense, but requires extra efficiencies.
Could you recommend a source for learning how to use the command line? In the past I struggled with understanding the basic commands and the various flags. I’ve found it difficult to find good documentation, but I would like to learn
It’s been a long time since I learned, so I don’t remember exactly what I used, but at a cursory glance, this one looks good:
https://www.terminaltutor.com/
Also, learning to read man pages will help a lot. Here’s an article on that:
https://itsfoss.com/linux-man-page-guide/
I do remember using “terminal cheat sheets” like this:
https://phoenixnap.com/kb/wp-content/uploads/2023/11/linux-commands-cheat-sheet-pdf.pdf
Thanks for the very practical resources!
deleted by creator
I highly recommend O’Reilly’s Learning the Bash Shell in paperback form: https://www.oreilly.com/library/view/learning-the-bash/0596009658/.
The other responses you’ve received so far don’t offer much insight into the historical background and underlying mechanics of the shell, which are crucial to understanding the "Why?"s of command-line quirkiness.
Thanks for your reply. I agree the ‘why’ is important, for me that usually makes things more intuitive
A 20 year old paperback book seems like a bad choice.
It’s a 36 y/o language, mate. I still reference my copy all the time, and found it to be a great definitive resource when I was learning.
How many bash 4/5 features are you seriously using on a regular basis? What do you think is out-of-date?
Are you under the impression that that language hasn’t changed?
Bash has had some nice minor features and syntax sugar added, but the fundamentals are entirely the same. All the examples in the book work just the same today as they did when it was written.
What was added in 4.X or 5.x that you can’t live without? What do you think has changed that merits inclusion?
Since it seems like you don’t know much about bash at all, I promise the book will help you.
You can be someone who actually knows what they’re talking about instead of making embarrassing, snarky comments that expose your lack of education on the topic at hand.
Maybe you can be the kind of person who isn’t offended by questions and retaliates with personal insults. Just a thought.
This is a fun game approach to learning some bash basics.
TBF ChatHPT is probably your best bet
Edit: Comment was in wrong place, refiled as op level comment.
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 “not scary”.
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
Name checks out
I am very much a Windows user and my journey went like this:
Raspberry Pi with OMV -> SSH on OMV -> Mostly Terminal on OMV -> Docker + Portainer to deploy containers -> Transition to docker-compose -> Setup my own VM with Debian completely in the CLI (excluding the first setup of the VM)I use Linux (primarily Debian because of Raspberry as I don’t like what I hear about Ubuntu) primarily for VMs and servers and Windows as the client OS
I love the command line. A terminal window is always open on whatever computer I’m using at the moment, even when I was running Windows.
But I also like having a dashboard to see what’s going on, all right in front of me. I have ADHD, and if I can’t see it, then I will forget it exists. I use command line to handle more granular tasks, and have various UIs to help me handle other things, like Proxmox (obvious), Dockge (docker stacks), OMV (NAS), Cockpit (all of my computers have this, really good for remote control), and a few other things I’m forgetting.
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.
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
You can install some Linux distro and then install a docker management web UI like coolify. Requires little terminal knowledge. Though you should learn the terminal.
Try the Fedora Server distro, afaik it should come with Cockpit installed: https://fedoraproject.org/server/
The trade off with Fedora is that has a support window of only a year
There are also Rocky and Alma
I personally use Debian. For your case, you can install lightweight desktop environments such as XFCE.
Honestly from my point of view after reading your post, you don’t have a terminal or operating system issue, it feels like you are new to self-hosting and don’t know how to start configuring from scratch.
Ideally you want to look for documentations or keep asking for online help. For example, with installing docker, you would want to refer to this: https://docs.docker.com/engine/install/. Welcome to system admin life, where you spend more time reading/understanding than configuring.
Personally, you can even use AI Chatbot to help you with stuff, just be specific on the system you are on, the goal you are trying to achieve and the problem you are tring to solve.
Which brings me to answer your next point about CasaOS: It exists so that you can skip most of the ‘system admin life’ step. It skips almost all the setup you would have needed to do on a fresh machine, and just leaves configurations. The downside is usually it eats up more resources than a self-configured install since it comes with redundant features you are unlikely to use.
TLDR; Pre-configured OS such as CasaOS is a solid choice if you just want to set it up and be done with it. If you are here to really learn about system admin stuff, then pick any of the Linux Operating system (Debian-derivatives recommended) with a lightweight DE.
Happy self hosting :v
Okay, so CasaOS is easier to set up (but uses more resources and I won’t learn sysadmin stuff) whereas using something like Debian is a bit harder to set up (but uses less resources and learn more!).
Think I might try CasaOS on my 11th gen laptop and plain Debian on my 6th gen laptop and see which I prefer
(I’m not very good with the command line)
Me either so I take a lot of notes about commands and command sequences. Also, I find that Grok is pretty decent at explaining commands. AI is a wonderful tool, but you also need to do your due diligence in ascertaining whether AI has given you the correct information. I would not copy/paste random commands into a production server, but rather I have a small test server for that kind of stuff. Once I have the command, tested, and understand the command, I can then use that in a production environment.
In as much as I love a good WUI, you will have to learn some cli, it’s just inevitable, especially in a headless environment. It may seem daunting at first because there are literally thousands of commands and command sequences. I honestly doubt if even the geekiest nerds on the planet know all by heart. For each command sequence, there are probably hundreds of ways to compose the same command. I would admonish you to download Notepad ++ and start keeping notes on the commands you use. Later on, the fun part is looking back on your notes to see all the commands you now know and what they do.
Core utilities (like ls, cd, cat, etc.) from projects like GNU Coreutils provide around 100-200 commands. Additional tools from packages (e.g., grep, awk, sed) and system utilities (e.g., systemctl, iptables) can add hundreds more. On a system with many packages installed, running compgen -c | sort -u | wc -l in a Bash shell might show 2,000–10,000+ unique commands, depending on the setup.
Writing down different commands on a note seems like a good idea. Thanks!
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!
I run my home media server ( and intel NUC i5, so nothing super powerful) running Ubuntu with CasaOS.
There’s tons of you tube videos to help with CasaOS for self hosting and not just the media side.
I think I only used the terminal to install CasaOS the rest is done from the web gui
Unraid is great for beginners.
Beginner here (to Linux and networking anyways), running Unraid for about 18 months now. Fully agree, it’s been great for actually getting up and doing useful things quickly and relatively pain free.
Eventually I would like to try working backwards and getting things running on a more “traditional” server environment, but Unraid has been a great learning tool for me personally.
It’s like… Maybe some folks learned to overhaul an engine before they got their driver’s license, but lots of people just need to a car to get to work and back today, and they can learn to change their oil and do a brake job when the time comes.
Does Unraid still use JBOD with a single parity disk or have they moved to a sane drive layout?
Still the same but afaik they now somewhat support running zfs
Other than ZFS as someone mentioned already, they also offer dual drive parity now. IMO it’s a good balance to also allow a very flexible and easily expandable array.
Not going anywhere near unraid so long as your (very expensive) license is tied to a USB stick.
your (very expensive) license is tied to a USB stick
Not true. You can link it to your Unraid.net account using Unraid Connect: https://docs.unraid.net/account/link-key/
Sure, it’s not perfect, but still the best option for beginners.
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.
OP also has an XY problem.
Oh god, that… I recently realized that I’ve been fighting that concept with one of my cars for over a year now. Just this week, I finally figured out the right troubleshooting path 😂
I can recommend you Debian, since it’s the “default” for many servers and has a lot of documentation and an extremely big userbase.
For web interfaces, I can recommend you, as you already mentioned, CasaOS and Cockpit.
I used CasaOS in the beginning and liked it, but nowadays, I mostly use Cockpit, where I have the feeling that it integrates the host system more, and allows me to do most of my maintenance (updating, etc.) quite easily.
CasaOS is more aesthetic imo, and allows you to install docker containers graphically, which is better for beginners.
I personally do my docker stuff mostly via CLI (docker compose file) nowadays, because I find it more straightforward, but the configuration CasaOS offers is easier to understand and has nice defaultsThanks, that was really helpful :D
I’ll try CasaOS then, and later maybe I could move to Debian once I get better at the command line!
For what it’s worth, CasaOS isn’t actually an operating system. It absolutely works as an easy way to install and manage your self-hosted apps if you aren’t comfortable with the command line, but you still need to have a working Linux installation.
Yunohost is kind of similar as far as making things easier, but it operates as a standalone OS, so might be more what you’re looking for.
CasaOS isn’t an OS, it’s just the web interface you install afterwards you have Debian or whatever running
OHHH that’s why I couldn’t find out how to install it. Got it.
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.
I ended up installing Debian since Yunohost can’t install and my old laptop doesn’t meet the hardware requirements of TrueNAS Scale
By the way, you can still run the Yunohost installer ontop of your Debian install… If you want to… It’s Debian-based anyway so it doesn’t really matter if you use its own install media or use the script on an existing Debian install. Though I feel like adding: If you’re looking for Docker… Yunohost might not be your best choice. It’s made to take control itself and it doesn’t use containers. Of course you can circumvent that and add Docker containers nonetheless… But that isn’t really the point and you’d end up dealing with the underlying Debian and just making it more complicated.
It is a very good solution if you don’t want to deal with the CLI. But it stops being useful once you want too much customization, or unpackaged apps. At least that’s my experience. But that’s kind of always the case. Simpler and more things automatically and pre-configured, means less customizability (or more effort to actually customize it).
Ah got it. I’ve installed debian since yunohost had issues installing for whatever reason. Weird.
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.
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?