มีเครื่อง VirtualBox ที่มีชื่อว่า 'homestead' อยู่แล้ว


112

เนื่องจาก homestead laravel homestead 2.0 ยังไม่ทำงาน

ฉันไม่รู้ว่าทำไม 'homestead init' จึงสร้างไฟล์ Homestead.yaml ใน mydirectory / .homestead และไม่อยู่ในไดเรกทอรีโครงการ Homestead up หรือ Vagrant up สร้างข้อความต่อไปนี้

มีเครื่อง VirtualBox ที่มีชื่อว่า 'homestead' อยู่แล้ว

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'laravel/homestead'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'laravel/homestead' is up to date...
A VirtualBox machine with the name 'homestead' already exists.
Please use another name or delete the machine with the existing
name, and try again.

1
สิ่งนี้สามารถเกิดขึ้นได้เมื่อคุณลบโดยตรงจากระบบไฟล์โดยไม่แจ้ง Vagrant และ / หรือ VirtualBox ลองVBoxManage list vmsดูว่ามีรายการผี / เด็กกำพร้า / ซอมบี้ที่ต้องกำจัดหรือไม่
MarkHu

สำหรับคำตอบเฉพาะของ homestead - ดูคำตอบจาก @TheSteed
John_911

คำตอบ:


276

ฉันแก้ไขโดยใช้vboxmanageเพื่อรับ ID ของ VM

$ vboxmanage list vms
"my-vm" {c700b8b6-b766-4638-871b-736b44b7db18}

คัดลอก ID ของ VM ที่ต้องการ ( c700…db18สตริง) ลงในเนื้อหาของ~/.vagrant/machines/default/virtualbox/id. บันทึกไฟล์จากนั้นรันvagrant upเพื่อให้ vm ทำงานโดยไม่ต้องทำลายมัน


22
คำตอบของคุณควรได้รับการยอมรับ! คุณแก้ปัญหาได้โดยไม่ต้องทำลายเครื่องจักรอย่างที่คนอื่นแนะนำ
Nisic Jovan

17
เพียงเพื่อให้ทราบว่าถ้าคุณตั้งชื่อกล่องของคุณแตกต่างกันผ่านทางdefine(เช่นฉัน) จากนั้นเส้นทางจะไม่มัน:../default/ .vagrant/machines/<box name>/virtualbox/id#กำไร!
Ian Vaughan

7
ทำงานอย่างมีเสน่ห์ แค่อยากรู้ว่าทำไม id ของ vm ของฉันเปลี่ยนไปอย่างกะทันหันและนี่เป็นสิ่งที่จำเป็นเลย
คริส

7
ในสภาพแวดล้อม dev ของฉันไฟล์ id อยู่บนเส้นทางเดียวกัน แต่อยู่ในรูทของโปรเจ็กต์ ที่ project-root / .vagrant / Machines / default / virtualbox / id
Guillermo Maschwitz

23
สำหรับฉัน.vagrantโฟลเดอร์ไม่ได้อยู่~/ในโฟลเดอร์การติดตั้ง homestead (เช่นโฟลเดอร์ที่คุณเรียกใช้vagrant up)
andrewtweber

75

สำหรับฉันเครื่องไม่แสดงเป็น VM ที่ใช้งานอยู่ในแอปพลิเคชัน VirtualBox ในการแก้ไขฉันต้องทำสิ่งนี้:

vagrant global-status

สิ่งนี้ทำให้ฉันมี ID ของเครื่องที่ฉันต้องการทำลาย ด้วย ID ให้รัน:

vagrant destroy {VM ID}

ฉันต้องเรียกใช้สิ่งนั้นใน sudo เพื่อทำลายเครื่องจริงๆ พอถึงที่หมายก็วิ่งได้

vagrant up


หากกล่องที่อยู่อาศัยของคุณเสียหายไม่ได้ทำงานอยู่นี่คือคำตอบสำหรับคุณ ตรวจสอบแล้วบน Ubuntu 14.02 ที่ใช้ VirtualBox
Dylan Pierce

สิ่งนี้มีประโยชน์เพราะจะแสดงไดเรกทอรีของการเรียกใช้ VMs คนจรจัด
Mladen Janjetovic

vagrant destroy vm_idต้องรันคำสั่งจากภายในไดเร็กทอรีเดียวกัน
อมร

42

