M.2 to SATA adapter for NAS

this isn’t really a TrueNAS question, just a general hardware one i think people here may know the answer to.

i have a home NAS built around a motherboard with an integrated N100. it’s worked great, but it’s from a 6 letter Chinese brand, so the English documentation is a little lacking. i can’t find a proper product page from the manufacturer, but here’s a link to the amazon listing.

I’ve used the 6 SATA ports (2 small SSDs for a mirrored boot pool, 4 12 tb HDD’s for data), and the top M.2 slot has a NVME SSD with the Apps pool. So, once it’s time to add more HDDs, I’ll need to get a M.2 to SATA adapter for the second M.2 slot. There are lots of options for adapters, some with only SATA ports, some with 9, and just about everything in between. How many SATA ports can my M.2 slot support?

The issue not the available bandwidth from a M.2 slot, even if it seems to be a PCIe x1 slot, it is the controller:

You might get away with a decent SATA controller without a port multiplier—but good luck finding proper documentation for cheap hardware of this kind.
The safer hardware solution is to strap a SAS HBA to a M.2 to PCIe slot adapter.
But the honest answer is that you’ve outgrown what a motherboard “from a 6 letter Chinese brand” can do.

Mirrord Boot Overkill Monster strikes again…
Use a small NVMe drive as boot device (single!), and you have 6 SATA ports for HDDs. Beyond that you really need a better motherboard.

1 Like

thankfully, my current data pool is only like 60% full, so i’ve got time before i need to add another drive. and i suspected there might be problems with these adapters, which is why i thought it’d be a good idea to have a plan well in advance of when i’ll need it.

would it be possible to migrate in place to booting from a M.2 drive to free up the 2 sata ports? put a drive in there, add it to the boot pool in truenas, power down and uplug the sata boot drives, then go into the bios and tell it to just boot from M.2?

2 additional SATA ports would last me a LONG time, so switching to a non-mirrored boot pool from the M.2 slot is tempting.

Truenas wouldn’t have any problems booting from m.2 - easiest way (assuming you’ve done nothing crazy with cli to your boot drives) would be to backup the config to another system, shut down truenas, remove the 2 boot drives (you don’t really need a mirror), put in the new boot m.2, do a clean install, then import the config.

I’ve had to clean install & import config several times through the years due to me breaking things - it is magically painless.

Edit: having mirrored boot is generally a “for fun” for home use, if you can afford any down time, having your config backed up means you can painlessly re-install, import config & be working again in ~5 minutes or less.

3 Likes

i did not realized the config backup was that powerful. i knew you could rebuild with it, but i didn’t realize it was that easy. if it is, then i agree that a mirrored boot pool is overkill for my type of setup.

i’m not gonna mess with the mirrored boot pool right now since i don’t need additional storage yet, but when i do i’ll transition to booting from a single m.2 drive. my 4 HDD’s are in a RaidZ2 array, so two additional SATA ports would double my current storage, which would be enough for a very long time.

1 Like

If you feel like removing a drive from your boot pool mirror, you use zpool detach command. You can’t remove a drive from the mirror in the GUI, currently It will be something like zpool detach boot-pool sda

1 Like