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?
Keep in mind the reason why people generally dont run desktop environments on a server is because unessential software uses more resources and increases the chance of a system crash. I would highly reccomend learning how to use a terminal and installing fish (shell) is a great place to start.
User makes specific request
Top comment is ‘Nah you don’t want that, just learn terminal yo’
Fuck every member of the linux community
User asks specifically how to do terminal based things without using the terminal. Fuck you, specifically.
And you wonder why your desktop adoption is and always will be shit
We’re talking about servers here. Linux is the market leader in server software by an absolutely enormous margin.
It staggers me how dense you are, but the insight into how fanatics lose track of the plot is worth the pain of admission
The thread is about self-hosting with as little CLI as possible, and the only functioning difference between most ‘server’ and ‘desktop’ linux distros is just a prepackaged gui
I mean if that’s what you think, I can tell you don’t work in the industry. Desktop editions generally have more than just a “prepackaged GUI” on top of a server edition.
- Server editions generally have text based installers. This might not seem like a big deal, until you’re installing on a system that doesn’t have any graphics, just a serial console.
- They almost always have an easy way to do headless and network installations.
- They sometimes have additional security modules, like SELinux, different kernel boot parameters, or even different kernel versions. (Although this is less common nowadays.)
- They’re also missing an audio server (different than a GUI), and usually a print server.
- They can often be GBs lighter, which makes a difference when you’re installing on virtual machines with limited disk space.
- They sometimes use different file systems by default (like Fedora used to).
- They might create different swap setups.
- They usually have very different network defaults. Like, desktop editions usually have a firewall, whereas server editions usually don’t (or it’s not enabled by default).
- Server editions often include terminal tools that desktop editions don’t.
- They’ll sometimes have a different network manager (Ubuntu Server uses systemd-networkd while Ubuntu Desktop uses Network-Manager).
- Server editions almost never come with userland file mounting tools like gvfs.
- Sometimes (like in Fedora) a server edition will come with remote management solutions like Cockpit.
- The home directory skeletons will be vastly different on a server vs a desktop.
That’s just off the top of my head. I’m sure there are plenty more I could find.
Now, since you seem like you might accuse me of it, note that I did not say that a server edition and a desktop edition can’t be swapped back and forth by installing and removing packages and changing a bunch of config. They can. But, it’s not “just” some GUI stuff that makes a desktop edition, and it’s not “just” the lack of a GUI that makes a server edition. They are usually quite different.
Source: I’ve been a professional Linux server administrator for 16 years. But don’t take my word for it. Try it yourself. Install Ubuntu server, then run
sudo apt install ubuntu-desktopand see if it’s exactly the same as installing Ubuntu Desktop.Son I’ve been an IT professional since before the internet had pictures and have spun up more linux hosts than you’ve had fap sessions.
and see if it’s exactly the same as installing Ubuntu Desktop.
There is no way to convert a Windows Server into a desktop compatible device without recompiling significant portions of the source code, and at that point all you are doing is recapitulating Windows Desktop
There are several ways, though not trivial, to do that with linux, in both directions. I’ve literally done it.
It doesn’t matter what extra packages get bundled with the distro that at a fundamental level all versions of linux are the same thing under the hood
Desktop? This entire discussion is about server software
No, the entire discussion is about a user that doesn’t want to deal with CLI to self host
There’s really no meaningful difference between linux desktop and server distros like there is in windows, people just run them without the desktop environment to reduce overhead.
Yeah but all self hosting software is TUI, I mean sure you can use a GUI but at the end of the day you’ll need to use a terminal emulator to acturally run the software so there isnt much point in the overhead
Windows has IIS which has a UI
There’s a reason that’s not very popular outside of corporate intranets.
This is Lemmy, not the other place. Please be kinder. No need to abuse people trying to help, especially when OP did mention they wouldn’t mind learning if its easy enough.
Sorry no, I am medically incapable of being kinder to linux fanatics
What? Am I supposed to lie? For advanced tasks such as running server grade software you need to use a terminal, this is the case for every single operating system. FreeBSD, MacOS, and yes even Windows require knowledge of the terminal for advanced tasks such as running server grade software.
yunohost
thanks! Maybe I could check out cockpit and portainer too…
Might want to use dockge instead of portainer.
https://github.com/louislam/dockge
Portainer has… Weird issues.
What kind of issues?
Ive had several stacks just fail to deploy in portainer.
Copy pasting the composes then running them as vanilla yamls or in dockge they worked entirely fine.
Can’t remember the exact compose files but I remember they were Linux server containers. No idea what the issue is/was since its been years.
dockge
Not knocking Dockge, but I have to say I was underwhelmed coming from Portainer. It obviously works for a lot of people, so I might just be ‘special’.
I mean its not really meant to be special. Just a good management frontend.
I meant that I’m special as in incompetent, not that the app was special.
Mint or Ubuntu is like Windows but better.
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.
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
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.
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.
Thanks for your reply. I agree the ‘why’ is important, for me that usually makes things more intuitive
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!
Find a problem or project that requires the terminal to solve it, follow the instructions laid out, and execute. Once you’ve done it, try tolook back at what you did and understand exactly what was going on under the hood. You can’t just “study terminal“ or something, the best way to learn is by doing. Just come up with simple things that need it. For instance, a Linux distribution that requires you to download a few drivers. That’s a really good building block right there. Gets you to understand how to navigate file paths on your computer from your terminal, how to know where to look for things and such
This is a fun game approach to learning some bash basics.
TBF ChatHPT is probably your best bet
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.
Self hosting is doomed until this isn’t the answer.
It isn’t, self hosting just isn’t for everyone, and it never will be.
Imagine if OP asked: “I want to repair 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. Not for everyone, but enjoyable and generally optimized for those who 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.
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.
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.
Yeah, this whole “Linux server” thing just isn’t going to take off.
Notice that it hasn’t amongst mainstream consumers.
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.
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
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).
If you’re afraid of t
The least sanctimonious linux shithead
Name checks out
You can install some Linux distro and then download a docker management web UI like coolify. Requires little terminal knowledge. Though you should learn the terminal.
I’m not trying to be unhelpful. My advice would be to steer into the terminal. Bite the bullet. I use arch and alpine for my servers but Fedora would be fine (but SELinux can be a pain with bund mounts)
Probably just go with Fedora with btrfs for snaps. It has lots of support and is a common choice for servers
How do you troubleshoot Alpine? The one time I tried (later needed to use Debian because the OS was not supported) I could almost only find ressources in conjunction with containerization.
Honestly, I’ve had little trouble. The Gentoo Wiki and Void Handbook have a lot of overlap with OpenRC and musl, respectively.
While the documentation could be improved, the overall experience has been quite good and very stable.
Not that I’m using them, but what about these two?
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.
Windows Server 2022
YUNOhost is designed for this. You can do almost everything graphically via the webadmin. Mine has been running for a couple of years and I’m very happy with it. I have email, XMPP (both of which were installed out of the box), a website, file sharing and a few other things. There are a tonne of apps available, including Fediverse instances, Nextcloud. It’s a very cool thing to have available for making self-hosting more accessible.
YUNOhost
Early on sometime, I deployed Yunohost. At the time there were apps, but the catalog was sparse. I happened upon it again in a search for something else about a week or so ago. Wow! The devs have been really developing it at a cyclical rate. I was impressed. For someone just starting out and trying to get their toes wet, I could see Yunohost being a good starting point.
I guess you could install cockpit (via Terminal, sorry, but it’s pretty straightforward and there are good guides). After that, you could use the cockpit web interface to deploy docker/podman containers. It’s a bit clunky sometimes, but it does the job purely in UI.
You can also manage updates, backups, etc via cockpit if you install the required modules.
As base, I’d use any stable Linux distro that’s reccomended for server use.
for more info for those interested
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?
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 😂
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
















