The guest machine entered an invalid state

Context:

  • OS: Solus 4.4
  • Vagrant version: 2.4.0
  • VirtualBox and VBoxManage version : 7.0.12
  • Kernel Version: Linux 6.5.9-262.current
    It’s been awhile since I used vagrant and I’ve switched to Solus in the meantime, and so when I tried it and simply ran vagrant up I kept getting this error :
The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.

If the provider you're using has a GUI that comes with it,
it is often helpful to open that and watch the machine, since the
GUI often has more helpful error messages than Vagrant can retrieve.
For example, if you're using VirtualBox, run `vagrant up` while the
VirtualBox GUI is open.

The primary issue for this error is that the provider you're using
is not properly configured. This is very rarely a Vagrant issue.

I searched for it and it seemed like a pretty common problem, all the solutions I found were due to an error in virtualbox, but that wasn’t the case for me, the thing is that vagrant actually creates the vm when I run the command and it actually boots it, and the vm is bootable and usable from within virtual box GUI. when running vagrant up --debug I get the following :

INFO subprocess: Starting process: ["/usr/bin/VBoxManage", "modifyvm", "c425c564-99f3-4168-a4df-1182e397e170", "--memory", "4096"]
 INFO subprocess: Command not in installer, restoring original environment...
 INFO subprocess: Detected AppImage environment and request to external binary. Updating library path.
DEBUG subprocess: Setting LD_LIBRARY_PATH to :/tmp/.mount_vagranWNVWby/usr/lib/:/tmp/.mount_vagranWNVWby/usr/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib32/:/tmp/.mount_vagranWNVWby/usr/lib64/:/tmp/.mount_vagranWNVWby/lib/:/tmp/.mount_vagranWNVWby/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/lib32/:/tmp/.mount_vagranWNVWby/lib64/:
DEBUG subprocess: Selecting on IO
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 31999
DEBUG subprocess: Exit status: 0
 INFO warden: Calling IN action: #<VagrantPlugins::ProviderVirtualBox::Action::Boot:0x00007f97bba478b0>
 INFO interface: info: Booting VM...
 INFO interface: info: ==> default: Booting VM...
==> default: Booting VM...
 INFO subprocess: Starting process: ["/usr/bin/VBoxManage", "startvm", "c425c564-99f3-4168-a4df-1182e397e170", "--type", "gui"]
 INFO subprocess: Command not in installer, restoring original environment...
 INFO subprocess: Detected AppImage environment and request to external binary. Updating library path.
DEBUG subprocess: Setting LD_LIBRARY_PATH to :/tmp/.mount_vagranWNVWby/usr/lib/:/tmp/.mount_vagranWNVWby/usr/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib32/:/tmp/.mount_vagranWNVWby/usr/lib64/:/tmp/.mount_vagranWNVWby/lib/:/tmp/.mount_vagranWNVWby/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/lib32/:/tmp/.mount_vagranWNVWby/lib64/:
DEBUG subprocess: Selecting on IO
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 31994
DEBUG subprocess: Exit status: 0
 INFO warden: Calling IN action: #<VagrantPlugins::ProviderVirtualBox::Action::Customize:0x00007f97bba477c0>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::WaitForCommunicator:0x00007f97bba476d0>
 INFO interface: output: Waiting for machine to boot. This may take a few minutes...
 INFO interface: output: ==> default: Waiting for machine to boot. This may take a few minutes...
==> default: Waiting for machine to boot. This may take a few minutes...
 INFO subprocess: Starting process: ["/usr/bin/VBoxManage", "showvminfo", "c425c564-99f3-4168-a4df-1182e397e170", "--machinereadable"]
 INFO subprocess: Command not in installer, restoring original environment...
 INFO subprocess: Detected AppImage environment and request to external binary. Updating library path.
DEBUG subprocess: Setting LD_LIBRARY_PATH to :/tmp/.mount_vagranWNVWby/usr/lib/:/tmp/.mount_vagranWNVWby/usr/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib32/:/tmp/.mount_vagranWNVWby/usr/lib64/:/tmp/.mount_vagranWNVWby/lib/:/tmp/.mount_vagranWNVWby/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/lib32/:/tmp/.mount_vagranWNVWby/lib64/:
DEBUG subprocess: Selecting on IO
 INFO subprocess: Starting process: ["/usr/bin/VBoxManage", "showvminfo", "c425c564-99f3-4168-a4df-1182e397e170", "--machinereadable"]
 INFO subprocess: Command not in installer, restoring original environment...
 INFO subprocess: Detected AppImage environment and request to external binary. Updating library path.
DEBUG subprocess: Setting LD_LIBRARY_PATH to :/tmp/.mount_vagranWNVWby/usr/lib/:/tmp/.mount_vagranWNVWby/usr/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib32/:/tmp/.mount_vagranWNVWby/usr/lib64/:/tmp/.mount_vagranWNVWby/lib/:/tmp/.mount_vagranWNVWby/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/lib32/:/tmp/.mount_vagranWNVWby/lib64/:
DEBUG subprocess: Selecting on IO
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 0
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 0
 INFO subprocess: Starting process: ["/usr/bin/VBoxManage", "showvminfo", "c425c564-99f3-4168-a4df-1182e397e170", "--machinereadable"]
 INFO subprocess: Command not in installer, restoring original environment...
 INFO subprocess: Detected AppImage environment and request to external binary. Updating library path.
DEBUG subprocess: Setting LD_LIBRARY_PATH to :/tmp/.mount_vagranWNVWby/usr/lib/:/tmp/.mount_vagranWNVWby/usr/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/usr/lib32/:/tmp/.mount_vagranWNVWby/usr/lib64/:/tmp/.mount_vagranWNVWby/lib/:/tmp/.mount_vagranWNVWby/lib/i386-linux-gnu/:/tmp/.mount_vagranWNVWby/lib/x86_64-linux-gnu/:/tmp/.mount_vagranWNVWby/lib32/:/tmp/.mount_vagranWNVWby/lib64/:
DEBUG subprocess: Selecting on IO
ERROR warden: Error occurred: The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.

If the provider you're using has a GUI that comes with it,
it is often helpful to open that and watch the machine, since the
GUI often has more helpful error messages than Vagrant can retrieve.
For example, if you're using VirtualBox, run `vagrant up` while the
VirtualBox GUI is open.

The primary issue for this error is that the provider you're using
is not properly configured. This is very rarely a Vagrant issue.
 INFO warden: Beginning recovery process...
 INFO warden: Calling recover: #<Vagrant::Action::Builtin::Call:0x00007f97bba4c8b0>
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
 INFO warden: Calling recover: #<Vagrant::Action::Builtin::HandleForwardedPortCollisions:0x00007f97bae3c408>
 INFO warden: Recovery complete.
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
 INFO warden: Beginning recovery process...
 INFO warden: Recovery complete.
ERROR warden: Error occurred: The guest machine entered an invalid state while waiting for it

So what I noticed is that when I ran vagrant up and I checked the VMState using VBoxManage on the vm in question, it stays as poweroff, even though the GUI opens up and the VM is visibly running. So I tried to execute the same command that vagrant was running ([“/usr/bin/VBoxManage”, “startvm”, “c425c564-99f3-4168-a4df-1182e397e170”, “–type”, “gui”]) and when I do the VMState field changes to running, I have no clue what’s the problem and I’d appreciate it if anyone can help.