Skip to main content

How to migrate a dataset from one pool to another in TrueNAS CORE ?

The migration steps.

1. Stopping the services that use the dataset. (recommended).
2. Replicating the dataset to the new pool.
3. Verify that all data is replicated.
4. Put in operation the new dataset.
5. Delete the old dataset when satisfied (or not).
 
The video tutorial can be found by clicking on the title or the picture below.

How to migrate a dataset from one pool to another in TrueNAS CORE

How to migrate a dataset from one pool to another in TrueNAS CORE


1. Stopping the services that use the dataset (recommended).

Go to the services tab and what I do if not certain of which services are used by the dataset I let only running the services from which I am cetain that they do not use the dataset. Also, control jails and Virtual Machines to be sure that they do not use the dataset. In the video I do not stop the services to show it is possible.

2. Replicate the dataset to the new pool.

a. go to Tasks --> Replication Tasks
Replication Tasks
b. add new replication task
c. select source location (example select on this system source /mnt/volume1/VM iso)
d. select destination location (example select on this system destination /mnt/RAID5/VM iso) it will create the dataset with the name that you give for dataset in the destination.
e. leave all other values to there default
f. click on next following screen will appear
add new replication task

g. for replication schedule select Run Once and uncheck the box from Make Destination Dataset Read-only. Click on Start Replication
Start Replication

h. click on close to close the pop-up message
pop-up message
i. check the state it should be RUNNING and you can check the progress in the Task Manager 
the progress in the Task Manager


3. Verify that all data is replicated.

a. when the task is finished go to Storage --> Pools compare the used space if it is the same you are lucky everything is copied to the new Dataset
Verify that all data is replicated

b. otherwise I use rsync to see if there is a difference between the two Datasets

-r copy all directories and sub directories and files
-v verbose show more information
-n for a dry run nothing will be changed or transferred

rsync -rvn source destination

example # rsync /mnt/volume1/VM\ iso /mnt/RAID5/VM\ iso

If you are happy with the output you can omit the -n and the files will be copied to the other dataset.

4. Put in operation the new dataset.

Change everything to point to the new Replicated Dataset in my case it was only one share to change.
a. Select Sharing --> Windows Shares (SMB) and look for the line with the dataset that has to be changed.
Windows Shares (SMB)

b. Select edit and change to the replicated dataset. Followed clicking on the button Save.
Select edit


change to the replicated dataset



5. Delete the old dataset when satisfied.

a. Go to Storage and pools again select Delete Dataset of the old dataset
.
select Delete Dataset of the old dataset

b. Type in VM iso for my example check the box for confirmation and click on DELETE DATASET
Type in VM iso for my example check the box for confirmation and click on DELETE DATASET

Be careful in doing this process try it out with a dummy dataset. Normally I never had a problem with migrating data this way but to be sure keep a backup at hand you never know.


Comments

Popular posts from this blog

Using docker on FreeNas (TrueNAS Core)

In this tutorial we will go over the installation of docker in FreeNas (if using jails is not enough). The first step will be to install a host for docker in a virtual machine. In the documentation for FreeNas they propose to use Ubuntu. My actual version of FreeNAS is FreeNAS-11.3-U4.1.(now TrueNAS CORE 12). The video tutorial can be found here https://hometinylab.blogspot.com/2021/01/follow-up-on-using-docker-on-truenas.html  . The major job will be to install a virtual machine on the FreeNAS platform. Select Virtual Machines in the FreeNAS menu. In the list you will see the existing docker instance running. Know click on the ADD button and we will create a second one for this tutorial. Step 1 Because we are using Ubuntu 20.04 has guest operating system we will select linux . Know we need to name the machine, for this tutorial it will be dockerblog . It is always handy to use the description field docker on Ubuntu for blog tutorial . All what follows we will keep has is.  Click Next

How to fix a degraded pool state in TrueNAS ?

The title could also be``How to change a bad drive in TrueNAS?`` and in my case ``How to upgrade the pool storage space?`` but had it the end it was ``How to trouble shoot during this process?``.  The documentation I used can be found had  https://www.ixsystems.com/documentation/freenas/11.2/storage.html#replacing-a-failed-disk How to fix a degraded pool state in TrueNAS ? In my homelab environment I am using, one off the disks is bad in my TrueNAS. I had to detach the faulty drive to be able to boot the server up again. To replace the disk you must have a replacement disk from the same size or bigger. Because I have to upgrade my pool to a bigger capacity I will change all my 2TB drives to 6TB drives but for obvious reasons I will begin with the bad one: ``I like my data``. Before replacing the drive I will scrub the pool and set the faulty drive offline (which was not possible because the drive was not connected). Replace the drive and adding it again to the pool has a replacement. T