# Software This is a quick overview about what software I am using and why. #### **Operating system:** ##### [Ubuntu 20.04](https://ubuntu.com/download/desktop?version=20.04&architecture=amd64) I used [openmediavault](https://www.openmediavault.org/) (omv) in the past, but the process of upgrading from one version to another seemed tedious and the fact that the version of Debian omv was using is missing required drivers for the network interfaces of my mainboard made me look for an alternative OS. I decided to go with Ubuntu because I have another server running it and have had mostly good experiences with it. I wanted to use Ubuntu Server for a lightweight installation without needless bloat, but that was missing drivers for my mainboard too and I couldn't even boot via live USB, so I had to go with the Ubuntu Desktop version. After successfully installing the OS and setting up a SSH server, I deleted the Ubunutu desktop package and changed the system runlevel target to multi-user so that I can negate the negatives of having to install the Desktop version. #### **Drive management:** ##### [mergerfs](https://github.com/trapexit/mergerfs) I used mergerfs on my old NAS and loved it, so I wanted to go with it again. A few reasons why: - easy to setup and maintain - able to add/remove a disk of any size and format whenever I want - failure of one disk does not break everything (only the files on the failed drive are lost) - all individual drives are combined together into one pool (which than can be separate again into individual directories/shares) More about how mergerfs works [here](https://github.com/trapexit/mergerfs#how-it-works). ##### [snapraid](https://www.snapraid.it/) Backup program for drive arrays, stores parity information of data and it recovers from drive failures. I didn't want to go with a conventional RAID to be more flexible in my infrastructure, but still be able to recover from a drive failure. Snapraid seemed like the ideal solution for that. Like mergerfs it is easy to setup and very flexible, I could add a new drive or replace an old one whenever I want in whatever size (as long as the new drive is not bigger than the parity drive) without fearing data lose. Unfortunately, there is no snapraid release for Ubuntu 20.04 available atm, but it is super easy to compile snapraid yourself. Download the [latest release](https://github.com/amadvance/snapraid/releases) and follow the [install instructions](https://github.com/amadvance/snapraid/blob/master/INSTALL). #### **Monitoring** - hddtemp: Monitoring drives temperatures - netdata: Monitoring system performance/load/temperature/etc. via web browser - smartmontool: Monitoring drives health with S.M.A.R.T. #### **Networking** - ssh: Captain obviouse - samba: Sharing directories with Windows and Linux systems (see no reason to use nfs currently)