Explore⌘⇧E
About
Dwaragesh CDwaragesh C

Fudail is threatening me

Home lab and go crazzyy!

This is my entire journey of creating my very first home server using a borrowed old laptop. I really hope it will help other people out there with my learning and knowledge from my experience! Good luck and happy coding :)

First, the generation of the idea

My friend had an old laptop lying around. He said that it was probably dead, and even if it is alive, it would take hours to even boot up. That was the exact time period when I was starting with linux.

So naturally, the idea struck me. Boot up with linux? Hmmm, that’s nice. But use? ….. This friend in question already gave up hope and brought a new laptop ( A gaming laptop btw). Even if this is restored, it would be practically be dead again without a purpose. Not cool.

At the exact time, my YouTube algorithm somehow gave me a bunch of cool video recommendations (after my search history fully filled with servers, cloud, database, CDNs, etc). One of which is A SELF HOSTED HOME SERVER! I was never the same after watching the video. I saw some miracle and didn’t quite accept it at first sight! Magnificant was the word that came out of mouth at that time!

The video was about converting an old laptop into a NAS servers - in simple terms, your local cloud server,fully yours and no Mark would read your media and files. That seems cool already, but … I don’t have much media or files to store, to be honest… :)

My instant next question is what more can I do - because I have RAM, SSD, a powerful processor, and a display, and I don’t want to watch it go useless. And another idea got in. Can the laptop act as a database?

I was using Supabase at that time for a cloud connected PostgreSQL Database. And I very much didn’t like my data out of my hand (it was all dummy data btw). Reddit really helped me with this. The answer was yes (obviously) and the laptop could act as a standalone database!

After I got a clear plan and a path to move on, I immediately took the old laptop from it’s old place, gave it a clean touch, and booted Ubuntu Server by clearing the disk entirely. Yes, no Windows (I hate Windows haha). Installation was a bit easier to me since I am used to Linux boot up and terminals. A few this and few that, and ta daa! Ubuntu Server is now live! With what? Nothing but a terminal!

For those of you who are not experienced with CLI, this would be an absolute nightmare. But for me …. it was a nightmare too! With no GUI to rely on, it was a different feeling and scary in short. But with documentations and 5 year old Reddit threads around, I felt safe :)

The very first command I did there was checking the disk space and RAM utlilization. The laptop just used 1 GB of RAM and around 15 - 20 GB of the SSD! Windows, take notes!

Why was it minimal? Since there is no GUI, no fancy animation, there was no need for the CPU to render out foul looking UI and images. And hence, the low resource utilization.

Well, I restored the laptop with Linux which would otherwise won’t even boot with MicroSlop filled Windows 11… Am I done? Done what? I haven’t even configured to connect to the Wi-Fi!

Well, without GUI, all you have to do is use config files. Connect to WiFi, install NetPlan and add a config file with your Wi-Fi SSID and password. Connect a new device? The same. These configurations might be a bit irritating at the start and you start hating on Linux already. But the fun part is, you’ll get even more irritated down the line :) Trust me!

Alright, now Wi-Fi is set, you could install your packages and dependencies like Git, Docker, FastFetch, btop and etc through apt commands - don’t use snap. Also note that APT (Advance Package Tool) could sometimes include snap packages. Beware of that and search the internet for the proper command. Snap packages are not good - keep that in mind as of now, and research it yourself when you get good!

Next, what you are gonna do is plan about your server architecture - how is it going to be and how it is going to perform with the choices and work you’re gonna throw at this point. This is the point where the laptop - which was thought to replace Supabase for DB tried to become a SELF HOSTED WEB SERVER - like AWS, Render, Vercel, etc!