Vagrant + Virtualbox 6.1.16과 WSL2를 동시에 움직인 메모
6658 단어 WSL2VirtualBoxVagrant
개요
반년 전, WSL2를 사용해보십시오. , VirtualBox를 사용할 수 없게 되었기 때문에 되돌리기 등하고 있었다.
최근 WSL2가 주위에 퍼지기 시작했기 때문에 이행했다.
그 때, VirtualBox가 이제 공존할 수 있다는 기사를 발견했다.
Windows의 버전도 올린 곳이었기 때문에, 이번이라면 갈 수 있을까라고 시도했더니 성공했다.
비망록으로서, 순서를 남긴다.
환경
작업시 완료시의 Vagrantfile
WSL2 사용
Windows 기능 사용
Windows ロゴ キー + Rキー
에서 파일 이름을 지정하여 실행을 시작하고 optionalfeatures
를 입력하고 OK를 누릅니다.Linux用Windowsサブシステム
및 仮想マシンプラットフォーム
확인Linux 커널 업데이트
관리자 권한으로 열린 Powershell에서
wsl --set-default-version 2
를 입력하여 WSL2의 유효성을 확인하려고했는데 커널이 오래되었으므로 업데이트하라는 메시지가 표시되었습니다.Windows 10용 Windows Subsystem for Linux 설치 가이드의 【4단계 - Linux 커널 업데이트 패키지 다운로드】 「x64 머신용 WSL2 Linux 커널 업데이트 패키지」에서 업데이트용 프로그램을 DL하여 실행.
Ubuntu20 설치
이제 안정적일 것이고 배포판은 Ubuntu20을 선택했다.
Windows 10용 Windows Subsystem for Linux 설치 가이드의 [6단계 - 선택한 Linux 배포판 설치]에 따라 배포판을 설치합니다. Ubuntu20을 시작하여 사용자 이름과 암호를 등록합니다.
wsl --list --verbose
로 설치되었는지 확인합니다.VirtualBox와의 공존 설정
Windows 기능 사용
Windows 하이퍼바이저 플랫폼을 활성화합니다.
이것이 VirtualBox와 WSL2를 공존시키기 위해 필요하다.
VirtualBox 설치
이를 위해 VirtualBox는 WSL2를 활성화 한 후 다시 설치했습니다.
cinst -y virtualbox
시도해보기
vagrant up
로 시작하여 상황을 지켜 보았습니다.네트워크 설정이 몇 번이고 불안해지지만 "예""예". . . 이것은 지금까지의 VirtualBox로 복수의 IP를 사용하고 있었기 때문에 가능성이 크다.
SSH auth method: private key
곳에서 멈춘다.전회도 여기서 멈추고 있었지만, 이번은 Vagrantfile로
vm.gui=true
를 넣어 확인하고 있었는데, 셋업중에 로그인 화면이 표시되기 전에 떨어지고 있었다.에러 메시지에 나와 있는 대로,
vonfig.vm.boot_timeout=300
(와)과 타임 아웃 시간을 늘려 준다.성공
상기 수정 후,
vagrant up
를 한 결과, SSH
에서 진행하여 무사히 기동할 수 있었다.2020/12/04 추가
Windows를 다시 시작하면
SSH auth method: private key
다시 멈추는 문제가 발생했습니다.Vagrant box startup timeout due to no serial port을 참조하여 Vagrantfile을 수정했습니다.
조금 기동하는데 시간은 걸리지만, 움직이게 되었다.
Vagrantfile
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.network "private_network", ip: "192.168.50.10"
config.vm.network "forwarded_port", guest: 9005, host: 9005
# WSL2 を 有効化しているとき、ssh接続でタイムアウトしてしまうため追記。 2020.11.07
config.vm.boot_timeout = 500
config.vm.provider "virtualbox" do |vm|
vm.memory = 8192
vm.linked_clone = true
vm.customize ["modifyvm", :id, "--cpus", "4", "--ioapic", "on"]
vm.customize ["modifyvm", :id, "--uart1", "0x3F8", "4"]
vm.customize ["modifyvm", :id, "--uartmode1", "file", File::NULL]
+ vm.customize ["modifyvm", :id, "--nestedpaging", "off"]
+ vm.customize ["modifyvm", :id, "--paravirtprovider", "hyperv"]
end
end
2021.11.03 추가
virtualbox 6.1.28 에 6.1.26 로부터 갱신하면(자), 이하의 에러로 기동할 수 없게 되었다.
Stderr: VBoxManage.exe: error: Call to NEMR0InitVMPart2 failed: VERR_NEM_INIT_FAILED (VERR_NEM_VM_CREATE_FAILED)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
virtualbox의 스레드 보면 공존 할 수 없게 된 것 같아?
bcdedit.exe /set hypervisorlauchtype off
가 필요하다고 썼습니다.2021.11.25 추가
virtualbox 6.1.30에서 다시 공존할 수 있게 되었다.
change log
VMM: Fixed 6.1.28 regression preventing VMs starting when using Hyper-V mode on Windows 10
참고
Windows10 Home에서 Windows용 Docker Desktop을 실행한 메모
Windows 10에서 WSL을 비활성화하고 Virtual Box + Vagrant가 작동하도록 되돌린 메모
WSL2와 Hyper-V의 관계
10.5. Paravirtualization Providers
Reference
이 문제에 관하여(Vagrant + Virtualbox 6.1.16과 WSL2를 동시에 움직인 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hibohiboo/items/c17459e0af84d2059d21텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)