A few days before my local Dick Smith Electronics closed (early 2016?), I went and had a wander through, and picked up an assortment of heavily discounted odds and ends. One item was a 4TB Seagate Personal Cloud (Archived Product Page / Archived Datasheet).
I only paid around $20-$25 for it on the day, and it’s been one of those things that’s never quite found a home. It’s a perfectly serviceable bit of kit, but I’ve always had a more powerful multi-drive NAS available, so it’s not been used long term. I’ve leant it to a few family members for various backups, used it when I needed somewhere to temporarily dump files, thrown it in a bag when travelling etc., but never used any of the “cloud” stuff, nor any of the mobile apps. I’ve always been a bit wary of it (probably unfairly) given the single, aging, mechanical HDD inside. The cloud functionality was canned by Seagate in 2021, and it was EOLed entirely in 2022. It’s been sitting in the pile of stuff at home which is too good to send to e-waste, but needs to find a project or a good home!
All that background aside, a while ago I saw https://wiki.debian.org/InstallingDebianOn/Seagate/PersonalCloud in the Debian docs. Today was the day that I finally came back to properly check it out!
It was a bit of a pain to get open, despite being screwless. It required far more force spudging the plastic cover off than I would like, but I managed to get inside without any breakages. Inside, it has a fairly standard ST4000DM000 4TB 5900RPM desktop HDD and a small PCB - exactly what I’d expect for the era.
The hardware is a Marvell ARMv7 1Ghz CPU with 512MB RAM, 1 GbE LAN, USB 2.0, USB 3.0, and SATA 3.0.
The Debian documentation references clunc to connect to the U-Boot console while the device is booting. I went back and forth for a while trying to get that working, but ultimately had no success. However, the bottom of the Debian documentation references JTAG and UART so it was time to get the toolbox out and go deeper.
Once I’d extracted the PCB, I rigged it up to a TTL to USB converter, and got access to the serial console.
Next step was to connect up a spare Orico 2.5" 1TB SSD I had on the work bench and start a Debian install. I wanted to preserve the original drive (for now) as going back to the Seagate firmware is a massive pain / impossible depending on which forum you’re reading. Also SSD is better
.
Using a combination of the Debian instructions and the excellent information on Nick Holloway’s website to come up with a sensible and functional partition layout, a Debian install was relatively straightforward. For the record I went with 512MB /boot ext2, 512MB swap, and the remainder as ext4 /, as the 512MB boot drive and swap were included on the original Seagate partition layout for their firmware.
I got the latest version of Docker and Portainer running too. My original plan was to turn this into a device for PXE booting on a separate VLAN using iVentoy or netboot.xyz, but both of those projects removed armhf/armv7 support ages ago. I tried a few old versions (~3 years old) of Docker images from GHCR and Docker Hub without success, but I’m out of my depth in the Docker side of things.
Using a 2.5" to 3.5" adapter, the unit comes together quite nicely, but I haven’t buttoned it up completely yet given how much of a pain it was to get open. It runs cool, and absolutely silent now that the HDD has been replaced.
Throwing this one out to the HLB crowd - any armhf compatible PXE boot type projects I’m not aware of? Any other cool ideas for a 32-bit ARM former NAS? Plan B is to install Samba… and turn it into a NAS
.









