Can only launch some images from the multipass find
Describe the bug
multipass find displays a lot of images. Almost none of those will launch for me now, but some of them do launch. If I add the --show-unsupported flag, most of those images will launch just fine.
When an image fails to start, I will get this output:
(base) root@XXX:/home/XXX# multipass launch 24.04 -vvv
[2025-03-17T09:58:51.823] [warning] [lxd image vault] Instance 'vehement-jackrabbit' does not exist: not removing
launch failed: Cannot retrieve info for image with id '1e461e0e46d438aa1a21b0bd4f5f93236e6ddf09e3b04097e37b591098543497': LXD object not found
Other images such as 23.10 will launch just fine.
This problem appeared sometime in the past 6 months. Unfortunately, I can't be more precise than that. Before that though, images were launching correctly.
To Reproduce Not sure!
Expected behavior Supported Images should launch
Logs
Log from
journalctl --unit 'snap.multipass*'
Mar 17 10:05:41 XXX systemd[1]: Started snap.multipass.multipass-82ca08c5-d87f-4bd0-9e28-dabeda28228e.scope.
Mar 17 10:05:41 XXX multipassd[1856]: Loading "anbox-cloud-appliance" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "charm-dev" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "docker" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "jellyfin" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "minikube" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "ros2-humble" v1
Mar 17 10:05:41 XXX multipassd[1856]: Loading "ros2-jazzy" v1
Mar 17 10:05:47 XXX multipassd[1856]: Instance 'brainy-lacewing' does not exist: not removing
Mar 17 10:05:47 XXX systemd[1]: snap.multipass.multipass-82ca08c5-d87f-4bd0-9e28-dabeda28228e.scope: Deactivated successfully.
Additional info
- OS: Ubuntu 22.04.5 LTS
- CPU architecture or model: Intel® Xeon(R) Gold 6226R CPU @ 2.90GHz × 64
-
multipass version
multipass 1.15.1
multipassd 1.15.1
-
multipass info
Name: primary
State: Running
IPv4: 10.228.202.89
Release: Ubuntu 24.04.1 LTS
Image hash: 427eb975d1b2 (Ubuntu 24.04 LTS)
CPU(s): 1
Load: 0.00 0.00 0.02
Disk usage: 2.3GiB out of 9.6GiB
Memory usage: 323.3MiB out of 932.5MiB
Mounts: --
Name: AY2
State: Stopped
IPv4: --
Release: --
Image hash: 49c8045265cf (Ubuntu 24.04 LTS)
CPU(s): --
Load: --
Disk usage: --
Memory usage: --
Mounts: --
-
multipass get local.driverlxd
Additional context Add any other context about the problem here.
Hi @jedmundstephens, it would appear that there is a disconnect between what images Multipass thinks LXD has and the images it actually has. Hard to say why, but logs corresponding to the launch would help (you posted only a very small portion that is unrelated to the launch attempt).
What does lxc image list --project=multipass say? Does the situation improve if you delete listed 24.04 images with lxc image delete --project=multipass <img_fingerprint>? And can you launch if you switch to the QEMU driver (multipass set local.driver=qemu)?
lxc image list --project=multipass give me:
+-------+--------------+--------+-------------+--------------+-----------------+-----------+-----------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE | UPLOAD DATE |
+-------+--------------+--------+-------------+--------------+-----------------+-----------+-----------------------------+
| | 1a73537b41b6 | no | Core 16 | x86_64 | VIRTUAL-MACHINE | 260.82MiB | Mar 7, 2025 at 5:42pm (UTC) |
+-------+--------------+--------+-------------+--------------+-----------------+-----------+-----------------------------+
Which is interesting because I didn't intentionally setup a Core 16 image... I might have done it accidentally with testing though. That is the only thing that comes up with that command. Deleting that one doesn't change anything.
If I change the driver to qemu, it works. Changing it back to lxd it doesn't work again. I had originally has some issues with losing connection to multipass instances when using qemu which was what prompted me to switch over to lxd several months ago.
If you let me know which logs would be helpful and where to find them, I'll happily add them here! Thanks!
Hmm, OK. The image hash you posted initially is correct (I got the same one). So the Multipass daemon gets the right hash after fetching the image, but then immediately fails when trying to find the minimum size — because the image isn't there.
There is either an issue getting the image into LXD or Multipass thinks it's already there and doesn't even try. Do you see a "Retrieving image" message with a percentage or spinning slash when trying to launch?
Here's something you could try:
-
snap stop multipass.multipassd -
sudo mv /var/snap/multipass/common/cache/ /tmp/mp.cache(you canrm -rfinstead, with care not to hit enter before time when typingsudo rm -rf...) -
snap start multipass.multipassd
As for logs, you got the right command (journalctl --unit 'snap.multipass*') but you would need to navigate in the pager that opens to get to the portion corresponding to the failing launch. This might be easier:
- run
journalctl -a -f -b0 -u snap.multipass.* > /tmp/mp.logsin one terminal - run
multipass launchin another terminal - when 2 finishes, go back to the first terminal and hit Ctrl+C
- upload the file /tmp/mp.logs
You can also run multipass launch -vvvv, but that doesn't include everything.
Finally, with regard to QEMU, I seem to remember a bug matching your description, which should be fixed now if you use the latest release (1.15.1 ATTOW).
I do get a retrieving image with spinning slash. It lasts for about 10 seconds before I get the launch failed message.
Removing the cache didn't make any difference
Writing the mp.logs file didn't get me anything new unfortunately:
Mar 21 08:16:57 XXXmultipassd[111463]: Loading "ros2-jazzy" v1
Mar 21 08:16:57 XXX multipassd[111463]: gRPC listening on unix:/var/snap/multipass/common/multipass_socket
Mar 21 08:16:57 XXX multipassd[111463]: fetch manifest periodically
Mar 21 08:16:57 XXX multipassd[111463]: Using the 'multipass' storage pool.
Mar 21 08:16:57 XXX multipassd[111463]: Starting Multipass 1.15.1
Mar 21 08:16:57 XXX multipassd[111463]: Daemon arguments: /snap/multipass/14300/bin/multipassd --verbosity debug --logger platform
Mar 21 08:17:11 XXX multipassd[111463]: Using the 'multipass' storage pool.
Mar 21 08:17:17 XXX multipassd[111463]: Instance 'dignified-ghost' does not exist: not removing
Mar 21 08:18:36 XXX multipassd[111463]: Using the 'multipass' storage pool.
Mar 21 08:18:42 XXX multipassd[111463]: Instance 'cordial-rook' does not exist: not removing
Mar 21 08:19:52 XXX multipassd[111463]: Using the 'multipass' storage pool.
Mar 21 08:19:58 XXX multipassd[111463]: Instance 'tireless-tunny' does not exist: not removing
with the -vvvv option there is a lot there - about 4000 lines. Just not in the log file, only in the terminal.
In the output there are 5 identical stanzas with Status Failure that look like this:
[2025-03-21T08:28:08.452] [trace] [lxd request] Requesting LXD: GET unix://multipass/var/snap/lxd/common/lxd/[email protected]/operations/0a05b9b3-c9a6-457d-be7a-660c072f9048?project=multipass
[2025-03-21T08:28:08.453] [trace] [lxd request] Got reply: {
"error": "",
"error_code": 0,
"metadata": {
"class": "task",
"created_at": "2025-03-21T08:28:03.441632217-04:00",
"description": "Downloading image",
"err": "Failed getting remote image info: Failed getting image: The requested image couldn't be found for fingerprint \"1e461e0e46d438aa1a21b0bd4f5f93236e6ddf09e3b04097e37b591098543497\"",
"id": "0a05b9b3-c9a6-457d-be7a-660c072f9048",
"location": "none",
"may_cancel": false,
"metadata": null,
"resources": {
},
"status": "Failure",
"status_code": 400,
"updated_at": "2025-03-21T08:28:03.441632217-04:00"
},
"operation": "",
"status": "Success",
"status_code": 200,
"type": "sync"
}
Interestingly, that fingerprint shows up in two other places in the output with success, both earlier in the output:
[2025-03-21T08:28:03.440] [trace] [lxd request] Requesting LXD: POST unix://multipass/var/snap/lxd/common/lxd/[email protected]/images?project=multipass
[2025-03-21T08:28:03.441] [trace] [lxd request] Sending data: {"properties":{"query.release":"24.04","query.remote":"","release_title":"24.04 LTS"},"source":{"fingerprint":"1e461e0e46d438aa1a21b0bd4f5f93236e6ddf09e3b04097e37b591098543497","image_type":"virtual-machine","mode":"pull","protocol":"simplestreams","server":"https://cloud-images.ubuntu.com/releases/","type":"image"}}
[2025-03-21T08:28:03.444] [trace] [lxd request] Got reply: {
"error": "",
"error_code": 0,
"metadata": {
"class": "task",
"created_at": "2025-03-21T08:28:03.441632217-04:00",
"description": "Downloading image",
"err": "",
"id": "0a05b9b3-c9a6-457d-be7a-660c072f9048",
"location": "none",
"may_cancel": false,
"metadata": null,
"resources": {
},
"status": "Running",
"status_code": 103,
"updated_at": "2025-03-21T08:28:03.441632217-04:00"
},
"operation": "/1.0/operations/0a05b9b3-c9a6-457d-be7a-660c072f9048",
"status": "Operation created",
"status_code": 100,
"type": "async"
}
That looks like success to me, but maybe I'm misreading it and it is just an earlier part of the process?
Then, the last part of the output is:
[2025-03-21T08:28:09.454] [trace] [lxd request] Requesting LXD: GET unix://multipass/var/snap/lxd/common/lxd/[email protected]/operations/0a05b9b3-c9a6-457d-be7a-660c072f9048?project=multipass
[2025-03-21T08:28:09.456] [trace] [lxd request] Requesting LXD: GET unix://multipass/var/snap/lxd/common/lxd/[email protected]/images/1e461e0e46d438aa1a21b0bd4f5f93236e6ddf09e3b04097e37b591098543497?project=multipass
[2025-03-21T08:28:09.458] [trace] [lxd request] Requesting LXD: DELETE unix://multipass/var/snap/lxd/common/lxd/[email protected]/virtual-machines/eternal-sloth?project=multipass
[2025-03-21T08:28:09.459] [warning] [lxd image vault] Instance 'eternal-sloth' does not exist: not removing
[2025-03-21T08:28:09.460] [trace] [lxd factory] No further resources to remove for "eternal-sloth"
launch failed: Cannot retrieve info for image with id '1e461e0e46d438aa1a21b0bd4f5f93236e6ddf09e3b04097e37b591098543497': LXD object not found
Thanks for your help! I'll also look into the qemu option again.
OK, so there appears to be some problem getting the image into LXD. Multipass should be able to identify that better, but the main problem appears to be on LXD's side. You could try to look for clues in LXD's logs too or switching to a different LXD channel. Or, if you don't have anything you can't loose, you could try to remove it entirely and install/initialize it again.
I hope things go well with QEMU, let us know how it fares.
The main issue was on LXD and that backend is now deprecated in Multipass and soon to be removed, so closing this.