Want to run a clean Ubuntu 24.04 virtual machine on your Windows PC without clicking through dozens of installer screens? Vagrant plus VMware Workstation makes it possible in minutes. This guide is written for everyday Windows users — no Linux wizardry required.
By the end, you will have a fully working Ubuntu VM you can start, stop, and log into with simple commands. We also include a free PowerShell script that does almost everything for you automatically.
TL;DR: Install Vagrant and VMware Workstation/Player first, then run
setup-vagrant-vmware-ubuntu.ps1as Administrator. The script installs the Vagrant VMware Utility, the provider plugin, creates the project, downloads the Ubuntu box, and starts the VM.
Download the Automation Script
After you have installed Vagrant and VMware Workstation/Player, download the PowerShell script below and run it as Administrator. It handles the remaining setup steps automatically.
Download setup-vagrant-vmware-ubuntu.ps1
What You Will Need
- Windows 10 or Windows 11
- A CPU that supports virtualization (Intel VT-x or AMD-V) enabled in BIOS
- Administrator rights on your PC
- A stable internet connection
Turn these features in windows:
Search "Turn windows features on or off" in windows search bar. you will see it. Turn on these options.

Step 1 — Install Vagrant
Vagrant is the tool that turns a single config file into a running virtual machine. Download the latest Windows installer from HashiCorp.
After installing, open a new PowerShell window and check it works:
vagrant --versionYou should see something like:
Vagrant 2.4.9If PowerShell says “vagrant is not recognized,” close and reopen it so the PATH environment variable refreshes.
Step 2 — Install VMware Workstation or Player
Vagrant needs a provider to run the VM. For Windows, the best choice is VMware.
- VMware Workstation Pro — paid, full feature set
- VMware Workstation Player — free for personal use
Both are now hosted by Broadcom. Create a free account, then download the installer from the Broadcom support portal.
Launch VMware once to confirm it opens without errors.
Step 3 — Install the Vagrant VMware Utility
This is the step most beginners miss. The vagrant-vmware-desktop plugin needs a small Windows service called the Vagrant VMware Utility. Without it, vagrant up fails with a confusing message like:
The provider 'vmware_desktop' could not be found...Latest utility version at the time of writing: 1.0.24
Direct download:
vagrant-vmware-utility_1.0.24_windows_amd64.msi
You can double click the file and normally install it or:
Open PowerShell as Administrator and install silently:
msiexec /i vagrant-vmware-utility_1.0.24_windows_amd64.msi /qn /norestartVerify the service is running:
Get-Service -Name "vagrant-vmware-utility"If it says Running, you are good. If not:
net start vagrant-vmware-utility
Step 4 — Install the vagrant-vmware-desktop Plugin
In a regular PowerShell window (admin rights not needed here), install the plugin that lets Vagrant talk to VMware:
vagrant plugin install vagrant-vmware-desktopConfirm it installed correctly:
vagrant plugin listExpected output:
vagrant-vmware-desktop (3.0.5, global)Step 5 — Create the Vagrant Project
You can create the Vagrant project in any folder you want. In this guide we
use D:\vmos\vagrant ubuntu as the project folder (that is
where I keep my VM). Create the folder you prefer, then use that same path in
every command below.
Go to this page: HashiCorp Cloud Platform
you will see different images. search for your desired image of OS you want to install. in my case its bento/ubuntu. take the command from there.

A Vagrant project is just a folder with a Vagrantfile in it. Create one and initialize it with the official Bento Ubuntu 24.04 box.
mkdir D:\vmos\vagrant ubuntu
cd D:\vmos\vagrant ubuntu
vagrant init bento/ubuntu-24.04 --box-version 202510.26.0This creates a Vagrantfile. The important lines look like this:
Vagrant.configure("2") do |config|
config.vm.box = "bento/ubuntu-24.04"
config.vm.box_version = "202510.26.0"
end
Step 6 — Add the Ubuntu Box for VMware
Now download the actual VM image, explicitly choosing the VMware provider:
vagrant box add bento/ubuntu-24.04 --box-version 202510.26.0 --provider vmware_desktopWhen it finishes you will see:
==> box: Successfully added box 'bento/ubuntu-24.04' (v202510.26.0) for 'vmware_desktop (amd64)'!You can list installed boxes anytime:
vagrant box listStep 7 — Start the VM
Tell Vagrant to create and boot the virtual machine:
vagrant up --provider=vmware_desktopVagrant will:
- Clone the box into the project folder
- Register the VM with VMware
- Start it headless (in the background)
- Set up SSH and shared folders
The first boot downloads files and can take a few minutes depending on your internet speed.

