Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No verification when VM creation fails #5271

Closed
andrewmantovani opened this issue May 3, 2023 · 4 comments
Closed

No verification when VM creation fails #5271

andrewmantovani opened this issue May 3, 2023 · 4 comments
Milestone

Comments

@andrewmantovani
Copy link

andrewmantovani commented May 3, 2023

For some reason I am no longer able to create new VM's. After you finish the creation wizard the new VM shows up in the left panel but gives QEMU error on launch. I am unable to move/clone/delete the VM. If I restart UTM it is greyed out and asks me if I want to remove it because it does not exist.

It seems it is not able to save the files in the container. Deleting and reinstalling UTM does not fix this issue. I also notice I am unable to "open in UTM" from the UTM gallery web page. It downloads the file but once it is complete it says it can not be found. It seems like UTM is not able to write to the container sandbox.

This started happening after I moved 2 VMs to a new location outside the sandbox. I moved them to ~/user/Documents/UTM. Maybe this broke something I am not sure. If after VM creation I try and "show in finder" nothing happens.

UTM: 4.2.5
OS: 13.3.1
M1 Max

@andrewmantovani
Copy link
Author

Ok I figured this out. In a previous version of UTM I was using hdutil to mount a sparseimage to the "Documents" folder in the sandboxed container. After I updated UTM to a version that allowed the moving of VM's I no longer needed that.

To keep it short UTM will not allow you to create a new VM if "~/Library/Containers/com.utmapp.UTM/Data/Document" does not exist. You may want to add error handling to let the user know why.

@osy
Copy link
Contributor

osy commented May 18, 2023

You may want to add error handling to let the user know why.

It’s tough because we can’t possibly anticipate what people may do to mess with the container outside. For example, if you mess with certain files inside the container, you can cause UTM to crash. We rely on Apple’s standard functionalities to do things and we cannot add error checks every time we call some API to, say, make a new file in the sandbox for every possible way it could have gone wrong.

@osy osy closed this as completed May 18, 2023
@andrewmantovani
Copy link
Author

andrewmantovani commented May 18, 2023

I agree with you in principle. I just thought having it check that its actually writing the file to disk would make sense. Right now as it stands it does not verify that anything was actually written to the drive. You can create a new VM and everything looks like normal except you can not run the VM or interact with it in any way. Only once you restart UTM does it show as greyed out saying it does not exist. Nothing in the logs would alert you to the cause.

Again I agree with your statement I just figured it would be simple enough to have UTM verify it actually wrote to disk when you hit save would make sense. Even though this was obvious user error it is one that parsing logs would not show. I did not see anything in the logs stating it could not write to the non-existent folder.

Thanks again for all your hard work.

@osy
Copy link
Contributor

osy commented May 18, 2023

I see

@osy osy reopened this May 18, 2023
@osy osy changed the title Unable to create new VM's. UTM not able to save in sandboxed file path. No verification when VM creation fails May 18, 2023
@osy osy modified the milestones: Future, v4.3 May 18, 2023
@osy osy closed this as completed in 672ee38 May 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants