I have been wanting to self-host recently I have an old laptop it’s a Toshiba satellite m100-221 sitting around it only has 4gb of ram, but I don’t know what is a good starting point for an OS for my home lab I discovered yunohost but heard mixed opinions about it when searching I would like lemmy’s opinion on a good OS for a beginner wanting to start a home lab I would prefer a simple solution like yunohost but would like it to be configurable it’s fine if it needs a bit of tinkering.

  • Björn@swg-empire.de
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 months ago

    Without knowing what you actually want to do, I’d put Debian on it. Very good, very stable, very widespread OS with plenty of tutorials around for whatever you decide to do with it. Do a minimal installation and 4 GB RAM are plenty to play around with.

  • branch@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 months ago
    1. Figure out what you want to host.
    2. Read up on what is required to host that.
    3. Understand what is required to host that.
    4. Skip step 3, wing it and search the internet as you go.
  • dihutenosa@piefed.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 months ago

    Step 1: be psychologically prepared to break it all. Don’t depend on your services, at first, and don’t host stuff for others, for the same reason.

    Yunohost? Good for trying out stuff, I suppose. I haven’t tried it myself. You could also try Debian, Alpine, or any other. They’re approximately equivalent. Any differences between distros will be minuscule compared to differences between software packages (Debian is much more similar to Alpine than Nextcloud to Syncthing).

    4GB of RAM? Don’t set up a graphical interface. You don’t need a desktop environment to run a server. Connect to it via SSh from your regular PC or phone. Set up pubkey auth and then disable password auth.

    I recommend setting up SSH login first, then a webserver serving up HTTP, only, accessible via IP address.

    Next comes DNS - get a name at https://freedns.afraid.org/

    Then add HTTPS, get the certs from LetsEncrypt.

    Finally, Nextcloud. It runs kind of “inside” your webserver. Now you can back up your phone, and share photos with family, etc.

    • Lumisal@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      arrow-down
      1
      ·
      2 months ago

      asks for help starting with new tech stuff for the first time

      Comment that tells them to not use a GUI has 20 upvotes so far

      This is why it won’t be the year of Linux anytime soon. Basically sending someone new straight into the deep end.

      • dihutenosa@piefed.social
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        1
        ·
        2 months ago

        Eh, OP says:

        I am familiar with Linux and comfortable in terminal

        … and is constrained by little RAM. My stance stands.

    • darkan15@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      XKCD 2501 applies in this thread.

      I agree, there are so many layers of complexity in self-hosting, that most of us tend to forget, when the most basic thing would be a simple bare metal OS and Docker

      you’ll probably want to upgrade the ram soon

      His hardware has a max ram limit of 4, so the only probable upgrade he could do is a SATA SSD, even so I’m running around 15 docker containers on similar specs so as a starting point is totally fine.

      • Owl@mander.xyz
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 months ago

        simple bare metal OS and Docker

        That’s exactly what the XKCD is about, what you wrote is just like the chemical formulas they are talking about in the comic for your average person

        • Lumisal@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          2 months ago

          Agreed.

          I’ve been using Linux for years.

          I’ve done minor coding.

          I’ve even installed Adguard and a VPN on a router.

          Built my own water cooled PC.

          I still don’t quite understand what Docker is or does, or containerized stuff. I’ve avoided most networking stuff since XP, and it’s basically a completely other field of tech as far as I’m concerned, like Math is to Physics.

      • Korhaka@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 months ago

        Surely most basic is an old computer and double clicking minecraft_server.jar? Pretty sure that is the first server I ran for people outside of my LAN actually.

        • darkan15@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          2 months ago

          Yeah, I started the same, hosting LAN parties with Minecraft and Counter Strike 1.6 servers on my own Windows machine at the time.

          But what happens when you want to install some app/service that doesn’t have a native binary installer for your OS, you will not only have to learn how to configure/manage said app/service, you will also need to learn one or multiple additional layers.

          I could have said “simple bare metal OS and a binary installer” and for some people it would sound as Alien, and others would be nitpicky about it as they are with me saying docker (not seeing that this terminology I used was not for a newbie but for them), If the apps you want to self-host are offered with things like Yunohost or CasaOS, that’s great, and there are apps/services that can be installed directly on your OS without much trouble, that’s also great. But there are cases where you will need to learn something extra (and for me that extra was Docker).

  • drkt@scribe.disroot.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 months ago

    Take a few steps back and ask yourself what needs you’re trying to fill. I never heard of Yunohost before, but it sounds high-level and abstract. Are you a programmer? Are you familiar with Linux? Are you comfortable in a terminal? Are you familiar with networking?

    Find out what you want to do before installing “everything and the kitchen sink” solutions.

    • artiman@piefed.socialOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      I am familiar with Linux and comfortable in terminal, but I am not comfortable networking, and I am not a programmer.

        • artiman@piefed.socialOP
          link
          fedilink
          English
          arrow-up
          0
          ·
          2 months ago

          I want to host a couple of things like email and immich and Nextcloud for privacy and security and money saving needs I currently use Google photos and hosted Nextcloud by adminforge.de its good and privacy respecting and a nice owner, but I would like more than 2gb.

          • Björn@swg-empire.de
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            1
            ·
            2 months ago

            Don’t host email from home. Many ISPs block that to combat spam and most email servers don’t accept mails from home-IPs for the same reason.

            Most people will recommend not hosting email at all because it is a pain in the arse to set up so that other aervers actually accept your mails.

  • melroy@kbin.melroy.org
    link
    fedilink
    arrow-up
    1
    ·
    2 months ago

    Nobody is saying it, so I will. The most important thing is to just get started!

    It doesn’t matter if you go for a plain Debian server or a fancy proxmox installation with high availability. I believe the most important thing is just to start and experiment. And enjoy!

  • darkan15@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 months ago

    I have a Dell Inspiron 1545, that has similar specs to yours running Debian with Docker and around 15 services in containers, so my recommendation would be to run Debian server (with no DE), install docker, and start from there.

    I would not recommend proxmox or virtual machines to a newbie, and would instead recommend running stuff on a bare metal installation of Debian.

    There are a bunch of alternatives to manage and ease the management of apps you could choose from like, yunohost, casaOS, Yacht, Cosmos Cloud, Infinite OS, cockpit, etc. that you can check out and use on top of Debian if you prefer, but I would still recommend spending time on learning how to do stuff yourself directly with Docker (using docker compose files), and you can use something like Portainer or Dockge to help you manage your containers.

    My last recommendation would be that when you are testing and trying stuff, don’t put your only copy of important data on the server, in case something break you will lose it. Invest time on learning how to properly backup/sync/restore your data so you have a safety net in case that something happens, you have a way to recover.

    • bradbeattie@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      As a counterpoint to no proxmox, I get a lot of utility in being able to entirely destroy and reprovision VMs. I get it adds a layer of complexity, but it’s not without its merits!

      • darkan15@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 months ago

        I get your point, and know it has its merits, I would actually recommend Proxmox for a later stage when you are familiar with handling the basics of a server, and also if you have hardware that can properly handle virtualization, for OP that has a machine that is fairly old and low specs, and also is a newbie, I think fewer layers of complexity would be a better starting point to not be overwhelmed and just quit, and then in the future they can build on top of that.

    • sugar_in_your_tea@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      That sounds overly complicated, why get VMs involved? Just install Debian or something and get things working.

      Proxmox is good if you know you want multiple VMs running for specialized needs. But multiple VMs isn’t happening on 4GB RAM.

      • downhomechunk@midwest.social
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 months ago

        Your approach works too. Something like CasaOS answers OP’s question directly. I was thinking about how I started on this journey. I wanted to play with enterprise level tools at home on repurposed e-waste. So I started with proxmox. But I also came to the table with a couple decades of Linux experience under my belt.

        Those scripts make it so easy. You can paste a command, accept defaults, watch some text scroll by and finish with instructions on how to access the tool you just installed.

        My homelab is low power as well. I’m currently running zero VMs. Everything is done with LXCs. You can run a pi hole on 512 MB RAM.

        • sugar_in_your_tea@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 months ago

          I guess we have different ideas of what “enterprise tools” means. At the company I work at, we use Docker and Kubernetes on AWS ECS. Everything is in the cloud so there’s no hardware for something like Proxmox to abstract over, just Docker hosts running Docker containers.

          That’s what I’m familiar with, and Docker containers are really well documented for a lot of services, so it made a ton of sense for me to start there. I think LXCs and VMs encourage the same types of bad behaviors that can complicate maintenance, whereas Docker containers encourage good behaviors that simplify maintenance (specifically one app per container). LXCs and VMs have their place, but I’m convinced Docker/Podman containers are the best default choice.