That /run/user/1000/doc/... path suggests it's getting the .iso through the documents portal. So virt-manager is a flatpak? Sounds bad! Try using flatseal to give it direct access to all files.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Thanks - this got me past the original issue. What I did is I opened up Flatseal and granted access to all system files for Virtual Machine Manager.
However, now I'm stuck at a different point. I can get past where I choose how much memory, CPU, and disk storage to allocate, but when I get to Step 5 and click Finish,
This happens:
Unable to complete install: 'internal error: process exited while connecting to monitor: 2025-06-22T17:16:36.091623Z qemu-system-x86_64: -blockdev {"driver":"file","filename":"/run/media/myusername/path/to/installers/debian-12.11.0-amd64-netinst.iso","node-name":"libvirt-1-storage","read-only":true}: Could not open '/run/media/myusername/path/to/installers/debian-12.11.0-amd64-netinst.iso': Permission denied'
Traceback (most recent call last):
File "/app/share/virt-manager/virtManager/asyncjob.py", line 71, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/app/share/virt-manager/virtManager/createvm.py", line 2008, in _do_async_install
installer.start_install(guest, meter=meter)
File "/app/share/virt-manager/virtinst/install/installer.py", line 726, in start_install
domain = self._create_guest(
^^^^^^^^^^^^^^^^^^^
File "/app/share/virt-manager/virtinst/install/installer.py", line 667, in _create_guest
domain = self.conn.createXML(initial_xml or final_xml, 0)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/lib/python3.12/site-packages/libvirt.py", line 4590, in createXML
raise libvirtError('virDomainCreateXML() failed')
libvirt.libvirtError: internal error: process exited while connecting to monitor: 2025-06-22T17:16:36.091623Z qemu-system-x86_64: -blockdev {"driver":"file","filename":"/run/media/myusername/path/to/installers/debian-12.11.0-amd64-netinst.iso","node-name":"libvirt-1-storage","read-only":true}: Could not open '/run/media/myusername/path/to/installers/debian-12.11.0-amd64-netinst.iso': Permission denied
This message is talking about permission denied, so I checked the file permissions, and I saw that the ISO file is owned by the qemu user:
myusername@fedora:~$ ls -la /run/media/myusername/path/to/installers
total 101472336
drwxr-xr-x. 2 myusername myusername 4096 Jun 16 14:47 .
drwxr-xr-x. 6 myusername myusername 12288 Jul 29 2024 ..
-rw-r--r--. 1 myusername myusername 7547453440 Oct 17 2024 bazzite-gnome-stable.iso
-rw-r--r--. 1 qemu qemu 702545920 Jun 12 17:00 debian-12.11.0-amd64-netinst.iso
I changed it to myusername:
sudo chown myusername:myusername /run/media/myusername/path/to/installers/debian-12.11.0-amd64-netinst.iso
When I tried the same steps again, I got stuck in the same place and rerunning ls
showed that the ISO file's ownership has reverted back to qemu
.
Any ideas?
No idea. Since the path is a /run/media one, what's the filesystem used there? Perhaps it's incompatible. Have you tried putting the iso in your home directory and going from there instead?
But perhaps it would work best if you just do what the documentation tells you not to do and rpm-ostree install virt-manager (and libvirt and friends, if needed)
Install from your distro instead.
Did you add yourself to the libvirt group? And check the permissions of the image it self, maybe thats the issue
Virtual Machine Manager's GitHub page for its flatpak includes the following lines:
NOTE: By default, this Flatpak only includes the Virtual Machine Manager client application and does not include the libvirt daemon or QEMU. Depending on your use case, you may have to install other applications or extensions:
- Connecting to a remote libvirt instance: nothing else needed
- Connecting to a libvirt system instance: make sure that libvirtd is installed on the host, either via your package manager or using a system extension on image based systems for example
- Connecting to a libvirt user instance: install the QEMU extension using
flatpak install org.virt_manager.virt_manager.Extension.Qemu
So, in this case, have you either installed libvirtd on the host^[Technically, you could also install libvirtd as a sysext.] (i.e. have you installed it with rpm-ostree
) OR have you installed the QEMU extension as per its own instruction?
If neither, then you should at least do one of them and report back.
EDIT: While what's written above remains relevant beyond Bazzite, Bazzite's ujust scripts do provide handholds for a myriad of situations including this one:
- (Step 0: Uninstall^[The
ujust
script will likely install another instance of VM Manager. As such, the flatpak is no longer needed and would only cause confusion.] the flatpak of Virtual Machine Manager) - Step 1: Install Virtual Machine Manager with
ujust
, i.e. invoke theujust setup-virtualization
command
I suppose the ujust
way handles a bunch of gotchas you'd otherwise have to tackle yourself. And, thus, is most likely preferred over all other methods.
As a side note, please consider consulting Bazzite's excellent documentation first. We'll be more than happy to help out regardless, but I'm sure there are a bunch of gems you'll be missing out on otherwise.
Well, what are the permissions of /run/usr/1000/doc/c0a3c3fc and what user are you running VMM as?
Here are the results of some commands that I believe answer your questions. When I run the ls
command against that directory, it says no such file or directory. Could this have something to do w/ the fact that Virtual Machine Manager is running as a flatpak? (as the other commenter @[email protected] has hinted)
Here's what I tried:
what are the permissions of /run/usr/1000/doc/c0a3c3fc
myusername@fedora:~$ ls -la /run/usr/1000/doc
ls: cannot access '/run/usr/1000/doc': No such file or directory
what user are you running VMM as
myusername@fedora:~$ ps aux | grep virt-manager
myusername 17995 0.0 0.0 3688 2048 ? S 13:05 0:00 /usr/bin/bwrap --args 40 -- virt-manager
myusername 18011 0.0 0.0 3788 1396 ? S 13:05 0:00 /usr/bin/bwrap --args 40 -- virt-manager
myusername 18013 1.5 0.3 889968 101424 ? Sl 13:05 0:00 python3 /app/bin/virt-manager
myusername 18147 0.0 0.0 230340 2224 pts/0 S+ 13:06 0:00 grep --color=auto virt-manager
EDIT: I got past this issue by opening up Flatseal and granting access to all system files for Virtual Machine Manager; however, now I'm getting stuck on another permission issue after I choose how much RAM, CPU, and disk space to allocate. Reference my response to @[email protected]'s comment.
WOW, yes, your problem is almost certainly Flatpak-related. I'm surprised you even got as far as you did. Flatpak is often great but does not tend to play well with applications that need less common capabilities.
I'd recommend installing VMM in a different way if that's an option for you; I expect that will likely make your problem go away.
My best guess is there's a permissions issue with whatever you have the ISO stored on. Try copying the iso to somewhere in your home folder.
I copied the ISO file to my home directory but got the same result. Any other ideas?
EDIT: I got past this issue by opening up Flatseal and granting access to all system files for Virtual Machine Manager; however, now I'm getting stuck on another permission issue after I choose how much RAM, CPU, and disk space to allocate. Reference my response to @[email protected]'s comment.
Might check the file permissions then. Who owns the file? Does VMM have read permissions to the file? UUID 1000 is root, so it sounds like VMM is being run as your user, but the ISO is owned by root. You could try chown'ing that file to your user.