Those that know me, know that I have many things to keep me distracted. Some of my favourite distractions involve Raspberry PI’s. If you are not familiar with a Raspberry Pi, they are a very low cost, but powerful credit card sized computer. I discovered them a few years ago and have done many things with them since. I currently have a dual boot Raspberry PI 3B+ running my RetroPi and OSMC on the family room TV and a Raspberry PI 4B running LibreElec on my living room TV. the Raspberry Pi can load different operating systems. Fo me, I have installed and played with Raspbian Linux and Kali Linux. On the application side, I have also built an Apache web server and a Pi-hole server at other times. In the past week, I decided to use a Raspberry PI 4B to solve a problem that has been annoying me for a while.
Between our personal phones, work phones, iPads, home laptops, and work laptops, we generate a lot of photo and video content that is stored in a lot of different places. To solve this originally, I bought a WD MyCloud home server to automatically upload all that content to one place. And, for a while and that was a good solution. However, very quickly, all the photos/videos in one place quickly became unwieldy. We share a lot of photos/videos back and forth and that has led to a ton of duplicated content. The other thing that has been annoying me is trying to find specific photos or videos that end up in the cloud. The myCloud web and app interfaces are clunky and that makes finding the content awkward. It also does not manage non-video/photo content very well. Also, I worried about all our photos/videos being stored in a single drive. What if it failed?
I could keep buying more drives, but I was looking for something a little more scalable for the family. That is when i started thinking about building a NAS (Network Attached Storage) server. And, of course, I naturally thought about the Raspberry PI 4B in my drawer waiting for a purpose. First, I used my birthday Best Buy gift cards to buy a 5TB USB backup drive — ya, even my wife was surprised that I would buy that as a birthday gift for myself. Next, I installed Raspbian Linux (specifically the new Rasbian Buster) on a 32gb SD card, plugged my raspberry PI into my router, and booted it up. Setting up the SAMBA software and mounting the 5TB drive took almost no time at all via SSH. There are a lot of posts on how to do this, but if you are interested, I started with this: Build a Raspberry Pi NAS.
It was an almost effortless process to get my newly built NAS server working, as mapped network drives, with both the PC and Mac laptops. I even found a cool free app, called FileBrowser Go, to access my NAS drive from our iPhone and iPads. The latest Raspberry Pi 4B with 4gbs of ram seems to have no problem handling even big files to and from the NAS server. In terms of performance and accessibility, my new NAS server is meeting my expectations. Total costs were about $130CAD for the Raspberry PI 4B with case, cooling fan and 32gb micro SD card and $140CAD for a 5Tb USB drive. That is way cheaper that a commercial NAS server.
The next thing i wanted to be able to do is share our photos and videos more easily…especially to our Samsung TV. After a little research, I settled on adding a Plex Media Server on top of my NAS server. Out of the box, Plex allows me to index and stream video content from my NAS drive in a browser, on my mobile devices, and through a Android Plex app on my Samsung TV. It will even let me share content with Friends and family outside of my home Network, if I wish it. What surprised me is how many forgotten video clips were among all my photos.
I was able to copy all the files on my cloud server to my new NAS drive. However, much to my annoyance, the WD MyCloud server will not automatically back-up to my NAS server. Apparently, it will back up to it’s own WD NAS server, but not to a non-WD product. If I don’t want to spend a bunch of time manually backing up from WD myCloud to my NAS server or buying another expensive drive, I will need to come up with a better, more automated solution. I am playing with writing a Perl script to RSYNC the folders on the myCloud box. More on that to come in the near future.
Stay tuned! Next steps for my Plex/NAs servers are:
- Write Perl script for RSYNCing myCloud server to NAS server
- Install plugins to better manage our photos in Plex
- mount new NAS server as network drives on the other two Raspberry Pis
- Add a second drive to the NAS server as a redundant backup drive.
- Looking at adding cloud functionality to replace myCloud server