คุณอาจมี virtualbox ทำงานอยู่! เปิดโปรแกรม virtualbox และปิด virtualbox อื่น ๆ ) http://smallbusiness.chron.com/shut-down-virtualbox-43657.html

หากไม่ได้ผลคุณอาจต้องการลบโฟลเดอร์ homestead เก่าและวางโครงการทั้งหมดของคุณในโฟลเดอร์ใหม่)


41

จากข้อความต่อไปนี้:

เครื่อง VirtualBox ที่มีชื่อ ' vm_name ' มีอยู่แล้ว โปรดใช้ชื่ออื่นหรือลบเครื่องด้วยชื่อที่มีอยู่แล้วลองอีกครั้ง

ฉันแสดงรายการเครื่องเสมือนที่ทำงานอยู่ในปัจจุบันจากบรรทัดคำสั่ง:

VBoxManage list vms

ผลลัพธ์ :

"vm_name" { 8ba467b7-da96-4f68-9bf8-671dd6f0d007 }

จากนั้นดำเนินการลบเครื่องเสมือนที่กระทำผิด:

VBoxManage unregistervm 8ba467b7-da96-4f68-9bf8-671dd6f0d007 --delete

8
คำตอบเดียวที่แสดงวิธีการลบ VM จากบรรทัดคำสั่ง
WorldSEnder

1
โปรดทราบว่าจะใช้ไม่ได้หาก VirtualBox VM ยังคงทำงานอยู่ ต้องปิด VM มิฉะนั้นคำสั่งจะล้มเหลว "เนื่องจาก VM ถูกล็อก"
Noah Sussman

4
ใช่และคำสั่งจะปิดเครื่อง สรุปสิ่งที่ใช้ได้ผลสำหรับฉัน: รายการ vboxmanage vms, vboxmanage controlvm <id> poweroff, vboxmanage unregistervm <id>
--delete

28

ฉันไปงานปาร์ตี้เรื่องนี้ช้าไปหน่อย แต่สำหรับใครก็ตามที่มีปัญหานี้ SergioPeluzzi เข้ามาใกล้ที่สุด แต่ไม่ได้รับซิการ์ด้วยสิ่งนี้:

ค้นหา vb.name = settings ["name"] = "homestead" และเปลี่ยน "homestead" เป็น "HOMESTEAD" และ "vóilá"

บรรทัดคือ:

vb.name = settings["name"] ||= "homestead"

ดังที่คุณเห็นจากบิตที่ระบุการตั้งค่า ["ชื่อ"] คุณเพียงแค่ต้องเพิ่มฟิลด์ชื่อในไฟล์ Homestead YAML ของคุณเช่น

memory: 2048
cpus: 1
provider: virtualbox
name: my-sexy-homestead-box

7
นี่คือคำตอบที่ดีที่สุดถ้าคุณจริงติดตั้งและใช้อินสแตนซ์ Homestead หลาย
lintuxvi

1
ฉันเห็นด้วยกับ @lintuxvi นี่เป็นคำตอบที่ดีที่สุดหากคุณกำลังทำงานกับอินสแตนซ์ Homestead หลายรายการ
Abdul Rahman A Samad

1
ที่สำคัญคือname: my-sexy-homestead-box- ขอบคุณ!
Artistan

ห่างไกลคำตอบที่ดีที่สุด!
sdespont

16

ฉันแก้ไขการแก้ไขนี้ /Homestead_folder/scripts/homestead.rb

มองหา vb.name = settings["name"] = "homestead"ไลน์และเปลี่ยนhomesteadเป็นHOMESTEADและ"vóilá"ที่เหมาะกับฉัน


นี่คือคำตอบที่ดีที่สุดที่ฉันเคยเห็น
Ousmane Traore

นี้ได้ผล ค้นหาไฟล์นี้สำหรับระเบียนทั้งหมด vb.name = settings ['name'] และเปลี่ยนแปลงตามลำดับ
ottz0


14

ฉันแก้ไข Homestead.yaml และเพิ่มชื่อใหม่

ip: "192.168.10.10"
memory: 2048
cpus: 4
provider: virtualbox
name: my-new-homestead-box-name

นี่คือวิธีที่ถูกต้องในการทำ homestead.rb config ก่อนอื่นให้ค้นหาตัวแปร name ใน homestead.yaml
Sjshovan

