TrueNAS Scale Export/Import Pool Issues

Hi folks, I’m currently trying to migrate some pools from my current server to another build with some newer components. According to the documentation I performed a pool export in the shell using “sudo zpool export Data” in the old server, and then used “sudo zpool import Data” on the new one with the drives. It is only 2 x 1TB drives in a mirror, and I’m trying to get this imported properly before I attempt to bring across my 6 x 4TB RaidZ1 Media pool.

Using a Shell, “sudo zpool Status Data” on the new machine gives the following, pool: Data
state: ONLINE
scan: scrub repaired 0B in 00:02:10 with 0 errors on Sun Mar 10 00:02:12 2024
config:

    NAME                                      STATE     READ WRITE CKSUM
    Data                                      ONLINE       0     0     0
      mirror-0                                ONLINE       0     0     0
        6407cffd-3af1-4e0f-b90c-e23dbf6a222a  ONLINE       0     0     0
        00c2e9ea-76f1-498a-b3db-1dc01624101f  ONLINE       0     0     0

errors: No known data errors

Both systems have TrueNAS-SCALE-23.10.2, and zfs-2.2.3-1
zfs-kmod-2.2.3-1

In the new machine, The pool doesn’t show up in the Import Pool as an option to select, but does show up in System Settings\Advanced\Storage Settings under Select Pool.

I’m just not sure what I’ve done wrong in the export/import process and how to rectify it, and then what I need to do differently when I bring across the Media pool.

Would love to know if anyone has any ideas - the searching through forums doesn’t bring up much or I’m not using the right keywords…

Generally speaking provided the new system detect the drives the other pool always imports fine. Are the drives showing up under disks and if so does it show what pool they belong to?

Hey Tom, thanks for the response.

They are showing in the Disks area, and also that they belong to the Data pool, but under the Storage main page there are no Pools listed.

image

What happens when you import pool from the command line?

I followed the directions on the TrueNAs Documentation:

Do I need to do anything different with disks installed on a different system? When physically installing ZFS pool disks from another system, use the zpool export poolname command in the Linux command line or a web interface equivalent to export the pool on that system. Shut that system down and move the drives to the TrueNAS system. Shutting down the original system prevents an in use by another machine error during the TrueNAS import.

The import was done via a Linux CLI on the new machine. Whether I’m in a Shell on the GUI or the CLI, zpool Status Data gives the response as quoted in the original post.

It’s a confusing one…

Not sure how Scale treats this, but here’s a thing I’ve noticed in Core that’s worth checking out. TrueNAS only seems pools mounted at the alt-root directory /mnt. If you have to import a pool from the command line, it probably won’t set the alt-root for you and the imported pool won’t be visible in the TrueNAS UI.

If zpool list shows the pool imported and mounted at /Data, export the pool again and then try zpool import -R /mnt Data.

Have you tried DragonFish 24.04.RC.1 , to see what happens

Do not upgrade the pool , as you can not go backwards

Success! Exported the pool, and then imported with the arguments you suggested. Rebooted and the UI offered it to me as an option to Import.

So using the “-R /mnt” put the pool in the right place for TrueNAS to see it.

I’m now working through the permissions and just trying to verify the small amount of data that was on that pool and if I’m likely to have any further issues before I move my Media pool.

Appreciate the help!

That’s awesome. Congrats on getting it sorted.

So I’ll revisit this post as I’m attempting to export the Media drive now and having different issues.
I have some theories but I am still very new to most of this and a lot of it is over my head.
The Media pool has multiple datasets inside, including the ix-applications dataset which was where TrueNAS set it up when I built the machine (possibly not the best location, but “n00b”…)

When I attempt the zpool export command for this pool, I am getting the following error:
“cannot unmount ‘/var/lib/kubelet’: pool or dataset is busy” even with the -f argument in the command.

Chat GPT has taken me down the path of trying to stop the Kubernetes containers but it’s looking like TrueNAS treats Kubernetes containers differently, and stopping any services accessing the pool is proving difficult.

I have stopped the actual apps running on TrueNAS - Jellyfin, Tailscale & FileBrowser, and this has had no effect on the export attempts.

I am finalising a physical backup of the data on those drives as I don’t have storage capacity onsite that I can duplicate the data in case of corruption, but I’m wondering if it’s just simpler to complete that backup, then add a new pool and wipe the drives when creating it, and copy the data back.

If I can provide any more info on my setup that will help troubleshooting, please let me know.