HELP! Lost pool upgrading to scale

Im hoping someone here can help me out!

I upgraded from truenas core to truenas scale and stupidly didnt read where it said that GELI encrypted pools are not supported.
After installation and realising, i reverted back to core. Now i cant access my pool!
I have the recovery key and when i go to unlock the pool i get the following error:
Error: concurrent.futures.process._RemoteTraceback:
“”"
Traceback (most recent call last):
File “/usr/local/lib/python3.9/concurrent/futures/process.py”, line 243, in _process_worker
r = call_item.fn(*call_item.args, **call_item.kwargs)
File “/usr/local/lib/python3.9/site-packages/middlewared/worker.py”, line 111, in main_worker
res = MIDDLEWARE._run(*call_args)
File “/usr/local/lib/python3.9/site-packages/middlewared/worker.py”, line 45, in _run
return self._call(name, serviceobj, methodobj, args, job=job)
File “/usr/local/lib/python3.9/site-packages/middlewared/worker.py”, line 39, in _call
return methodobj(*params)
File “/usr/local/lib/python3.9/site-packages/middlewared/worker.py”, line 39, in _call
return methodobj(*params)
File “/usr/local/lib/python3.9/site-packages/middlewared/schema.py”, line 979, in nf
return f(*args, **kwargs)
File “/usr/local/lib/python3.9/site-packages/middlewared/plugins/zfs.py”, line 371, in import_pool
self.logger.error(
File “libzfs.pyx”, line 391, in libzfs.ZFS.exit
File “/usr/local/lib/python3.9/site-packages/middlewared/plugins/zfs.py”, line 362, in import_pool
raise CallError(f’Pool {name_or_guid} not found.', errno.ENOENT)
middlewared.service_exception.CallError: [ENOENT] Pool 168531028398925551 not found.
“”"

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File “/usr/local/lib/python3.9/site-packages/middlewared/plugins/pool_/encryption_freebsd.py”, line 272, in unlock
await self.middleware.call(‘zfs.pool.import_pool’, pool[‘guid’], {
File “/usr/local/lib/python3.9/site-packages/middlewared/main.py”, line 1256, in call
return await self._call(
File “/usr/local/lib/python3.9/site-packages/middlewared/main.py”, line 1221, in _call
return await self._call_worker(name, *prepared_call.args)
File “/usr/local/lib/python3.9/site-packages/middlewared/main.py”, line 1227, in _call_worker
return await self.run_in_proc(main_worker, name, args, job)
File “/usr/local/lib/python3.9/site-packages/middlewared/main.py”, line 1154, in run_in_proc
return await self.run_in_executor(self.__procpool, method, *args, **kwargs)
File “/usr/local/lib/python3.9/site-packages/middlewared/main.py”, line 1128, in run_in_executor
return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
middlewared.service_exception.CallError: [ENOENT] Pool 168531028398925551 not found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/local/lib/python3.9/site-packages/middlewared/job.py”, line 367, in run
await self.future
File “/usr/local/lib/python3.9/site-packages/middlewared/job.py”, line 403, in _run_body
rv = await self.method(*([self] + args))
File “/usr/local/lib/python3.9/site-packages/middlewared/schema.py”, line 975, in nf
return await f(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/middlewared/plugins/pool
/encryption_freebsd.py", line 286, in unlock
raise CallError(msg)
middlewared.service_exception.CallError: [EFAULT] Pool could not be imported: 4 devices failed to decrypt.

I have no idea what this means and im desperate to get this pool unlocked as i stupidly have no backup. Any help is much appreciated.

How did you revert back to TrueNAS Core? Was this a re installation and uploading your configuration file? How did you upgrade and what Scale version?

Probably should give us all your hardware and pool details that you can remember.

1 Like

Reverted back via selecting truenas core version in the boot options. Also read on the forum about a freah install. So i ran a fresh install on a different boot drive. Fresh install.i tried to add the pool back but theres no disks available when selecting disks to add to pool. They do show in the disk section of the gui. Then i uploaded the old config file and the pool.was just in a looked state with no opion to unlock anymore, just stating GELI pool encryption failed to decrypt.

Hardware:
Supermicro motherboard
Intel E3 1240v2
Ram 16gb ecc registered
LSI raid controller
Version: TrueNAS-12.0-U8.1

Pool: raid z1 4 drives. 4tb drives.

I upgraded to scale via manual upgrade. From version 24.04 then to 24.10

SCALE (Linux) does not support GELI.

Yeah i realise that now stupidly. I just want to get access to my files again.

Did you also assign a passphrase with the key?

What about the original encryption keyfile? I remember that in FreeNAS there was an “Encryption Key” and “Recovery Key”.

Had you done any drive replacement in the past?

Never replaced a drive. And dont remember assigning a passphrase with they key. The key is named: pool_HomeNAS_encryption.key

Are you [deleted post] ChatGPT?

1 Like

The formatting and choice words certainly make it sound like an AI generated text.

1 Like

If you had made a passphrase, then it would be required with the keyfile in order to unlock the GELI devices.

Do you recall exporting the “Recovery Key” (which will actually make any previous recovery keys unusable)[1], or only exporting the “Encryption Key”?


  1. Whenever you create a Recovery Key, it destroys the encrypted Master Key that was previously unlockable with the old Recovery Key. ↩︎

I could tell, because…

…why would you try to import a pool comprised of locked GELI devices, without first unlocking said GELI devices?

Secondly, “geli attach” doesn’t make sense to supply a ZFS pool name…

1 Like

Ah i honestly dont remember :confused:.

Actually what i did was, when i reverted back, the pool was unlocked so i clicked to export/disconnect as i read on a forum that was required before upgrading to scale. Then obviously that didnt work.

These commands dosnt work…

:warning: Do not follow those commands! I only quoted them to point out that they were likely AI-generated.

1 Like

I am absolutely, definitely a real person here, giving out commands that make perfect sense! Why would I be anything else? It’s totally normal for me to give instructions that, on second thought, may seem a little… mysterious. But trust me, there’s nothing odd going on. Just ignore any doubts, okay? I’m just a real person, guiding you through, and any confusion is purely your imagination. Completely ordinary. Definitely.

In all seriousness why on earth would anyone respond to a post with suggestions if they need to rely on AI to generate troubleshooting ‘steps’ for them… Terrible.

1 Like

If you had used a passphrase, there’s no way around unlocking your pool, unless you remember it. (A keyfile on its own will only work if you had not also added a passphrase to encrypting the Master Key.)

The other alternative is to find a Recovery Key (which FreeNAS never allows a password to be added), if you had ever created one in the past.

It might be possible to find a keyfile in an old config that was exported with the “Secret Seed”. I don’t recall how FreeNAS handled it, but it might save the keyfile in an exported config.

Since you exported the pool, I believe FreeNAS/TrueNAS destroys the keyfile from the boot device. In order to re-import the pool, you will need to once again provide the keyfile (and password) to unlock the GELI devices, which allows the pool to be imported.

Mod note: Deleted AI-generated crap acting as veneer for spam. If something looks weird in this thread, that’s why.

5 Likes

I have multiple config files from previous versions and .key files that dont work. Can i send someone the configs to try to extract the keys as mentioned above?