ฉันพยายามที่จะให้ที่อยู่อาศัยอื่นทำงาน ไม่เคยคิดว่ามันจะง่ายขนาดนี้ เพียงเพิ่มชื่อใน Homestead.yaml
Apit John Ismail

1
นี่ควรเป็นคำตอบที่ได้รับการยอมรับและนำไปใช้ได้ง่ายที่สุด
Casper Wilkes

9

ฉันมีไดเร็กทอรี. vagrant เก่าในโปรเจ็กต์ของฉันซึ่งทำให้เกิดข้อผิดพลาด :)

หากวิธีนี้ไม่สามารถแก้ไขได้สำหรับคุณฉันขอแนะนำให้เปิด VirtualBox และลบ VirtualBox ทั้งหมดแล้วลองอีกครั้ง


2
นั่นแหล่ะ หลังจากทำ "vagrant box update" ฉันต้องลบไดเร็กทอรี. vagrant นั้นและเรียกใช้ vagrant ขึ้นใหม่
ecairol

8

ฉันมีปัญหาเดียวกันในวันนี้ ใช้เวลาสองสามชั่วโมงเพื่อค้นหาวิธีแก้ปัญหา หากด้วยเหตุผลใดก็ตามคุณไม่พบรายการออกจากเครื่องเสมือนให้พิมพ์เทอร์มินัล

sudo virtualbox

สิ่งนี้จะเรียกใช้ Virtual Box ใน GUI คุณควรเห็นรายการ VM ทั้งหมดและจากที่นั่นคุณจะสามารถจัดการได้ การพิมพ์ "virtualbox" เท่านั้นจะไม่แสดงอะไรเลย คุณต้องเป็น root (ผู้ดูแลระบบ)

ขอบคุณ mightyspaj สำหรับเคล็ดลับ


1
เมื่อใช้แอป virtualbox ปกติบน OS X ฉันไม่เห็น VM ใด ๆ ในรายการแม้ว่าฉันจะถูกแจ้งว่ามีอยู่แล้วก็ตาม จากนั้นฉันพิมพ์ sudo virtualbox และเห็นกอง VM ทั้งหมดและปัญหาได้รับการแก้ไข ขอบคุณ.
Dwayne Charrington

ไม่เคยใช้ sudo กับ VirtualBox คุณจะทำให้สิทธิ์การใช้งานผิดพลาด
Wistar

7

ฉันได้รับข้อความแสดงข้อผิดพลาดเดียวกันแม้ว่าจะเรียกใช้ "homestead destory" และ "vagrant destroy" เช่นเดียวกับคุณฉันใช้ผู้ให้บริการ VirtualBox คนเร่ร่อนและที่อยู่อาศัย นี่คือสิ่งที่ฉันทำ:

  1. เปิด VirtualBox GUI ฉันเห็น "homestead" เป็น VM แต่ไม่สามารถลบออกได้ปุ่มเป็นสีเทา
  2. ฉันออกจากระบบปฏิบัติการของฉันกลับเข้าสู่ระบบและเปิด VirtualBox อีกครั้ง ตอนนี้สถานะ "ยกเลิก" และฉันสามารถลบออกได้
  3. มีไฟล์เหลืออยู่ในไฟล์ ~/VirtualBox\ VMs/homesteadฉันจึงเรียกใช้rm -r /Users/gabriel/VirtualBox\ VMs/homestead
  4. ตอนนี้ฉันสามารถเรียกใช้ "homestead up" ได้แล้ว

6

ฉันเปิด virtualBox แล้วลบ homestead vm ที่สร้างไว้ก่อนหน้านี้ มันช่วยได้


5

รายการกล่องพเนจร

กล่องคนจรจัดลบ laravel / homestead

สถานะทั่วโลกที่เร่ร่อน

คนจรจัดทำลาย nameOfYourBox

เปิด VirtualBox ของคุณและลบ itens ทั้งหมดของที่อยู่อาศัยของคุณ

เร่ร่อนขึ้น



3

บางครั้งคุณอาจไม่ต้องการลบกล่องเก่า เมื่อวานนี้ Vagrant รุ่นเก่าอาจพังฉันได้อัปเดต Vagrant และ Virtualbox แต่การแมปโฟลเดอร์ไม่ทำงาน ฉันต้องการเรียกใช้กล่องใหม่และมีข้อผิดพลาดนี้

