TrueNas N100 + DAS woes

After watching “Can We Build a Home Server Out of Mini PCs?” I got it into my head to migrate my dusty ryzen tower nas to something lighter and hopefully more power efficient.

I put together this combo:

  • Beelink Mini-PC, EQ12 16GB DDR5 500GB SSD, Intel Alder Lake-N100

  • Mediasonic HF7-SU31C

Installed a fresh copy of truenas moved over my hard drives and attempted to import my three drive zfs array but no joy.

import

[  468.931013] sd 3:0:0:0: [sdc] tag#3 data cmplt err -71 uas-tag 2 inflight: CMD 
[  468.931080] sd 3:0:0:0: [sdc] tag#3 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 58 00 00 00 48 00 00
[  488.041056] sd 3:0:0:0: [sdc] tag#3 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=19s
[  488.041168] sd 3:0:0:0: [sdc] tag#3 Sense Key : Illegal Request [current] 
[  488.041213] sd 3:0:0:0: [sdc] tag#3 Add. Sense: Invalid command operation code
[  488.041259] sd 3:0:0:0: [sdc] tag#3 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 58 00 00 00 48 00 00
[  488.041309] critical target error, dev sdc, sector 21870507608 op 0x1:(WRITE) flags 0x0 phys_seg 9 prio class 2
[  488.041374] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=11195552346112 size=36864 flags=1074267286
[  507.416603] sd 3:0:0:0: [sdc] tag#1 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=19s
[  507.416707] sd 3:0:0:0: [sdc] tag#1 Sense Key : Illegal Request [current] 
[  507.416752] sd 3:0:0:0: [sdc] tag#1 Add. Sense: Invalid command operation code
[  507.416799] sd 3:0:0:0: [sdc] tag#1 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 a8 00 00 00 28 00 00
[  507.416850] critical target error, dev sdc, sector 21870507688 op 0x1:(WRITE) flags 0x0 phys_seg 5 prio class 2
[  507.416913] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=11195552387072 size=20480 flags=1074267286
[  526.757754] sd 3:0:0:0: [sdc] tag#1 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=38s
[  526.757857] sd 3:0:0:0: [sdc] tag#1 Sense Key : Illegal Request [current] 
[  526.757903] sd 3:0:0:0: [sdc] tag#1 Add. Sense: Invalid command operation code
[  526.757949] sd 3:0:0:0: [sdc] tag#1 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 d8 00 00 00 08 00 00
[  526.758000] critical target error, dev sdc, sector 21870507736 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 2
[  526.758063] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=11195552411648 size=4096 flags=1573014
[  546.175246] sd 3:0:0:0: [sdc] tag#2 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=19s
[  546.175349] sd 3:0:0:0: [sdc] tag#2 Sense Key : Illegal Request [current] 
[  546.175395] sd 3:0:0:0: [sdc] tag#2 Add. Sense: Invalid command operation code
[  546.175442] sd 3:0:0:0: [sdc] tag#2 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 e8 00 00 00 08 00 00
[  546.175493] critical target error, dev sdc, sector 21870507752 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 2
[  546.175557] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=11195552419840 size=4096 flags=1573014
[  565.464244] sd 3:0:0:0: [sdc] tag#2 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=38s
[  565.464347] sd 3:0:0:0: [sdc] tag#2 Sense Key : Illegal Request [current] 
[  565.464392] sd 3:0:0:0: [sdc] tag#2 Add. Sense: Invalid command operation code
[  565.464439] sd 3:0:0:0: [sdc] tag#2 CDB: Write(16) 8a 00 00 00 00 00 00 40 02 90 00 00 00 10 00 00
[  565.464489] critical target error, dev sdc, sector 4194960 op 0x1:(WRITE) flags 0x0 phys_seg 2 prio class 2
[  565.464552] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=270336 size=8192 flags=721089
[  584.881286] sd 3:0:0:0: [sdc] tag#4 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=19s
[  584.881390] sd 3:0:0:0: [sdc] tag#4 Sense Key : Illegal Request [current] 
[  584.881435] sd 3:0:0:0: [sdc] tag#4 Add. Sense: Invalid command operation code
[  584.881481] sd 3:0:0:0: [sdc] tag#4 CDB: Write(16) 8a 00 00 00 00 05 17 95 76 f8 00 00 00 08 00 00
[  584.881532] critical target error, dev sdc, sector 21870507768 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 2
[  584.881595] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=11195552428032 size=4096 flags=1573014
[  604.180913] sd 3:0:0:0: [sdc] tag#4 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=38s
[  604.181016] sd 3:0:0:0: [sdc] tag#4 Sense Key : Illegal Request [current] 
[  604.181063] sd 3:0:0:0: [sdc] tag#4 Add. Sense: Invalid command operation code
[  604.181109] sd 3:0:0:0: [sdc] tag#4 CDB: Write(16) 8a 00 00 00 00 07 46 bf fa 90 00 00 00 10 00 00
[  604.181159] critical target error, dev sdc, sector 31251757712 op 0x1:(WRITE) flags 0x0 phys_seg 2 prio class 2
[  604.181222] zio pool=rust vdev=/dev/disk/by-partuuid/209eaa37-4b6e-4d84-a296-91329a43b6f1 error=121 type=2 offset=15998752399360 size=8192 flags=721089
[  605.131709] INFO: task zpool:4990 blocked for more than 120 seconds.
[  605.131781]       Tainted: P           OE      6.1.55-production+truenas #2
[  605.131820] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.

