1st Virtual machine

I have a ‘share’ dataset already setup
Whenever i try and create a virtual machine, I get 2 issues:
1 - I cannot get my nVidia card recognized, and I did not find a compatibility list
2 - TrueNAS states that there is a permission problem if the libraries to access my share, and I don’t seem to find where to resolve this.

Any help will be appreciated.

We’ll need a lot more info:

Hardware
Software version - use 24.10.2
What is working?

What isn’t working?

HW - CPU i7-8700/ GPU nVidia GTX1070M/ 64GB RAM/ 1st NVMe (OS - 1TB)/ 2nd NVME (6 x SATA3 converter - connected to external 6x SSD rack, and powered through the built-in SSD power supply).

TNS ver. 24.10.2

ALL HW IS WORKING !!

The virtualization is not working, or simply to finicky. I had no such problems with Synology DSM nor with Asustor ADM.

I appreciate that TNS is mostly community effort, but after a while I’m really considering ditching it.

I made the effort to try it as a virtual machine server. It is of no use to me if TNS does not play well.

Its hard to fix a bug defined as “not working”… we’d appreciate a bit more color on what specifically is going wrong and are there any alerts or messages.

On the positive side, the Fangtooth release provides an overhaul of the KVM virtualization and includes things like secure boot for windows servers. Beta in Feb, but available for test as a Nightly.

1 Like

This is why I elected to add this time around the error report I get:
++
[EINVAL] attributes.path: Filesystem permissions on path /mnt/vtn/Share prevent access for user “libvirt-qemu” to the path /mnt/vtn/Share/cachyos-desktop-linux-241221.iso. This may be fixed by granting the aforementioned user execute permissions on the path: /mnt/vtn/Share. [EINVAL] attributes.path: ‘libvirt-qemu’ user cannot read from ‘/mnt/vtn/Share/cachyos-desktop-linux-241221.iso’ path. Please ensure correct permissions are specified.

====================================================================================
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 211, 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 1529, in call_with_audit
result = await self._call(method, serviceobj, methodobj, params, app=app,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/service/crud_service.py”, line 230, in create
return await self.middleware._call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/service/crud_service.py”, line 261, in nf
rv = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 49, in nf
res = await f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 179, in nf
return await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/vm_devices.py”, line 161, in do_create
data = await self.validate_device(data, update=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/vm_devices.py”, line 292, in validate_device
await self.middleware.run_in_thread(device_obj.validate, device, old, vm_instance, update)
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, in run_in_thread
return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1364, 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/plugins/vm/devices/device.py”, line 45, in validate
verrors.check()
File “/usr/lib/python3/dist-packages/middlewared/service_exception.py”, line 72, in check
raise self
middlewared.service_exception.ValidationErrors: [EINVAL] attributes.path: Filesystem permissions on path /mnt/vtn/Share prevent access for user “libvirt-qemu” to the path /mnt/vtn/Share/cachyos-desktop-linux-241221.iso. This may be fixed by granting the aforementioned user execute permissions on the path: /mnt/vtn/Share.
[EINVAL] attributes.path: ‘libvirt-qemu’ user cannot read from ‘/mnt/vtn/Share/cachyos-desktop-linux-241221.iso’ path. Please ensure correct permissions are specified.
++

VMs access storage ia an NFS/SMB share. are you doing that?

You have bad permissions on that location /mnt/vtn/Share

Give us the output of ls -al /mnt/vtn/Share

Most likely missing execute bit.

Thanks for the referral,
I amended the user rights for it, but now it refuses to run for another reason, which I need help with (recreated the virtual machine from scratch)

The error is:

error
CallError
[EFAULT] internal error: qemu unexpectedly closed the monitor: 2025-01-31T21:40:22.003113Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/supervisor.py”, line 189, in start
if self.domain.create() < 0:
^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/libvirt.py”, line 1373, in create
raise libvirtError(‘virDomainCreate() failed’)
libvirt.libvirtError: internal error: qemu unexpectedly closed the monitor: 2025-01-31T21:39:16.152106Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 211, 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 1529, in call_with_audit
result = await self._call(method, serviceobj, methodobj, params, app=app,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 179, in nf
return await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 49, in nf
res = await f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/vm_lifecycle.py”, line 58, in start
await self.middleware.run_in_thread(self._start, vm[‘name’])
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, in run_in_thread
return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1364, 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/plugins/vm/vm_supervisor.py”, line 68, in _start
self.vms[vm_name].start(vm_data=self._vm_from_name(vm_name))
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/supervisor.py”, line 198, in start
raise CallError(‘\n’.join(errors))
middlewared.service_exception.CallError: [EFAULT] internal error: qemu unexpectedly closed the monitor: 2025-01-31T21:39:16.152106Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)

ALSO:

ls -al /mnt/vtn/Share

drwxrwxrwx nk nk
drwxr-xr-x root root
-rw------ nk nk .bash history
drwxrwx— nk nk .recycle
----rwx— libvirt-qemu libvirt-qemu cachy-desktop-linux-241221.iso

Which I have no idea if I need to be libvirt-qemu admin somehow, or what…

For whatever reason you only have group permissions on that file and that is why qemu / middleware can’t reach it as root.

chmod 770 /mnt/vtn/Share/cachy-desktop-linux-241221.iso to fix it up.

Hi kris,
Thanks for the input - tried - but no joy (even tried 777 to image but no joy)
Now it says something I REALLY don’t understand:

[EFAULT] internal error: process exited while connecting to monitor: 2025-02-04T08:40:21.432565Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)
++
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/supervisor.py”, line 189, in start
if self.domain.create() < 0:
^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/libvirt.py”, line 1373, in create
raise libvirtError(‘virDomainCreate() failed’)
libvirt.libvirtError: internal error: process exited while connecting to monitor: 2025-02-04T08:40:21.432565Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 211, 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 1529, in call_with_audit
result = await self._call(method, serviceobj, methodobj, params, app=app,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 179, in nf
return await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 49, in nf
res = await f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/vm_lifecycle.py”, line 58, in start
await self.middleware.run_in_thread(self._start, vm[‘name’])
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, in run_in_thread
return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1364, 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/plugins/vm/vm_supervisor.py”, line 68, in _start
self.vms[vm_name].start(vm_data=self._vm_from_name(vm_name))
File “/usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/supervisor.py”, line 198, in start
raise CallError(‘\n’.join(errors))
middlewared.service_exception.CallError: [EFAULT] internal error: process exited while connecting to monitor: 2025-02-04T08:40:21.432565Z qemu-system-x86_64: Address space limit 0x7fffffffff < 0x400bfffffff phys-bits too low (39)
++

-YOUR HELP IS GREATLY APPRECIATED

Interesting. In the UI, how much memory did you allocate to this VM? Never seen that particular error from qemu before, although I note the previous error about read permissions on the ISO is now gone.

Since I have available 64GB of RAM, I think I allocated 4-8GB.
SORRY!! -This was STUPID OF ME !! -I accidentally allocated 4TB from possible 64GB !! - Now it seems to be running !!

THANK SO MUCH FOR YOUR HELP AND ATTENTION KRIS !!