ZFS receive from non-TrueNAS system

JanHolbo

Cadet
Joined
Aug 17, 2021
Messages
2
Preamble:

I have been running a Debian 10 home server with ZFS on Linux. On this server I have 1 pool with 3 datasets. The pool was built as a raidz1 with 5 x 500 GB HDDs. One of these have subsequently been replaced by a 1 TB drive.

I now wish to move to TrueNAS Core. I have a decomissioned PC on which I have installed TrueNAS Core and a pool with 2 x 3 TB mirror vdev.

I was hoping to do a zfs send/receive over the network but I have yet to manage to allow root login over SSH on the TrueNAS box. I have been searching but so far without luck for any solutions.

I am fairly knowledgable about Linux systems but less so on *bsd.

Goal: transfer the datasets from the pool on the Debian server to the new TrueNAS server and then subsequently install TrueNAS and recreate the pool - perhaps as a 6 disk raidz2 and then use this as a backup - setting up automaic replication through the TrueNAS ZFS send/receive GUI page.

Problem:
Plan B is to move the data with an external hdd as the zfs send/receive medium. I have done the appropriate zfs send on the debian box and the dataset stream on that hdd. But how to do the zfs receive?

At first my plan was to plugin the USB drive, then go to the shell to mount it and issue the zfs receive command. But somehow I cannot manage to mount the drive:

Code:
mkdir /mnt/usbtmp
mount /dev/da0s1 /mnt/usbtmp


But I get device not found.

Plan B I thought - what about the GUI? I tried importing the disk but that just imports the files - not the dataset?

I would prefer to do the transfer over the network so that is really priority one. I have seen tutorials on how to do this transfer with SSH keys rather than login but those have failed me. Maybe I haven't seen the right one, so if you have a link, please share it.

Second solution would be to mount the USB drive and do the zfs receive from there - but how do I mount the drive?
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
You don't mount ZFS pools manually.

What you probably want to do is import it (from the GUI is best if you can).

If not, then with zpool import

If you need to do it first, use zpool import -R /mnt poolname to set the pool to mount in the TrueNAS standard location.
 

JanHolbo

Cadet
Joined
Aug 17, 2021
Messages
2
I am not trying to import the pool. The pool resides on hdds on the Debian box. I am trying to either do the entire zfs send+receive via the network or alternatively do the zfs receive of the zfs send stream that is residing on the USB hdd
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
Connect it via USB, import the pool (evidently not meaning what you think it means), then do the send/recv and export/disconnect the pool when you're done.
 
Last edited:
Top