... cause if you don't own it (your data), you ain't it!
Initial writeup: 2024-10-20
So I like to be the DIY guy, at least when it comes to computing. To anyone here on geminispace, this shouldn't sound strange, as I suppose most geminauts to be at least a little sceptical about the "sink or swim" attitude of many internet services today. Pick your poison: OneDrive, GoogleDrive (better: TwoDrive), Drop-Box (shit, I dropped it!), EyeCloud... whatever. Filehosting really can be super simple. Nobody needs to carry around USB-Sticks anymore! At least not for your five files that you like to share to everybody. You can just link to your drive folder!
Anyway. I don't feel comfortable storing all my private parts on another guy's computer. Why would I? I know how to do it myself! Albeit that my original motivation behind self-hosting wasn't that much of a paranoid one: more one of curiosity and spite towards the "you need an account on {Google,One}Drive to access this" attitude where I suddenly need to open up accounts that I never use, for services that are not interesting to me.
So there I was, just entered university, with as little of sysadmin experience as in "Minecraft-" or "Teamspeak-server". (I still hate Discord! For the same reasons as above!) What do IT freshmen do? Yes! They get themselves a Raspberry Pi.
Back then, I just flashed
onto that thang and called it a day; After all, DietPi makes it easy for anyone just starting with self-hosting -- or shall I say: local-network hosting -- to get some software up and running, with sane defaults. Now, I haven't used that for a while, but back then, it was rather solid. But it also "forces" you into their "ecosystem" since they provide you with different tools to install software on a Debian-based system; dietpi-software
and such are curses-based TUIs that are supposed to take away the daunting task of invoking apt
. And it works! It lowers the barrier of entry to DIY-ing your computing.
Initially, there was nothing much going on on that berry; Running the Nextcloud install script of DietPi satisfied my needs as well as gave my raspberry a run for its money; 2G of RAM quickly fill up when all you run is a raging dumpster fire filehosting solution. Did I mention plugins?
My ISP router even had the option to specify some service for DynDNS, so I had myself a publicly available Raspberry Pi. It was abysmally slow though; Simply up-or downloading files pegged the CPU at ~75%... That and the fact that my "hard drive array" consisted of some very cheap USB-SSD from Sandisk which was nothing more than two even cheaper flash chips wired up to a USB-controller.
RAID? What's that?
After a while I spun up a cloud VPS, similar to what everyone usually suggests. I was primarily aided by
which I also consider to be an integral selfhosting resource for starters; They have some good guides about setting up your own "cloud" on a VPS. (But no tutorial on ownCloud. Pun intended!) Their tutorials being for Debian, I kept reference with the ArchWiki since more specific information is always good.
And after a while, I had some services set up, everything was working nicely, uptime was good and my cloud was very fast, at least a lot faster than my old raspberry.
Maybe I should've stopped there?
Thing is: cloud VPS storage is expensive -- every little GB costs, monthly. And if you plan to do this on a long-time basis, what's better than an array of drives at home? Hint!
Actually, I first tried a "two stage" approach: things I need on a regular basis are in the cloud, everything else I backup to a HDD that is attached to my pi; Or shall I say: a pi attached to a HDD? Because I got myself one of those refurbished, enterprise-grade helium-filled drives, and put it into the most sane USB to SATA enclosure I could find on Amazon. Side note: these things suck. Most of all because they try to be smart and spin down the drive, given that there is no activity for a fixed timespan. You cannot disable that; Any hdparm
you throw at them gets ignored -- you either can:
date > /mnt/.dontsleep
.
Naturally, I went with the hacky approach. Still, mostly out of spite, I went on Amazon and sent the vendor of the enclosure a message: "GIVE NON-SPINDOWN FIRMWARE, NOW!", to which they just responded with: "sorry, can't do that." I figured it to be worth a try.
The raspberry solution was bound to fail - after a while the HDD gave up; Probably because no air from any cooling fan ever reached it combined with a hot pi that was ziptied to its top. So it died! Sectors failed. Data was lost.
Back into the cloud? How could I?
In the meantime, I of course made plans how to expand my selfhosting empire. By building a home server! One of my friends already had one of these setups, which is why I was appealed by the nerd-factor of having a spinning array with a dedicated CPU at home.
Question was: what kind of server? I thought of multiple options:
The most nerdy solution. Hinted towards by my friend, there seems to be an online community, mainly on Reddit, where people use a super cheap IKEA-table to mount their server racks. This is possible because those table's legs have just the right space between them for your standard serverrack to fit. And people seem to modify their lackracks heavily, attacking wheels, reinforcing those legs... Go and look up that term on the internet, I'm sure it won't take long for you to find a lead in case you are interested.
The canonical, at-home-based solution. Many variants here are available, most of which are these synology-like NAS'es where they just bolt a cheap ARM SoC to five drives or so... Given the fact that most products there run a proprietary OS and that I am an open-source hippie, I just couldn't go with that approach. But wait! The perfect ARM-based NAS exists:
A Singaporean startup. It has all the bells and whistles:
What a shame that this startup went bankrupt. Whoop-dee-doo! If it would have been available, i'd definetly went and bought one of these.
... was my last option. A lack-rack was not an option because I cannot have server-fans spinning anywhere close to where I sleep -- my living situation doesn't allow for it.
Problem with the DIY approach is that there are no ARM-based motherboards out there that could fit into a Mini-ITX case, and I don't want to have another tower-pc. So, by a lack of options, I went for a deprecated architecture: x86!
And here it is:
In all its glory. Between patches of soundisolation, on top of more isolation -- to keep the vibrations from propagating through my closet, turning that thang into a 100Hz subwoofer -- next to my printer and a cold spare harddrive. All of it on the bottom shelf of my closet! Which I now regularly open during the day and close during the night. Temperatures are alright... :b
Am I happy with it?
Hard to say! Mostly I am. But at first, it was kind of disenchanting to "finally" have that server at home. I mean, all it does is sit around all day while it draws power and its harddrives go click! And that's pretty much the gyst of it: if you are in control of the hardware, you must control the hardware! And that includes not fiddling with the UEFI settings too much -- note to self. VPS hosters make you forget the fact that your stuff needs hardware to run on; They abstract it away from you.
It is pretty cool though, since I right now barely utilize the CPU anywhere near a fifth of its maximum. There is lots of headroom for me to do things with it. I have also probably just over-dimensioned it. Computer goes brrr!
Cheers!
=> View comments | Home This content has been proxied by September (ba2dc).Proxy Information
text/gemini