ฉันไม่ต้องการลบกล่องเก่า (เพราะฉันต้องการเรียกใช้การสำรองข้อมูลบางอย่าง) แต่ฉันต้องการเรียกใช้กล่องใหม่ โซลูชันกำลังเรียกใช้ VirtualBox คลิกขวาที่เครื่อง Homestead แล้วเลือกการตั้งค่าจากนั้นเปลี่ยนชื่อจากhomesteadเป็นhomestead_oldไป

หลังจากนั้นฉันสามารถติดตั้ง homestead ได้ แต่มีเครื่องเก่านี้และยังสามารถเรียกใช้สิ่งนี้เพื่อทำการสำรองข้อมูลที่ฉันต้องการ

ชื่อเปลี่ยน Homestead ใน Virtualbox


3

หากคุณเป็นผู้ใช้ Windows ตรวจสอบให้แน่ใจว่าคุณลบC:\Users\<Username>\VirtualBox VMs\homesteadโฟลเดอร์ เพราะถ้ายังมีโฟลเดอร์ชื่อ homestead การดำเนินการของvagrant upจะไม่เสร็จสมบูรณ์


1
ในกรณีของฉันฉันมีสองโฟลเดอร์: homestead และ homestead-7 หลังจากลบทั้งสองอย่างแล้วปัญหาได้รับการแก้ไข ขอบคุณ!
eleftrik

3

สิ่งนี้ไม่ได้ผลสำหรับฉัน ฉันใช้เครื่อง dev เก่า

ฉันพยายาม:

  1. vagrant global-status> ทำลายสิ่งidที่คุณไม่ต้องการหรือตรงกับสิ่งที่ขัดแย้งกัน

  2. เปิด virtualbox และลบ + ลบไฟล์ที่คุณไม่ต้องการหรือขัดแย้งกัน

อะไรได้ผล:

  • ค้นหา~/.vagrant/machines/หรือ~/.vagrant.d/boxesโฟลเดอร์ของคุณ ในกรณีของฉันมันมี vm ที่ขัดแย้งกันและยังมีเครื่อง vm เก่าที่เหลืออยู่มากมายซึ่งขั้นตอนที่ 1 & 2 ไม่ได้ลบออกด้วยเหตุผลบางประการ

  • หลังจากล้างสิ่งเหล่านี้ทุกอย่างก็ใช้ได้ดีอีกครั้งในที่สุด!


นี่เป็นคำตอบที่ดีหาก VM ที่ขัดแย้งกันสามารถลบ / ล้างออกได้ คำตอบนี้ควรได้รับการแก้ไขในขณะนี้ว่าโฟลเดอร์คือ~/.vagrant.d/boxes/@ired00
lintuxvi

@lintuxvi เพิ่งเพิ่ม :)
สาย 00

ขอบคุณ! แก้ปัญหาให้ฉันได้!
VivekP

2

หากคุณต้องการเก็บรักษาเครื่องของคุณโดยไม่ทำลายและสร้างใหม่ตามขั้นตอนต่อไปนี้จะช่วยแก้ปัญหาของคุณได้ (ฉันทำงานบน OS X El Captain, Vagrant 1.8.1)

เรียกใช้ homestead ในโหมด debug

homestead --debug up

มองหาสิ่งที่ต้องการในผลลัพธ์:

เครื่อง INFO: กำลังเริ่มต้นเครื่อง: เครื่อง INFO เริ่มต้น: - ผู้ให้บริการ: VagrantPlugins :: ProviderVirtualBox :: Provider INFO machine: - Box: # INFO machine: - Data dir: /Users/YOUR_HOME_DIR/Workspace/Homestead/.vagrant/machines/default/ virtualbox

Data dirเป็นเส้นทางที่น่าสนใจสำหรับคุณ

แล้ว vboxmanage list vms

"homestead" {0e8438b9-4a67-4fb1-80cb-2c62cf04ab5c} "ไม้ตาย_default_1447385930122_73498_1474294682778_13108" {93ecb93f-f159-4406-a384-5312b4d3ab34}

แก้ไขไฟล์idในพา ธ ที่คุณพบในคำสั่งก่อนหน้า

vi /Users/YOUR_HOME_DIR/Workspace/Homestead/.vagrant/machines/default/virtualbox/id

แทนที่เนื้อหาของไฟล์นั้นด้วย id ของ VM ที่คุณต้องการแก้ไขในสถานการณ์นี้

