Summary
- Lack of SATA data ports on Milk-V Jupiter hinders NAS functionality, requiring workarounds for proper connectivity.
- Installation of Bianbu OS on microSD card and creating an SMB share is straightforward and relatively painless.
- RISC-V NAS lacks essential features like plugins and PCIe device compatibility, but still offers an affordable budget option.
As a new technology that’s still in its infancy stage, RISC-V systems still have a lot of catching up to do on the performance front. I recently reviewed the Milk-V Jupiter, and while I adore this RISC-V-powered mini-ITX motherboard, I have to admit that it’s a bit lacking in the software and apps department.
But when I was recently trying to come up with some cool project ideas for the Jupiter, I stumbled upon a version of Bianbu OS that’s optimized for NAS workloads. With my curiosity piqued, I decided to play around with the operating system and see how far I could go with a RISC-V. So, here’s a log of all my findings.
The Milk-V Jupiter has some weird quirks
Especially on the connectivity side
If you’ve read my review of the mobo, the lack of SATA data ports was one of my biggest gripes with the Milk-V Jupiter. Sure, it comes with a microSD card slot, four USB Type-A ports (two of which are rated USB 3.0), and a dedicated M.2 slot, alongside support for four extra front-panel USB ports. However, proper SATA connections are a must for any NAS system, and the absence of these sockets meant I had to come up with some workarounds.
On the network side, you do get two Ethernet ports, but since each one is capped at 1G connectivity, I had to temper my expectations for the SSD’s data transfer speeds, which were further bottlenecked by the PCIe 2.0 x2 M.2 slot.
Eagle-eyed readers may have noticed the PCIe Gen 3 x8 socket on the motherboard. Sadly, it's not possible to enhance the RISC-V flavored NAS’ functionality using expansion cards. I previously tried using the GTX 1080 on Ubuntu which, unsurprisingly, didn’t so much as get detected by the monitor. For the makeshift NAS, I tested different non-GPU PCIe devices, though none of them worked with the Bianbu OS. But more on that later…
Installing the OS was easy
And so was creating an SMB share
Credit where it’s due, I have to hand it to Milk-V for making the installation process as straightforward as possible. Since I wanted to save my SSD for the SMB shares, I flashed the NAS.img.zip image of the Bianbu OS on the microSD card. Within a few seconds, I was staring at the Login screen, and after logging in with the default credentials, I was able to enter the main dashboard.
It turned out that this variant of Bianbu was based on OpenMediaVault, which is arguably one of the best NAS operating systems. Setting up a shared folder was relatively painless, though there were a few slowdowns when saving the changes I made to the config file. After that, I had to wipe the 500GB drive before picking a file system.
With OMV supporting BTRFS, EXT4, F2FS, JFS, and a handful of other file systems, there was plenty to choose from, and I decided to go with EXT4. Thereafter, I had to create a shared folder on top of this file system, before making some tweaks to the network and SMB settings to allow my PCs to send files to the Milk-V Jupiter NAS. And sure enough, I was able to transfer documents from my primary rig, with the speed capping out at 118MB/s, which is the theoretical limit of a 1GbE connection.
Initializing a BTRFS RAID array using two external HDDs was also quite painless, and so was enabling an SMB share for this array. As someone who’s used to crashes when testing experimental software, I was surprised that everything went smoothly, and my biggest gripe with the process was that I had to wait for an entire minute to update the settings after each step.
Unraid vs TrueNAS Scale: Which NAS OS is the best?
How does the premium NAS operating system fare against the uber-popular storage server OS?
Some advanced features are broken
The lack of Docker plugins is a real problem for virtualization enthusiasts
With the pros out of the way, it’s time to discuss the main issues with the RISC-V NAS. The lack of support for plugins was the first problem I encountered. Attempting to install any plugin would display the Connection Lost message as the output. After spending some hours troubleshooting, it became clear that it’s impossible to use add-ons with the OS in its current stage.
As such, I couldn't create Docker containers or use the uber-popular ZFS file system on the NAS. This may not seem like a big deal if you’re just starting out, but the lack of these features can be a dealbreaker for many NAS enthusiasts, including myself.
Another drawback of using this RISC-V system is the awful compatibility with PCIe-powered devices. When I tested my non-GPU PCIe expansion cards, none of them worked with OpenMediaVault. After plugging my 10GbE NIC into the NAS and connecting an Ethernet cable to my router, I was unable to enter the login page. Going back to the 1G RJ45 socket solved the issue, but my NIC didn’t show up in the Interfaces tab and the mobo could only recognize the built-in Ethernet ports.
My PCIe-to-SATA adapter was just as useless, as the RISC-V system failed to detect any internal SSDs or hard drives. What’s worse, my PCIe-to-USB card prevented the OS from booting up, and I had to unplug it to access the OpenMediaVault interface!
Nevertheless, it’s a decent option for an affordable NAS setup
Although the ability to run Docker containers and support for PCIe devices rank high on my priority list, it’s important to remember that we're talking about a $60 mini-ITX motherboard. Most SBCs in this price range, including my beloved Raspberry Pi 5, need an additional PCIe-to-NVMe adapter to pair a high-speed SSD with the device. Plus, your average $60 SBC only includes up to four USB ports, while the Milk-V Jupiter supports four additional USB connections via its front panel headers.
Meanwhile, the only other rival in this price category is old server/desktop hardware and their superior performance is offset by their sky-high power consumption. Clearly, there’s a lot to be done before a RISC-V system goes mainstream. But even in its unfinished, experimental state, I daresay that the Milk-V Jupiter works pretty well as a budget NAS.