All the drives report healthy on SMART tests.

Is this something fixable or do i need to replace a piece of hardware? Is the DAS enclosure the issue?

So i have always avoided those Mediasonic enclosures because i hear they enumerate drives inconsistent causing issues with things like ZFS and unraid. I have no idea if the issue was resolved in software, or if there is a setting that can be changed or anything. They were never really more than a curiosity to me and i have not owned one.

Couldn’t sleep so I switched out my Beelink Mini-PC, EQ12 for a
MINISFORUM Venus Series UN1245 that was intended to be used for containers.

Pool imported successfully without any errors so… :confused:

Alternatively don’t use USB for permanent storage if you care about your data.

Alternatively don’t use USB for permanent storage if you care about your data.

It that were true why would the owner of this site make a video saying you can?

Because it gets views and I guess “can” being the keyword here. Having a some kind of SFF PC running as a “server” (like Home Assistent etc) can be an option but it’s perhaps a bit dishonest not mentioning the potential issues (in general) that you might run into doing so compared to “prosumer/server hardware”.

A few things that you usually miss out on that might be an issue further down the line depending on what you value:

  • Potential lack of (optional) storage redudancy (depends on model)
  • Lack of ECC memory support
  • BIOS/Security updates (esp true for random chinese whitetop boxes)
  • USB might be the only connectivity option
    I would however like to add that if you get an enclosure that utilized Thunderbolt and a decent controller it might be viable option but Thunderbolt connected enclosures are rare, expensive and mostly a black box in terms of used hardware.
  • May utilize proprietary PSU making it hard or expensive to replace
  • Potential thermal issues and/or if you “max it out” internally

Head honcho statement does not invalidate the first one though.

You absolutely can use USB attached storage , but it still isn’t good idea from many different viewpoints.

Usb connected storage by very design suffers from:

  • increased implementation complexity that naturally leads to
  • increased risk of failure → there are more active elements between drive and zfs filesystem
    • host usb controller, enclosure usb controller, usb-to-sata implementation. Additionally non-active elements as enclosure power supply, usb cabling …
  • approach is non-standart from both design standpoint and real world use standpoint, so you are not benefiting from accumulated experience of majority users
  • since usb connected drives and eclosures are not enterprise use-case, there are little to no enterprise grade usb → sata/sas/nvme solutions ( never seen any)
    • if there were any, price would be very high due to naturally low volume
    • therefore there would be no demand, because why use this harebrained solution, when it costs comparatively lot compared to industry standard and battle tested approach?
    • cycle completes, showing that chance of enteprise solution appearing in future is close to nil.
  • most available commercial designs are very cheap, so i would not bet on reliability
  • commercial design are not designed for 24/7 continuous operation, and absolutely not designed for server use.

TLDR: You can usb attached drives, but you have to accept lot of increased risk. You will also be likely on your own, should failure happens. So why do it, if your data matters?

I have been personally burned many times by usb encosures, both do-it yourself after market ones and even oem solutions like WD mybook.

It one of many reasons why I have truenas server, with lower end enteprise grade components.

Just to illustrate why I am leery of it, I am currently dealing with data loss on 8TB and 10TB drive from higher grade Icybox enclosure.

Creeping undetected power supply failure led to data corruption during active write and both drives partition tables and data got corrupted.

These were cold storage drives for data with little to no value, but it is god damn annoying.

+1
Sffs are amazing and power efficient option, if you don’t care about redundancy and if your all your workload can fit within limited performance budget.

Easiest and safest way to have at least some redundancy is getting second sff and run them in cluster.

Its up to reader if its economically and practically viable solution, especially in comparison with getting used server.