0e8438b9-4a67-4fb1-80cb-2c62cf04ab5c

ตอนนี้ลอง

homestead up

VM ควรเริ่มการบูต อาจใช้งานได้หรือคุณอาจมีปัญหากับการตรวจสอบสิทธิ์ ssh

default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Authentication failure. Retrying...     default: Warning: Authentication failure. Retrying...

ในการแก้ไขให้ทำตามตรวจสอบการกำหนดค่า Homestead SSH

homestead ssh-config

คุณควรจะได้รับสิ่งที่ต้องการ

โฮสต์เริ่มต้น HostName 127.0.0.1 ผู้ใช้ vagrant Port 2222
UserKnownHostsFile / dev / null StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile "/Users/pryznar/.vagrant.d/insecure_private_key"
IdentitiesOnly yes LogLevel FATAL

แก้ไขไฟล์IdentityFile

/Users/YOUR_HOME_DIR/.vagrant.d/insecure_private_key

ตรวจสอบ Homestead.yml

cat /Users/YOUR_HOME_DIR/.homestead/Homestead.yaml

จากนั้นคัดลอกเส้นทางไปยังไฟล์ภายใต้คีย์คีย์และคัดลอกคีย์ส่วนตัวจากไฟล์นั้น

cat ~/.homestead/ssh/id_rsa

ขั้นตอนสุดท้ายคือการแทนที่คีย์ส่วนตัวใน/Users/YOUR_HOME_DIR/.vagrant.d/insecure_private_keyด้วยคีย์ที่คุณเพิ่งคัดลอก

ตอนนี้ลอง rung homestead อีกครั้งน่าจะใช้ได้

homestead up

ฉันได้รับคำเตือน แต่จนถึงตอนนี้ก็ใช้งานได้โดยไม่มีปัญหา

==> ค่าเริ่มต้น: คำเตือน: การใช้รหัสผ่านบนอินเทอร์เฟซบรรทัดคำสั่งอาจไม่ปลอดภัย ==> ค่าเริ่มต้น: ERROR 1045 (28000): การเข้าถึงถูกปฏิเสธสำหรับผู้ใช้ 'homestead' @ 'localhost' (โดยใช้รหัสผ่าน: ใช่) คำสั่ง SSH ตอบสนองด้วยสถานะการออกที่ไม่ใช่ศูนย์ Vagrant สันนิษฐานว่านี่หมายความว่าคำสั่งล้มเหลว ผลลัพธ์สำหรับคำสั่งนี้ควรอยู่ในบันทึกด้านบน โปรดอ่านผลลัพธ์เพื่อตรวจสอบสิ่งที่ผิดพลาด


2

คุณสามารถเปิด VirtualBox GUI และลบเครื่องเสมือนที่ขัดแย้งกันได้


1

ในกรณีของฉันบทความต่อไปนี้ให้วิธีแก้ปัญหา มีโฟลเดอร์ชื่อhomestead อยู่ภายใน path / var / root / VirtualBox VMs /ที่เป็นสาเหตุของปัญหา เมื่อลบโฟลเดอร์นี้แล้วrm -r homesteadปัญหาได้รับการแก้ไขแล้ว หากคุณไม่สามารถมองเห็นหรือเข้าถึงเส้นทางนี้ให้ดำเนินการคำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลของคุณ:

$ sudo -s 
$ cd /var/root/VirtualBox\ VMs

และดำเนินการลบโฟลเดอร์homestead


1

ฉันมีข้อผิดพลาดต่อไปนี้:

ข้อผิดพลาด :

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

วิธีแก้ไข :

  • ค้นหาโฟลเดอร์VirtualBox VMSในกรณีของฉันมันอยู่ใน~/VirtualBox VMs
  • แสดงรายการองค์ประกอบในโฟลเดอร์ด้วยlsคำสั่งและตรวจสอบว่ามีเครื่องเสมือนอยู่ที่นั่นหรือไม่
  • ลบโฟลเดอร์ที่มีชื่อเครื่องในกรณีของฉัน homestead-7
  • ดำเนินการvagrant upคำสั่งอีกครั้งในโฟลเดอร์ homestead

ทั้งหมดนี้ฉันหวังว่ามันจะเป็นประโยชน์นั่นคือทางออกของฉัน

