Accidently started install on wrong HDD -> help appreciated for data recovery

OK, I have tried zpool import -f -R /mnt FreeNAS_data now. I’ve entered the command over ssh, but looking at the console I see that it is spitting out a LOT of errors and eventually stops and returns to prompt:

This is the ssh command and response:

root@freenas:~ # zpool import -f -R /mnt FreeNAS_data
cannot import 'FreeNAS_data': one or more devices is currently unavailable

All those error messages are against the drive ada0. This is when you check smartctl -a /dev/ada0 for the serial number to keep track of what physical drive you are referencing. Never assume the drive remains the same, it will bite down the road. Write it down on paper, it will save you some troubleshooting efforts.

Try zpool import -F -R -n /mnt FreeNAS_data to see what happens. If the results look good, remove the -n and run the command for real.

Feel free to post the output if the first command before removing the -n, asking for advice is good.

Question time:
When you listed the output of glabel list, I did not see (or I am blind, not the first time) a5bab846-874d-11e6-baa1-0014fd190deb listed. Please run a glabel list again, let’s find out what the heck is going on and what drive is this.

1 Like

I’m sorry for the confusion.

  1. The errors are showing on the drive with serial WD-WCC4M7ZLPRJ1.
  2. Initially, the system had 2 HDD: a Seagate BarraCuda 3.5 (CMR) (serial: Z4Z88YZB) and a Western Digital Red (serial: WD-WCC4M7ZLPRJ1). The latter was replaced earlier because of a degraded pool warning, but I kept it in a drawer :). To check if the data on this drive could somehow be recovered, I inserted it and checked the output of gpart show /dev/ada1, which is showing gptid/a5bab846-874d-11e6-baa1-0014fd190deb.

This is now the output of the command:

root@freenas:~ # zpool import
   pool: FreeNAS_data
     id: 13274349292440223490
  state: DEGRADED
status: The pool was last accessed by another system.
 action: The pool can be imported despite missing or damaged devices.  The
        fault tolerance of the pool may be compromised if imported.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
 config:

        FreeNAS_data                                    DEGRADED
          mirror-0                                      DEGRADED
            gptid/8402ecbd-8025-11e7-9cc7-0014fd190deb  UNAVAIL  cannot open
            gptid/a5bab846-874d-11e6-baa1-0014fd190deb  ONLINE
root@freenas:~ # zpool import -f -R -n /mnt FreeNAS_data
cannot import '/mnt': no such pool available

So it does look like the older drive seems to be in-tact.

Sorry about the command, I think it should have been zpool import -f -n -R /mnt FreeNAS_data, I screwed up with putting the -n in the wrong location. Looks like /mnt needs to be after the -R which is why the command returned that it could not import /mnt.

Feel free to do a Google search for “zpool import debian man” to see what these parameters actually mean. I like knowing myself.

Keep in mind, while using the -n switch, this is just playing around, no formal commits are happening. If you find it looks good, remove the -n and run the command to make it really happen.

EDIT: My may need to change the -f to -F but that is likely a last resort, and I think you will be using that to be honest, but one step at a time.

1 Like

Thanks for the continuous support!

root@freenas:~ # zpool import -f -n -R /mnt FreeNAS_data
-n or -X only meaningful with -F
usage:
        import [-d dir] [-D]
        import [-o mntopts] [-o property=value] ...
            [-d dir | -c cachefile] [-D] [-l] [-f] [-m] [-N] [-R root] [-F [-n]] -a
        import [-o mntopts] [-o property=value] ...
            [-d dir | -c cachefile] [-D] [-l] [-f] [-m] [-N] [-R root] [-F [-n]]
            [--rewind-to-checkpoint] <pool | id> [newpool]
root@freenas:~ # zpool import -f -R /mnt FreeNAS_data
cannot import 'FreeNAS_data': one or more devices is currently unavailable
root@freenas:~ # zpool import -F -n -R /mnt FreeNAS_data
cannot import 'FreeNAS_data': pool was previously in use from another system.
Last accessed by  (hostid=71abbf30) at Mon Oct  2 03:29:30 2023
The pool can be imported, use 'zpool import -f' to import the pool.

zpool import -fFn -R /mnt FreeNAS_data
and then, if it says “Would import [with some caveats]”, drop the ‘n’
zpool import -fF -R /mnt FreeNAS_data

1 Like

See, I said I wasn’t the expert. But now I know better.

1 Like

I don’t think I’m an expert either… But I’ve followed enough such threads to remember the options: ‘f’ is for ‘force’, as in “the pool was last used by another system”; ‘F’ is for ‘force’ as in “even if it’s damaged”.
If neither -f nor -F works alone, the next step is -fF.

1 Like

zpool import -fF -R /mnt FreeNAS_data seems to have worked!
Thanks to all for your patience and commitment!

Resilvering atm with a new HDD!

3 Likes