Find what dataset contains deduplicated data

virtualdxs

Dabbler
Joined
Nov 19, 2018
Messages
34
When I first got this storage server I was messing around with deduplication, and determined that it likely wouldn't be a good idea for the data I had, so I decided not to use dedup. I thought I nuked the dataset afterwards, but evidently I forgot to, as I have 1.43GB of deduplicated data remaining. How can I find out what dataset contains this? It's also possible it's a zvol.

As a secondary question, once it's tracked down, is there a relatively straightforward way to evacuate and recreate the dataset, with something like zfs send/recv?
 

droeders

Contributor
Joined
Mar 21, 2016
Messages
179
You can run the following to see if it's enabled on a given DS:

zfs get dedup your_dataset_name

Anything other than 'off' means it's enabled.
 

virtualdxs

Dabbler
Joined
Nov 19, 2018
Messages
34
You can run the following to see if it's enabled on a given DS:

zfs get dedup your_dataset_name

Anything other than 'off' means it's enabled.
I disabled dedup on all of them awhile ago. Disabling does not un-dedup it, so I need to find where the deduped data is across my datasets that have dedup off
 

droeders

Contributor
Joined
Mar 21, 2016
Messages
179
I disabled dedup on all of them awhile ago. Disabling does not un-dedup it, so I need to find where the deduped data is across my datasets that have dedup off

Take a look at the zdb manpage. I don't have anything to test on at the moment, but specifying the '-d' flag multiple times (with a dataset name) may give you something to work with. I see some other interesting de-dup related options, but they seem to be used for pools.

https://www.freebsd.org/cgi/man.cgi?query=zdb&sektion=&n=1
 
Top