Step 8 — Log In and Manage the VM
Check the VM status:
vagrant statusLog in via SSH:
vagrant sshYou are now logged in as the vagrant user inside Ubuntu 24.04.
If you prefer the VMware GUI console, the default login is:
- Username:
vagrant - Password:
vagrant
To make VMware open automatically every time you run vagrant up, add this to your Vagrantfile:
config.vm.provider "vmware_desktop" do |vmware|
vmware.gui = true
endThen reload:
vagrant reloadCommon Vagrant Commands
| Command | What it does |
|---|---|
vagrant ssh | Log in to the VM |
vagrant halt | Shut down the VM |
vagrant suspend | Pause the VM |
vagrant resume | Resume a paused VM |
vagrant reload | Restart the VM |
vagrant destroy | Delete the VM |
vagrant global-status | List all Vagrant VMs on your PC |
Open the VM in VMware Workstation GUI
Vagrant runs the VM headless by default, so it may not appear in your VMware
library. If you do not see it in VMware Workstation, browse to the project
folder and open the .vmx file manually:
- Open VMware Workstation
- Go to File → Open
- Browse to the VMX file inside your project folder. In this guide’s example path the file looks like:
D:\vmos\vagrant ubuntu\.vagrant\machines\default\vmware_desktop\016f200f-880a-4787-bd2a-d686326e7138\ubuntu-24.04-amd64.vmx
The long folder name (the UUID) is generated automatically by Vagrant, so
yours will be different. Just look for the .vmx file under
.vagrant\machines\default\vmware_desktop\ inside your chosen
project folder.
One-Shot PowerShell Script
If you would rather not run every command manually, use the included setup-vagrant-vmware-ubuntu.ps1 script. It automates the VMware provider setup and VM creation steps, but it does not install Vagrant or VMware for you — those must already be installed.
Download setup-vagrant-vmware-ubuntu.ps1
Prerequisites before running the script
- Vagrant is installed and available in PATH
- VMware Workstation Pro or Player is installed
- You are running PowerShell as Administrator
What the script does
- Verifies PowerShell is running as Administrator
- Checks that Vagrant is installed (errors if missing)
- Checks that VMware Workstation/Player is installed (warns if missing)
- Downloads and installs the Vagrant VMware Utility
- Starts the
vagrant-vmware-utilityservice - Installs the
vagrant-vmware-desktopplugin - Creates the project directory
- Initializes the Vagrantfile
- Adds the Ubuntu box for the
vmware_desktopprovider - Runs
vagrant upto start the VM - Prints the VM status and login instructions
How to run it
Make sure Vagrant and VMware are already installed. Then open PowerShell as Administrator, navigate to the folder that contains the script, and run:
.\setup-vagrant-vmware-ubuntu.ps1You can also choose a custom project folder:
.\setup-vagrant-vmware-ubuntu.ps1 -ProjectDir "D:\vmos\vagrant ubuntu"When the script finishes, log in with:
cd D:\vmos\vagrant ubuntu
vagrant ssh
Troubleshooting
“Provider 'vmware_desktop' could not be found”
This almost always means the Vagrant VMware Utility is missing or its service is stopped.
Get-Service -Name "vagrant-vmware-utility"
net start vagrant-vmware-utilityIf the service does not exist, reinstall the utility MSI as Administrator.
Box not found errors
Make sure the box supports the vmware_desktop provider. The bento/ubuntu-24.04 box does. Generic boxes like ubuntu/focal64 usually only support VirtualBox.
SSH hangs or fails
Check which host port Vagrant mapped to guest SSH:
vagrant ssh-configVMware GUI does not show the VM
This is normal — Vagrant runs headless by default. Open the .vmx file manually, or enable vmware.gui = true in the Vagrantfile.
Frequently Asked Questions
Do I need to pay for VMware?
No. VMware Workstation Player is free for personal use. Power users may prefer Workstation Pro.
Can I use VirtualBox instead?
Yes, but this guide focuses on VMware because it is faster and more reliable on many Windows systems. The provider name would be virtualbox instead of vmware_desktop.
Is Vagrant still maintained?
Yes. Vagrant is developed by HashiCorp and continues to receive updates. This guide uses Vagrant 2.4.9, the latest version at the time of writing.
Will this work on Windows 11 ARM?
The script and commands are written for Intel/AMD 64-bit Windows. ARM Windows requires an ARM-compatible Vagrant box and VMware Fusion-style tooling.
Quick Reference Table
| Step | Command / Action |
|---|---|
| Install Vagrant | Download from HashiCorp |
| Install VMware | Workstation Pro or Player |
| Install utility | msiexec /i vagrant-vmware-utility_1.0.24_windows_amd64.msi /qn /norestart |
| Install plugin | vagrant plugin install vagrant-vmware-desktop |
| Create project | vagrant init bento/ubuntu-24.04 --box-version 202510.26.0 |
| Download box | vagrant box add bento/ubuntu-24.04 --box-version 202510.26.0 --provider vmware_desktop |
| Start VM | vagrant up --provider=vmware_desktop |
| Log in | vagrant ssh |
| Default credentials | vagrant / vagrant |
Useful Links
- Vagrant downloads
- Vagrant VMware provider docs
- Vagrant VMware Utility docs
- Vagrant Cloud box search
- Bento Ubuntu 24.04 box
- Plugin issue tracker
- VMware Workstation download (Broadcom)
Final Thoughts
Running Ubuntu 24.04 inside VMware with Vagrant gives you a clean, repeatable Linux environment on Windows without touching your main system. Once the one-time setup is done, you can spin up or destroy the VM in seconds.
If you got stuck, double-check that the Vagrant VMware Utility service is running — that single step solves most “provider not found” errors. Happy coding.