ความนับถือ!


0

หลังจากไม่กี่ชั่วโมงของการแก้ไขปัญหาไม่มีอะไรอื่นที่ใช้ได้ผลสำหรับฉันเนื่องจากไม่มีใครพูดถึงรายละเอียดเล็กน้อยนี้

ขึ้นอยู่กับสิทธิ์ของคุณในขณะติดตั้งคุณอาจต้องเรียกใช้ virtualbox ในฐานะผู้ดูแลระบบ เมื่อฉันทำสิ่งนี้เท่านั้นที่ฉันเห็นกล่องคนเร่ร่อนของฉันในรายการเครื่องเสมือน

จากนั้นฉันก็ดำเนินการลบเครื่องเสมือนของฉันที่มีชื่อhomesteadออกจาก virtualbox และปัญหาได้รับการแก้ไขแล้ว



0

Vagrant อาศัย VirtualBox (หากเป็นผู้ให้บริการเริ่มต้น) ดังนั้นจึงตรวจสอบสภาพแวดล้อมที่มีอยู่ก่อนที่จะจัดเตรียม VM ของคุณ

กำลังดำเนินการคำสั่งต่อไปนี้:

VBoxManage list vms

และเมื่อพบ VM ที่มีชื่อโฮสต์เดียวกันก็จะล้มเหลว

คุณสามารถแก้ไขข้อบกพร่องได้โดย:

vagrant --debug up

เพื่อหาเหตุผลที่แท้จริง


สารละลาย

หากคุณวางแผนที่จะใช้ VM หลายเครื่องในโฟลเดอร์ต่างๆคุณจำเป็นต้องเปลี่ยนconfig.vm.hostname(อาจconfig.vm.provider(name)เป็นไปได้เช่นกัน) ในของคุณVagrantfileเพื่อให้ไม่ซ้ำกัน หรือเพียงแค่ลบออกดังนั้น Vagrant จะกำหนดชื่อที่แตกต่างกันสำหรับแต่ละ VM

หากไม่เป็นเช่นนั้นให้ปิดและยกเลิกการลงทะเบียน VM ก่อนหน้าซึ่งขัดแย้งกันโดยการรัน:

VBoxManage controlvm NAMEOFVM poweroff
VBoxManage unregistervm NAMEOFVM --delete

และเรียกใช้vagrant upไฟล์.

หากล้มเหลวในการเปลี่ยนชื่อไดเร็กทอรี (เนื่องจากคุณพลาด--delete) ให้เปลี่ยนชื่อหรือลบโฟลเดอร์ปลายทางตัวอย่างเช่น:

rm -fr ~/"VirtualBox VMs/NAMEOFVM"

แล้วลองใหม่อีกครั้ง


ปัญหานี้อาจเกี่ยวข้องกับ: GitHub issue # 2969 - คนเร่ร่อนไม่พบ VM ที่รันก่อนหน้านี้


0

ในกรณีของฉันไม่มีสิ่งใดบ่งชี้ว่า VM "มีอยู่แล้ว" นอกจากข้อความแสดงข้อผิดพลาดนั้น ไม่มีสิ่งใดบน VirtualBox UI ไม่มีสิ่งใดส่งคืนโดย“ vboxmanage list vms” ไม่มีอะไรผ่าน“ vagrant global-status” ไม่มีอยู่ใน“ .vagrant.d \ boxes” เป็นต้น ฉันแก้ไขได้โดยสร้าง VM ชื่อเดียวกันใหม่ด้วยตนเองใน VM VirtualBox Manager (โดยใช้ปุ่ม "ใหม่" + ยอมรับค่าเริ่มต้นทั้งหมด) จากนั้นจึงลบออก (คลิกขวา> ลบ) หลังจากนั้น“ คนเร่ร่อน” ก็ทำงานตามที่คาดไว้


0

