GNS3 / gns3-gui

GNS3 Graphical Network Simulator
http://www.gns3.com
GNU General Public License v3.0
2.16k stars 436 forks source link

Unable to reopen a project with a VM in the topology #3542

Open Addefan opened 11 months ago

Addefan commented 11 months ago

Describe the bug Adding a virtual machine to the topology happens without problems. But when I close the project and then try to open it again, I can't open it, getting an error related to the UUID.

GNS3 version and operating system:

To Reproduce Steps to reproduce the behavior:

  1. Create a new empty project
  2. Add a new VM to the topology
  3. Close GNS3
  4. Reopen the project
  5. See the error

Screenshots or videos image

After adding to the topology: image

After reopen project: image

https://github.com/GNS3/gns3-gui/assets/90243110/12ab7606-13f5-4e45-a818-4268c2283bf0

Additional context Apparently, the problem does not depend on the OS: I installed GNS3 on Windows 11 and get exactly the same error. Perhaps this problem depends on the hardware?

grossmj commented 9 months ago

Do you have the same issue if you untick "Use as linked base VM" option in the template config?

Image

Addefan commented 9 months ago

No, the issue only appears if the option is ticked.

grossmj commented 6 months ago

When you open your project, do you see errors in the logs (~/.config/GNS3/2.2/gns3_server.log) or if you manually start the gns3server in the terminal, i.e. python -m gns3server --local? Thanks 👍

Addefan commented 6 months ago

Yes, I see one message with the type ERROR:

2024-04-23 16:21:51 ERROR route.py:221 Node error detected: VirtualBoxError
Traceback (most recent call last):
  File "/usr/share/gns3/gns3-server/lib/python3.10/site-packages/gns3server/web/route.py", line 200, in control_schema
    await func(request, response)
  File "/usr/share/gns3/gns3-server/lib/python3.10/site-packages/gns3server/handlers/api/compute/virtualbox_handler.py", line 56, in create
    vm = await vbox_manager.create_node(request.json.pop("name"),
  File "/usr/share/gns3/gns3-server/lib/python3.10/site-packages/gns3server/compute/base_manager.py", line 259, in create_node
    await node.create()
  File "/usr/share/gns3/gns3-server/lib/python3.10/site-packages/gns3server/compute/virtualbox/virtualbox_vm.py", line 201, in create
    await self.manager.execute("registervm", [self._linked_vbox_file()])
  File "/usr/share/gns3/gns3-server/lib/python3.10/site-packages/gns3server/compute/virtualbox/__init__.py", line 132, in execute
    raise VirtualBoxError("VirtualBox has returned an error: {}".format(vboxmanage_error))
gns3server.compute.virtualbox.virtualbox_error.VirtualBoxError: VirtualBox has returned an error: VBoxManage: error: A differencing image of snapshot {5e05d38c-21ca-4fb6-a760-2bd3c6dfd3d2} could not be found. Could not find an open hard disk with UUID {8cb25dbf-cbc4-427c-9d8e-253972da554d}
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component SnapshotMachine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "OpenMachine(Bstr(a->argv[0]).raw(), machine.asOutParam()))" at line 88 of file VBoxManageMisc.cpp