Whenever I try to run this command vagrant up I am facing following error:

VirtualBox machine with the name 'homestead-7' already exists.
Please use another name or delete the machine with the existing name, and try again.

What I did, to begin with, I configured everything perfectly, means my Vagrant was working fine. I setup everything in C: drive with following directory structures.

C:/rec (contains my development Laravel code)
C:/recordings/Homestead (contains homestead files)

at that time my Yaml configuration was like this .homestead/Homestead.yaml

ip: ""
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub    
    - ~/.ssh/id_rsa
    - map: C:\rec
      to: /home/vagrant/Code
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public

Until above mentioned state, everything was working fine. But I decided to change Homestead folder to my document folder, I did this in my document

git clone https://github.com/laravel/homestead.git Homestead

This created Homestead directory in my documents like this C:\Users\SweetHome\Homestead.

I open the command line for this directory and run this command ./init.bat I created the required files in .homestead directory. But after all this, when I run vagrant up command in newly created Homestead directory, it gives me error

VirtualBox machine with the name 'homestead-7' already exists.
Please use another name or delete the machine with the existing name, and try again.

If I run vagrant up in previous/old directory C:/recordings/Homestead everything get working properly. But in new Homestead I am facing error.

Guide me on how I can get rid of older Homestead and should start working in new Homestead. I also tried to remove older Homestead directories and run vagrant up but same error

Here are some details:

$ vagrant box list
laravel/homestead (virtualbox, 1.1.0)

$ vagrant --version
Vagrant 1.9.1

$ vagrant global-status
id       name        provider   state    directory
5d103ba  homestead-7 virtualbox poweroff C:/Users/SweetHome/Homestead

The above shows information about all known Vagrant environments
on this machine. This data is cached and may not be completely
up-to-date. To interact with any of the machines, you can go to
that directory and run Vagrant, or you can use the ID directly
with Vagrant commands from any directory. For example:
"vagrant destroy 1a2b3c4d"

The Vagrantfile script of Homestead attempts (by calling scripts/homestead.rb script) to create a machine with a default name of 'homestead-7'. That's why it fails, if a box with that name already exists.

You have 2 ways to solve this:

  1. Open Oracle VirtualBox and rename the existing machine (through its settings) from 'homestead-7' to any other name, and then run the vagrant up command again.
  2. Put a line of name: SomeOtherName (replace 'SomeOtherName' with what you want) in the Homestead.yaml file of the new machine, and the script will use that name instead of 'homestead-7' (it's not documented, but a look inside scripts/homestead.rb shows that it first checks for a user-defined name and uses it, otherwise, it uses the name 'homestead-7' by default: config.vm.define settings["name"] ||= "homestead-7")
  • 2
    Should be the accepted answer. Works perfectly. Jun 28 '17 at 0:12
  • 1
    Not sure why this isn't accepted but it is definitely the piece of info I was looking for
    – Huangism
    Sep 19 '19 at 14:54

Just delete the machine with the existing name: 'homestead-7' In the program VM.

$ vagrant halt


$ vagrant destroy

and then

$ vagrant up

You can also destroy directly in the Virtual Box program 'homestead-7' (or the one you use for the VM) and recreate it following the steps you did before.

  • 1
    please edit your answer and provide more information
    – Sam
    May 17 '17 at 6:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.