วันนี้ฉันมีปัญหาเดียวกัน Windows 10 ฉันเพิ่งอัปเดต Homestead ดังนั้นข้อผิดพลาดอาจเป็นเพราะเหตุนั้น ฉันพยายามมันทั้งหมดdestroy, upโฟลเดอร์ลบสิ่งที่ เมื่อใดก็ตามที่ฉันพยายามเรียกใช้vagrant upมันแสดงข้อผิดพลาดประเภทนี้ การแก้ไขปัญหา? หลังจากอัปเดตฉันสังเกตเห็นว่า Homestead กำลังตั้งชื่อกล่องตามชื่อโฟลเดอร์โครงการและ Homestead.yaml มีข้อมูลทั้งหมดนั้น ฉันเพิ่งเรียกใช้การกำหนดค่า Homestead Windows vendor\\bin\\homestead makeและหลังจากนั้นvagrant up(ก่อนที่จะตรวจสอบให้แน่ใจว่าทุกอย่างสะอาดหมดจด) และvoiláดูเหมือนว่าเครื่องกำลังบูตอยู่ในขณะนี้ =) ลองใช้ถ้าคุณต้องการ


0

เพิ่ม--forceหลังกล่องและก่อนชื่อของคุณ


2
โปรดแก้ไขคำตอบของคุณเพื่ออธิบายว่าเหตุใดคุณจึงคิดว่าโซลูชันนี้ใช้ได้ผลอย่างไรและอย่างไร นอกจากนี้ยังควรปรับปรุงภาษาอังกฤษของคุณให้เป็นทางการ (แม้ว่าฉันจะขอบคุณที่ภาษาอังกฤษอาจไม่ใช่ภาษาแรกของคุณ) แม้ว่าฉันจะแก้ไขคำตอบของคุณให้ถูกต้องและเป็นระเบียบเรียบร้อยแล้วก็ตาม
เดวิดบอกว่าคืนสถานะโมนิกา

0

การเปลี่ยนชื่อ VM เริ่มต้นที่มีอยู่แล้ว

ข้อจำกัดความรับผิดชอบ

ขั้นตอนต่อไปนี้จะทำลาย VM ของคุณและอาจใช้ได้เฉพาะในสภาพแวดล้อมที่ถูกทำลายเช่นของฉัน! สำหรับสภาพแวดล้อมการผลิตให้พิจารณาซ่อมแซมสมาคมเช่นตามที่อธิบายไว้ที่นี่

ฉันมีปัญหานี้หลังจากแทนที่ชื่อเริ่มต้นของ VM ที่มีอยู่แล้วโดยใช้

Vagrant.configure("2") do |config|
  config.vm.define :ubuntu_test

ซึ่งตั้งชื่อ VirtualBox ไว้ด้วย (ในฐานะมือใหม่ฉันคิดว่า Vagrand จะใช้ชื่อนี้ด้วย)

config.vm.provider "virtualbox" do |vb|
     vb.name = "Ubuntu-Test"
end

โดยการเพิ่มconfig.vm.defineดูเหมือนว่า Vagrant จะไม่เชื่อมโยง VirtualBox VM กับไฟล์ Vagrant อีกต่อไปเพราะแม้จะvagrant destroy -fพูดVM not createdแต่vagrant upโยนข้อผิดพลาดนี้

มีเครื่อง VirtualBox ชื่อ 'Ubuntu-Test' อยู่แล้ว

เพื่อลบ VM ของซอมบี้เหล่านั้น
  1. หาก VM กำลังทำงานอยู่ให้หยุดก่อน: vboxmanage shutdown <VMName>(นี่คือชื่อUbuntu-Test)
  2. รับรหัสโดยการเรียกใช้ vboxmanage list vms
  3. ลบมัน: vboxmanage unregistervm <Id> --delete
  4. ตอนนี้ VM ของคุณสามารถสร้างใหม่ได้โดยใช้ไฟล์ vagrant up
  5. โดยใช้vagrant global-status --pruneชื่อใหม่ของคุณจะปรากฏขึ้น


0

Windows10

แก้ไขไฟล์ Homestead.yaml และตั้งชื่อใหม่สำหรับกล่อง:

ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox
name: my-new-vbox      #new name for the box

และเรียกใช้vagrant upหรือvagrant up --provision

หรือ

เปิดแอปพลิเคชัน Virtualbx ใน GUI และลบ virtualbox ทั้งหมดที่ทำให้เกิดปัญหาและเรียกใช้คำสั่งด้านบน

หรือ

ลบ ไฟล์"Vagrant"ในโฟลเดอร์ homestead และเรียกใช้คำสั่งด้านบน


0

คุณต้องเพิ่มคีย์nameลงในhomestead.yamlไฟล์ของคุณทันทีหลังจากผู้ให้บริการดังนี้:

name: name_of_you_machine

ที่เหมาะกับฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.