Help importing pool - does not fully integrate

Hello,

I am not new to FreeNAS/TrueNas, but I have been gone for a while. I just bought a new system that I wanted to dedicate to my linux development AND NAS, and I wanted to try and build this system on TrueNAS Scale.

A year or two ago I built a system with TrueNAS Scale. It was not quite meeting my needs so I moved it to ubuntu with the same ZFS pool. Now, I want to go back, and something is just not quite right.

This week, this is what I observed:

  • I started with a pool called Apps, and TrueNAS imported (via UI) and tried to mount the pool as /mnt/mnt/Apps.
  • When trying to create datasets so that I could create a user, I would get errors in UI, but when I acknowledged the dialog, the dataset was there.
  • When trying to create a user, I tried to navigate to my old home directory, but it did not know anything about my pool. Even if I typed in the path of my home directory, it would fail.
  • Since, I have renamed and fix the mount point of my pool via the command line.
  • Imported and exporting via th UI
  • I have tried to create a VM + zvol and could never get the VM to start. (might be unrelated)
  • I still cannot get a user and home directory to matchup.

I know this is not quite right, and I am guessing that there is just some configuration option I need to toggle in order for this to start working beautifully again. I kept the message brief since there was so much going wrong.

Thank you in advance for any help the community can provide.

Greg

I am having a similar problem. I exported my pool and moved it to another system (ubuntu). In ubuntu I imported it under a different name. Now I want to move it back to TrueNAS. The pool shows up on zpool list and zpool status and looks fine. I rebooted and when it eventually started back up I can see the filesystems (in the TrueNAS gui) but don’t see the pool. There isn’t anything to import in the Storage pane. Any idea on what I need to do to get this pool completely back in to TrueNAS?

I am able to see the pools and partially create datasets. I just don’t see the filesystem from anywhere in TrueNAS UI.

I will cross my fingers for both of us to find a solution that does not require backup and restore. :slight_smile:

A couple of observations…

When I attempt to create a dataset, I see debug log messages about a UID not existing. Is this an issue?

Also, the error I get when create a dataset in the UI Is this:

[ENOENT] Path not found [/mnt/hewett-pool].

the exception:

 Error: Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 198, in call_method
    result = await self.middleware.call_with_audit(message['method'], serviceobj, methodobj, params, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1466, in call_with_audit
    result = await self._call(method, serviceobj, methodobj, params, app=app,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1428, in _call
    return await self.run_in_executor(prepared_call.executor, methodobj, *prepared_call.args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1321, in run_in_executor
    return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 191, in nf
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 53, in nf
    res = f(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/plugins/filesystem.py", line 637, in acl_is_trivial
    raise CallError(f'Path not found [{path}].', errno.ENOENT)
middlewared.service_exception.CallError: [ENOENT] Path not found [/mnt/hewett-pool].

This is fixed, I hope. When importing the mountpoint really got messed up. I was trying to mount at /mnt/mnt/Apps, but that break everything. I had to manually export and import, changing the mount point to /Apps at that point, it would mount in the right place.

Ref SOLVED - ZFS volume mount point issue | TrueNAS Community

The thing that TrueNAS does differently, compared to vanilla ZFS, is that it specifies the “altroot” (-R /mnt) when importing a pool.

No need to mess with mountpoints for the datasets, including the root dataset. You should leave the mountpoints to “inherit”, which is the default value.

2 Likes