PiNAS

I would like to share my latest creation. PiNAS is and attempt at making small home server based on Raspberry Pi 3B+.

Main components:

  • Raspberry Pi 3 Model B+
  • Raspberry Pi Universal Power Supply 5.1V 2.5 A
  • Ultra-thin Aluminum Alloy CNC Case Portable Box Support GPIO Ribbon Cable For Raspberry Pi 3 Model B+(Plus)
  • WD Elements 2.5” USB 3.0 4 TB
  • SanDisk Ultra microSDHC UHS-I 16 GB

Raspbian Stretch Lite is the choice of OS.

The easiest and clean way I’ve found to transfer the root partition from the SD card to the HDD: How to Boot Raspberry Pi from USB Hard Drive

Previously I’ve used 3B and had no problems booting from the USB HDD. 3B+ is a different animal. I’ve spent hours researching why it did not booted directly from the HDD. Finally came across this article: Raspberry Pi boot modes

So I have to keep the SD card with fresh bootcod.bin on it at boot time. Afterword’s the card is not used as my root partition is located on the USB HDD.

I’ve tried this first: How to boot from a USB mass storage device on a Raspberry Pi but it did not work! Than this: Raspberry Pi 3 USB booting
No Luck!

In this article it is explained Why in a very detailed manner: Pi 3 booting part I: USB mass storage boot beta

After that everything works as expected. Now on boot Pi reads the boot partition from the SD card and continues from the HDD.
In contrast my 3B just reads everything from the HDD and there is not SD card needed.

Now is time to install Docker and Docker-Compose: How to run docker and docker-compose on Raspbian

Note this is my first 3B+ model. Previously I’ve used 3B and had no problems booting from the USB HDD. 3B+ is a different animal. I’ve spent hours researching why it did booted directly from the HDD. Finally came across this article: Raspberry Pi boot modes

So I have to keep the SD card with fresh bootcod.bin on it at boot time. Afterword’s the card is not used as my root partition is located on the USB HDD.
I’ve tried this first: How to boot from a USB mass storage device on a Raspberry Pi but it did not work! Than this: Raspberry Pi 3 USB booting No Luck!
In this article it is explained why in a very detailed way: Pi 3 booting part I: USB mass storage boot beta

After that everything works as expected. Now on boot Pi reads the boot partition from the SD card and continues from the HDD.
In contrast my 3B just reads everything from the HDD and there is not SD card needed.

Now is time to install Docker and Docker-Compose: How to run docker and docker-compose on Raspbian

Adding Samba and Deluge was quick and easy.

As inspiration of this build and post I would like to tank to the creators of the following posts:
Raspberry Pi Home Server – really liked the UPS and Dynamic Fan Control.
Create a hardened Raspberry Pi NAS – some of the configurations came quite in handy.

PiNAS 2.0
As you know Raspberry Pi 4B was announced last week. It will provide 4 GB RAM, Real Gigabit Ethernet and 2 USB 3.0 Ports. Hope I’ll be able to attach two USB 3.0 HDDs and maybe build a software RAID.  For the moment I’ll have to wait as even USB HDD Boot is not implemented in Raspbian Buster. With a bit of luck in a couple of months all will be fixed and working.

Until then my setup provides almost 20 MB/s throughput over Samba.