Alex Klibisz
Machine learning research intern at ORNL.

Home Media and Network Setup on a Budget: Sharing, Syncing, and Backups with Unraid, Amazon Cloud Drive, and Crashplan

Alex Klibisz, 1/6/2017

Background

I've attempted several times over the last few years to tame all the photos, videos, and important files scattered across multiple computers, external hard drives, and memory cards at my apartment and my parents' house. I'm particularly happy with my latest iteration on this project, so I decided to document it here. I won't go into details on all the solutions I've tried in the past - I'll just focus on what's been working well lately.

Goals

There are a few concrete things that I've been able to achieve with this setup:

  1. Redundant storage on the local area network (LAN) for important files, family photos and videos, music, and movies.
  2. Sharing media in the LAN.
  3. Syncing media from our smartphones and storage to a user-friendly cloud service.
  4. Secure access from outside the LAN.
  5. Backups and restorations with a cloud service.

Setup

I'll describe this setup piece-by-piece based on the diagram below.

home media diagram, see the descriptions below

Home LAN

Gigabit Router

The router exposes an SSH port to the Linux Desktop. It's nice to have a gigabit-capable router for transferring and streaming media within the LAN. I used a gift card to pick up the Netgear N750 Gigabit Router, and it has worked well so far.

Unraid Server

Unraid is a Linux-based operating system that allows you to use multiple HDDs to create redundant storage on commodity hardware. The Unraid software uses a single drive as a "parity drive", from which any other drive can be rebuilt in case of failure. I've verified this restoration with some dummy data, and it took about an hour to restore ~50GB of data. I setup a password-protected share for each member of my family, and a combined media share for family pictures, videos, and music. These are easily mounted on our Windows and Linux PCs. I'm running Unraid on an old Dell Poweredge T105 tower with an AMD quad-core processor, 4GB of memory, a 2TB parity drive, a 2TB data drive, and a 500GB data drive. This gives me 2.5TB for storage, of which I've used about 800GB so far.

Linux Desktop

This is an older desktop running Ubuntu to serve as a conduit for external devices to access the LAN over an SSH connection. Shares from the Unraid server are mounted on this desktop, and I use SSHFS on my Linux laptop to access the shares. I chose to use this intermediate desktop because I wasn't comfortable enough with Unraid to expose it directly to the outside world, and it never hurts to have another Linux box. If you don't have a spare desktop, the same functionality is possible with a Raspberry Pi.

Cloud Services

Amazon Prime and Amazon Cloud Drive

It's nice to have photos and videos accessible online for less tech-savvy family members to access, so I'm using Amazon Cloud Drive (ACD) to store all of our shared media from the Unraid server. At the same time, we use the Amazon Photos application to sync photos and videos taken on smartphones to ACD. Every night a cron job is run that uses rclone to sync the mobile media from ACD to Unraid and the shared media from Unraid to ACD. All of the photos and videos on ACD are automatically made available in Amazon Prime Photos, which has neat features like face and location classification.

CrashPlan Cloud Backups

Unraid allows you to run Docker containers, and I've added the Unraid Crashplan Container to backup all data on the Unraid server to Crashplan.com. The container is easy to install and exposes a GUI to configure the Crashplan client software. I purchased the single-computer unlimited storage subscription since I'm only making backups from this server.

External/Mobile Devices

Smartphones with Photos and Videos

Our smartphones run the Amazon Photos app. Whenever a photo or video is taken, the app automatically uploads it to Amazon Cloud Drive. Every night the rclone script pulls these photos and videos down to the Unraid server, and they are eventually backed up to Crashplan as well.

PCs

PCs outside of the home LAN can use any SSH-based protocol to access the Linux desktop, where the Unraid shares are also mounted. I typically use SSHFS on my Linux laptop, but I've also used WinSCP from a Windows machine.

Price Tag

I think this setup is reasonably frugal, but here is the data to make your own decision:

Item Price Details
Gigabit Router $80 I could have used our old router but it's nice to have the gigabit capability.
Unraid License $59 This allows up to 6 connected hard drives.
Crashplan Subscription $59/year Unlimited backups from the Unraid server.
Amazon Prime Subscription $99/year This gives us unlimited photo storage on Amazon Cloud Drive and access to the Amazon Prime Photos application.

Conclusion

In my opinion, the setup described aboves achieves each of the original goals with a reasonable price tag and simple configuration. Thanks for reading!

Comments