Skip to content

Welcome to The Self-host Wiki

What

This is a wiki dedicated to helping people run services such as file servers, NAS, backup servers, seedboxes etc on their own hardware and local network.

Why

While such services are available easily and for free (or for a small monthly subscription) by companies such as Google, Apple and Dropbox, there are issues such as privacy, non-availability due to loss of internet connection and government censorship. Companies can terminate accounts for undisclosed reasons, accounts can get hacked, trade wars can prohibit companies from providing their services to other countries, and internet lines can go out due to accidents or natural disasters.

Even for those who are not concerned about these issues, self hosting can be a fun exercise in DIY, an extra backup plan in addition to cloud services, or salvaging older, unused hardware such as obsolete smartphones, abandoned Raspberry Pis and laptops with low-res or broken screens/batteries. Such devices can often make perfectly usable, low-powered servers instead of rotting away in a basement, or worse, in a landfill.

For whom

The intended audience is people who are not afraid to dive into the command line, but also do not have the time or mental space to look up tutorials that might be obsolete, scattered across the web, or for a different distribution than they run. The guides are aimed to be as much "copy and paste commands as-is" as possible while also explaining what every command does for those interested.

How

This wiki will primarily focus on two platforms: the latest version of Ubuntu Linux (the instructions for which will usually run unmodified on Raspberry Pi OS and Debian Stable, and will be noted where they don't), and Windows Subsystem for Linux (WSL). The latter is included for those with a working Windows 10 system to be able to run software like NextCloud or Syncthing without having to commit a different machine, hard disk or switching over completely to Linux.

What if I Don't Know How to Use the Command Line?

You are in luck because there is a comprehensive Command Line Course that will provide you a basic familiarity with the command line so that you can easily and confidently follow the instructions, understand what each line of code does and how.

Topics to be covered

Here is a tentative list of topics that will be covered at first. The list wil grow bigger in scope as time goes on: