Skip to main content

The 5-Drive NVMe NAS: Building a PCIe 3.0 RAID 5 NAS in a Lenovo M90q Tiny

· 6 min read
Radu S
Second of his name. Rattler of bits and bobs.

If you looked at a 1-liter Lenovo enterprise desktop and thought, "This needs to hold a server's worth of solid-state storage," you are in exactly the right place.

Today, we are combining our custom M90q riser board, a cheap dual-NVMe adapter, and the hardware bifurcation mod, and we are going to cram five NVMe SSDs into a single Tiny6 1L chassis.

The result? A dense, stupidly fast PCIe 3.0 RAID 5 (RAIDZ1) Network Attached Storage device that doubles as a high-tech space heater.


The Math: How Do We Get 5 Drives?

Here is the breakdown of one can fit five drives into a box the size of a hardback book:

  1. Drive 1 & 2: The native M.2 NVMe slots on the Lenovo M90q motherboard.
  2. Drive 3: The dedicated M.2 NVMe slot located directly on the NandFarm PowerRiser (tapping into the unused PCH lanes).
  3. Drive 4 & 5: A generic "Dual M.2 NVMe to PCIe x8 4.0 Split Card" plugged into the PowerRiser's main edge connector.

Because we are forcing the CPU to bifurcate its main x8 link into a dual x4/x4 configuration, that cheap split card can talk to two separate NVMe drives simultaneously at full PCIe 3.0 x4 speeds.

The PCIe splitter card

The PCIe splitter card link


The 5-Drive Math Diagram I/O diagram. Don't tell Lenovo we are doing this; it voids the warranty in at least three different languages.


Hardware Requirements

Before you start ripping things apart, make sure you have your shopping list sorted:

  • Lenovo M90q / P340 / P350: The host brain.
  • The NandFarm PowerRiser: The extra NVMe slot.
  • Dual M.2 NVMe to PCIe x8 Split Card: You can find these everywhere online. Do not buy a card with a PLX/switch chip. You just need a "dumb" physical splitter card, because our motherboard is doing the actual bifurcation work.
  • 5x NVMe SSDs: Ideally, you can use identical drives for a clean RAID array or different ones (at same capacity) for redundance.
  • Low-Profile Heatsinks: Essential. We are packing a lot of heat into a tiny volume.
  • A Top-Mounted Fan: (Optional but highly recommended). Use the fan header on the riser (wink).

Hardware Loadout


The Build Process

Step 1: The Bifurcation Mod

If you haven't done it yet, you need to hardware-mod your motherboard to split the x8 lane. The dual adapter card will not work if the system is still running in monolithic x8 mode—it will only see one of the two drives on the card. 👉 Read the Full PCIe Bifurcation Guide Here

Step 2: Populate the Motherboard & Riser

Install your first two drives under the motherboard shield. Then, flip the system over and install the third drive directly onto the back of the NandFarm PowerRiser.

Step 3: The Split Card

Install drives four and five onto your dual PCIe adapter card. Slap some low-profile copper or aluminum heatsinks on them. Insert the whole assembly into the PowerRiser's x8 slot.

Clearances will be tight. If it doesn't fit, don't force it—get a smaller heatsink.


Software Setup: Taming the Beast in TrueNAS SCALE

Now that the hardware is crammed in, we need an OS that can handle it. I chose TrueNAS SCALE as it is perfect for my needs.

We are going to configure these five drives in a RAIDZ1 pool. RAIDZ1 is ZFS's equivalent of RAID 5. It uses single-parity, meaning you get the combined storage capacity of four drives, and one drive is sacrificed to the data-protection gods. If one drive dies from thermal exhaustion, your data survives.

1. Verify the Drives

Boot into your TrueNAS web interface and navigate to Storage -> Disks. If your hardware bifurcation mod was successful, you should see exactly five unassigned NVMe drives staring back at you. If you only see four, your bifurcation mod failed, and the dual adapter card is only passing through one drive. Back to the soldering iron.

2. Create the Pool

  1. Go to Storage -> Pools and click Add.
  2. Click Create New Pool.
  3. Name it something intimidating (e.g., TinyTitan, M90q-Vault).
  4. In the Available Disks list, select all five of your NVMe drives and click the right arrow to move them to the Data VDEV section.

3. Configure RAIDZ1

  1. With all five drives in the Data VDEV, TrueNAS should default to a RAIDZ1 configuration.
  2. Double-check the warning messages. TrueNAS might complain if the drives aren't perfectly identical in size.
  3. Check the estimated capacity. If you used five 2TB drives, your usable capacity should be roughly 8TB (minus ZFS overhead).
  4. Click Create and confirm the prompt.

Let's be honest, installing bare-metal TrueNAS directly onto a Tiny6 might seem like using a Bugatti to tow a lawnmower. The M90q/P340 platform can pack an absurd amount of compute power for its size. Sometimes sporting Intel Core i7 or i9 processors with up to 10 or more cores, massive multi-threading, and robust Intel QuickSync hardware acceleration. Devoting all that good silicon strictly to calculating ZFS parity is a waste of potential.

However, we don't want to waste a precious storage port or figure out how to shoehorn an external drive just to run a hypervisor. (though this can be an option too)

Because TrueNAS is built on Linux and features a robust native App ecosystem, you can install it bare-metal directly and let it handle both your storage and your compute services directly. With the remaining 80% of your processor's horsepower, you can spin up a whole fleet of services directly from the Apps tab:

  • Plex or Jellyfin: Install the native app, give it access to the Intel iGPU, and let QuickSync handle smooth 4K hardware transcoding without breaking a sweat.
  • The Arr Suite & Torrent Servers: Fully automate your Linux ISO acquisition pipeline directly alongside your storage pool. No network overhead required.
  • Samba & Cloudsync: Share that massive storage pool with the rest of your local network or securely sync it to your offsite backups seamlessly.
  • WireGuard: Run your own VPN container so you can securely tunnel back into your chaotic micro-datacenter from a coffee shop halfway across the world.

Final Thoughts

You now have a 5-drive, all-NVMe RAIDZ1 array running at PCIe 3.0 speeds inside a 1L chassis. Even with the overhead of ZFS parity calculations, this setup will easily saturate a 2.5GbE or even a 10GbE network connection if you manage to route one out via an M.2 A+E key adapter.

A word of caution on thermals: Five NVMe drives under heavy sustained writes will generate serious heat. Do not skip adding a fan to the PowerRiser's fan header, and keep an eye on your TrueNAS dashboard temperatures during the first big data scrub.

Happy data hoarding.