1. VirtuaBox 와 vagrant 를 설치하는 운영체제의 로그인 계정이 한글이면 에러가 나므로 반드시 영문 계정을 사용하세요.
  2. 회사에서 사용하는 보안 프로그램, 백신등이 있을 경우 VirtualBox 가 제대로 동작하지 않을 수 있습니다. 이럴 경우 윈도일 경우 XAMPPP, 맥 일 경우 MAMP 를 사용하여 로컬 개발 환경을 구성해야 합니다.
vagrant FAQ 정리

VirtualBox 5.1 에서 구동 에러

증상

vagran로 구동시 아래 에러 메시지와 함께 구동 실패

$ vagrant up
The provider 'virtualbox' that was requested to back the machine
'default' is reporting that it isn't usable on this system. The
reason is shown below:

Vagrant has detected that you have a version of VirtualBox installed
that is not supported by this version of Vagrant. Please install one of
the supported versions listed below to use Vagrant:

4.0, 4.1, 4.2, 4.3, 5.0

A Vagrant update may also be available that adds support for the version
you specified. Please check www.vagrantup.com/downloads.html to download
the latest version.

원인

VirtualBox 5.1 이 설치되었을 경우 Vagrant 에서 인식 불가

처리

vagrant 1.8.5 이상 버전을 새로 설치하면 해결됨



E_INVALIDARG - Fail to create host-only adapter

증상

원인

VirtualBox 에 추가된 NDIS6 driver 에 문제가 있음.

처리

  1. 제어판 -> 네트워크 환경에 가서 VirtualBox Host-only network 설정에 진입
  2. "NDS6 Bridged Networking Driver" 를 비활성화하고 확인을 눌러서 저장했다가 다시 활성화

Encoding::CompatibilityError


증상

Encoding::CompatibilityError 예외와 함께 인코딩이 잘못되었다는 에러 메시지가 출력되며 vagrant 실행 안 됨.

incompatible character encodings: UTF-8 and CP-949

 

원인

현재 경로에 한글이 포함되어 있음(윈도에서 한글 로그인명 사용, Homestead 상위 폴더가 한글등)

처리

  1. 영어로 로그인 계정을 만들고 해당 계정으로 vagrant 구동
  2. Homestead 폴더를 영어 이름으로 변경


An error occurred while downloading the remote file. HTTP server doesn't seem to support byte ranges. Cannot resume.

여러 가지 이유로 vagrant box add 명령어가 정상적으로 종료되지 않았을 경우 다시 시도하면 다음과 같은 에러가 발생합니다.



이는 예전에 받은 박스 이미지가 남아 있어서 발생하며 사용자 홈 디렉터리의 .vagrant.d\tmp 내 파일을 삭제하고 box add 명령어를 다시 시도하면 됩니다.



A VirtualBox machine with the name 'homestead' already exists.

==> 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.

증상

Homestead 폴더에서 vagrant up 실행시 아래와 같은 메시지가 출력되고 homestead 가 실행되지 않음

해결

  1. vboxmanage list vms 를 실행하여 현재 virtual box 의 id 를 출력
     
  2. "homestead" {78bee583-fd6f-4e4f-b58a-1e8c2a769ea7} 와 같은 항목을 찾아서 {와 } 사이의 문자(78bee583-fd6f-4e4f-b58a-1e8c2a769ea7) 를 복사
  3. Linux 라면 다음 명령어 실행

    echo '78bee583-fd6f-4e4f-b58a-1e8c2a769ea7' > ~/Homestead/.vagrant/machines/default/virtualbox/id
    CODE
  4. Windows 는 C:\Users\lesstif\Homestead\.vagrant\machines\default\virtualbox 폴더에 id 라는 파일을 만들고 위에서 복사한 78bee 값을 추가

    윈도 사용자는 자신의 계정에 맞게 수정

  5. 저장하고 Homestead 폴더에서 vagrant up 실행

참고 

default: Warning: Authentication failure. Retrying...

vagrant up 하면 아래와 같이 ssh 인증이 실패해서 Code 폴더 마운트등이 제대로 동작하지 않음

default: SSH auth method: private key
default: Warning: Connection timeout. Retrying...
default: Warning: Authentication failure. Retrying...
default: Warning: Authentication failure. Retrying...
default: Warning: Authentication failure. Retrying...

원인

vagrant 의 공개키가 homestead 에 등록되지 않아서 ssh 로 연결하지 못해서 에러 발생

해결

  1. homestead 부팅

    vagrant up
    CODE
  2. homestead 에 ssh 로 로그인

    ssh vagrant@192.168.10.10
    CODE
  3. vagrant 공개키 다운로드

    curl -O https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub
    CODE
  4. vagrant 의 공개키 추가

    cat vagrant.pub >> ~/.ssh/authorized_keys
    CODE
  5. vagrant 중지후 재기동하여 동작 확인

    vagrant halt
    vagrant up
    CODE

The specified host network collides with a non-hostonly network!

vagrant up

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'laravel/homestead' is up to date...
==> default: Clearing any previously set network interfaces...
The specified host network collides with a non-hostonly network!
This will cause your specified IP to be inaccessible. Please change
the IP or name of your host only network so that it no longer matches that of
a bridged or non-hostonly network.
CODE

기본 private network 인 192.168.10.* 대역을 다른 드라이버가 사용중이라 충돌나서 homestead 를 시작하지 못함.

필자의 경우 vmware 도 설치되어 있는데 Vmware 의 NAT 와 같은 대역의 IP 를 사용하여 충돌하여 vmware의 Virtual Network Editor 를 사용하여 NAT 네트워크를 재설정함.