Vagrant는 VirtualBox 공유 폴더를 마운트 할 수 없습니다.


79

현재 설정 : 버추얼 5.1.20방랑 1.9.3

이전 작업 설정 : 버추얼 5.1.18방랑 1.9.3

최신 버전의 Virtualbox를 설치하고 VM을 시작하려고했습니다. 폴더 마운트가 작동을 멈췄습니다. 동일한 폴더 마운트가 Virtualbox 5.1.18 에서 잘 작동합니다 . 다음과 같은 오류 메시지가 나타납니다.

Vagrant는 VirtualBox 공유 폴더를 마운트 할 수 없습니다. 이는 일반적으로 파일 시스템 "vboxsf"를 사용할 수 없기 때문입니다. 이 파일 시스템은 VirtualBox Guest Additions 및 커널 모듈을 통해 사용할 수 있습니다. 이러한 게스트 추가가 게스트에 제대로 설치되었는지 확인하십시오. 이것은 Vagrant의 버그가 아니며 일반적으로 결함이있는 Vagrant 상자로 인해 발생합니다. 컨텍스트의 경우 시도한 명령은 다음과 같습니다.

 mount -t vboxsf -o uid=1000,gid=1000 keys /keys 

명령의 오류 출력은 다음과 같습니다.

mount: wrong fs type, bad option, bad superblock on keys,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try dmesg | tail or so.

수동으로 vagrant-vbguest플러그인을 설치하려고 시도했지만 (을 통해 vagrant plugin install vagrant-vbguest) 아무것도 고쳐지지 않았습니다. 5.1.18로 다시 다운 그레이드하면 문제가 해결되지만 앞으로 나아가는 것이 이상적이지 않습니다.

Virtualbox 5.1.20Vagrant 1.9.3에서 폴더 마운트를하려면 어떻게 해야합니까?


컴퓨터에 설치 한 vbguest 플러그인 버전을 지원하지 않는 이전 상자가 호스트에 캐시 된 경우에도 발생할 수 있습니다. 자세한 내용은 여기에서
Brad Parks

답변:


137

최신 정보

VirtualBox 5.1.22에서 수정되었습니다.

( https://www.virtualbox.org/ticket/16670 )

원래 답변

제 경우에는 VM 내부의 심볼릭 링크가 잘못되었습니다. VM에 로그인합니다.

$ vagrant ssh

그때:

$ ls -lh /sbin/mount.vboxsf 
lrwxrwxrwx 1 root root 49 Apr 19 14:05 /sbin/mount.vboxsf -> /opt/VBoxGuestAdditions-5.1.20/other/mount.vboxsf

이 링크는 끊어졌습니다. /opt/VBoxGuestAdditions-5.1.20/ 내부를 살펴보면 하위 폴더 "other"가 존재하지 않는 것을 알 수 있습니다. 이 줄은 다음을 수정합니다.

$ sudo ln -sf /opt/VBoxGuestAdditions-*/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf

이제 VM에서 로그 아웃합니다.

$ exit

그리고 그것이 당신을 위해 작동하는지 확인하십시오.

$ vagrant reload

하지만 내 상자 안에 /sbin/mount.vboxsf가 없기 때문에 링크를 수정할 수 없습니다!

/sbin/mount.vboxsf 링크가 처음에 존재하지 않으면 VBoxGuestAdditions를 설치할 수 없습니다. VirtualBox를 업데이트 한 후 일치하는 VirtualBox Extension Pack을 다운로드하지 않은 경우 발생할 수 있습니다 (v5.2.18 이상은 Virtualbox 업데이트 중에 자동으로 다운로드해야 함). 지금 할 수 있습니다.

  • 실행중인 모든 VM을 중지합니다.
  • VirtualBox 프로그램을 엽니 다.
  • VirtualBox Extension Pack의 다운로드를 시작하고 설치하십시오.
  • VirtualBox Extension Pack을 다운로드할지 묻는 메시지가 표시되지 않으면-> 파일-> 업데이트 확인을 열어 다운로드 대화 상자를 시작합니다.

VirtualBox Extension에 대한 업데이트가없는 경우 설치 프로그램이 메시지를 표시하고 vagrant 플러그인 vbguest가 응답을 프롬프트 할 수 없기 때문에 VBoxGuestAdditions를 설치할 수 없습니다 (이는 vbguest v0.15.0에서 "수정 됨" ). "vagrant up"의 출력에서 ​​볼 수 있습니다. 다음과 비슷한 줄이 있어야합니다.

Do you wish to continue? [yes or no]

이 경우 설치 프로그램을 수동으로 실행할 수 있습니다. 이렇게하려면 상자를 시작하십시오.

$ vagrant up

그런 다음 vbguest를 트리거하여 설치를 다시 시도하지만 나중에 VBoxGuestAdditions ISO를 마운트 된 상태로 둡니다.

$ vagrant vbguest --do install --no-cleanup

상자에 로그인하십시오.

$ vagrant ssh

설치 프로그램을 수동으로 실행했습니다.

$ sudo /mnt/VBoxLinuxAdditions.run

마지막 희망 : DIY!

위의 방법이 작동하지 않으면 게스트 추가를 수동으로 설치하십시오.

cd /opt
sudo wget -c http://download.virtualbox.org/virtualbox/5.1.28/VBoxGuestAdditions_5.1.28.iso -O VBoxGuestAdditions_5.1.28.iso
sudo mount VBoxGuestAdditions_5.1.28.iso -o loop /mnt
sudo sh /mnt/VBoxLinuxAdditions.run

8
참고로, 여기에이 버그의 수정 추적 티켓 virtualbox.org/ticket/16670
edwardmlyte

1
이것은 일시적인 수정 인 것 같습니다. 나는 다시 오류가 발생했습니다vagrant reload
Frank Henard

6
reoccurence 후, 나는 5.1.18로 다운 그레이드 - 문제 해결)
프랭크 Henard에게

2
버추얼 박스 5.1.22 r115126과 방랑 1.9.7에 대한 동일한 문제가
Alexiuscrow

2
5.1.26에서 동일한 문제가 있습니다
Kirill

47

vbguest 플러그인 설치는 VirtualBox 5.2.6 및 Vagrant 2.0.1에서 제 경우에 작동했습니다.

vagrant plugin install vagrant-vbguest


1
감사합니다! VirtualBox 5.2.6Vagrant 2.0.2부여합니다 GuestAdditions 5.2.6 running --- OK.지금
baikho

이 질문은 특정 버전의 virtualbox 및 vagrant에 대한 것이 었으며 해당 특정 버전의 경우 vagrant-vbguest플러그인이 작동하지 않는다고 이미 언급했습니다 .
edwardmlyte

3
최고의 답변이되어야합니다.
Abdennour TOUMI

virtualbox 5.2.8& 와 함께 작동합니다 vagrant 2.0.2. GuestAdditions 5.2.8설치되었습니다.
Max Peng

이것은 나에게도 효과적이었습니다. 흥미롭게도 이미 GuestAdditions가 설치되어 있었지만 Vagrant v1.8에서 v2.0으로, VirtualBox를 5.1에서 5.2로 업그레이드 한 후 마운트 오류가 발생하기 시작했습니다. 후에도 vagrant plugin update. 이 방법으로 플러그인을 다시 설치하면 문제가 해결되었습니다.
Scott Byers

4

이것은 나를 위해 일했습니다 ... 다음을 실행하십시오.

vagrant plugin repair

그때

vagrant plugin expunge --reinstall

그때

vagrant reload

1
이것에주의하세요. 그것은 당신의 상자와 방랑 설치를 망칠 수 있습니다.
Stuart Cusack

이것은 완벽 해요. 왜 이것이 효과가 있는지 모르겠지만 효과가 있으며 답변에 대해 많이 사랑합니다 !!!!!
Swift

3

나에게 다음 명령과 게스트 시스템 재부팅이 도움이되었습니다.

cd /opt/VBoxGuestAdditions-*/init  
sudo ./vboxadd setup

여기 에서 해결책을 찾았습니다 . 이 게시물을 참조하면 명령을 트리거하기 전에 vboxadd를 중지해야합니다 (vboxadd가 무엇인지 모르기 때문에 그렇게하지 않았습니다).


3

저에게 문제는 다음과 같은 조건에서 수정되었습니다.

환경:

  • VirtualBox 버전 6.0.4r128413
  • Vagrant 버전 2.2.3

단계 :

터미널 또는 명령 줄 ( cd) 에서 프로젝트 디렉터리로 이동 하고 다음 명령을 실행합니다.

  1. vagrant plugin install vagrant-vbguest Vagrant VB 게스트 플러그인을 설치하려면

  2. vagrant up

vboxsf사용할 수 없다는 오류가 발생하는 경우 . 그렇다면 VirtualBox Guest Additions가 제대로 설치되지 않았을 수 있습니다. 아래 명령으로 문제를 해결할 수 있기를 바랍니다.

vagrant ssh
sudo yum -y install kernel-devel
sudo yum update -y
exit
vagrant halt
vagrant up --provision

1

homestead.yaml에서 "nfs"유형을 제거하면 문제가 해결되었습니다. Win 10, Vagrant 1.9.7, laravel 5.4, homestead.


질문은 다른 버전의 Vagrant와 관련이 있으며 특정 버전의 Virtualbox에서 작동하지 않습니다.
edwardmlyte

1
저도 해결했습니다 .. :)
winkbrace

참고가 제거 입력하세요 : "NFS는"당신은 속도의 문제가있을 것입니다, 나쁜 생각, 세부 사항은 여기에 있습니다 : stackoverflow.com/questions/50614748/...
예브게니 Afanasyev

0

저와 거의 같은 문제로 여기에 착륙하는 사람들을 위해 다음은 해결책입니다.

TLDR

  • VirtualBox 게스트가 다음으로 인해 실패합니다. system is currently not set up to build kernel modules
  • 해결책은 제거입니다. kernel-headers.x86_64 0:3.10.0-862.9.1.el7
  • 그런 다음 설치 kernel-devel-3.10.0-327.el7.x86_64

해결책

  1. vagrant ssh

  2. sudo rpm -e kernel-devel-3.10.0-862.9.1.el7.x86_64

  3. sudo wget ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/7.0/x86_64/updates/security/kernel-devel-3.10.0-327.el7.x86_64.rpm // 파일 다운로드

  4. sudo rpm -Uvh kernel-devel-3.10.0-327.el7.x86_64.rpm // 3 단계에서 다운로드 한 파일 사용

  5. exit

  6. vagrant reload

세부 사항 : 문제

  1. 수행 방랑을 위로 하지만 제외하고 유사한 오류와 함께 실패

명령의 오류 출력은 다음과 같습니다.

/sbin/mount.vboxsf : 오류와 함께 마운트 실패 : 해당 장치가 없습니다.

  1. 로그를 더 읽으면 키워드 아래에 표시됩니다.

Virtualbox Guest Additions 5.2.16 설치-게스트 버전은 5.1.10입니다.

VirtualBox 게스트 추가 설치 중 오류가 발생했습니다.

이 시스템은 현재 커널 모듈을 빌드하도록 설정되어 있지 않습니다.

현재 커널과 일치하는 Linux 커널 "헤더"파일을 설치하십시오.

헤더가 포함 된 패키지는 다음과 같습니다. kernel-devel kernel-devel-3.10.0-327.el7.x86_64

  1. 추가 로그 읽기

kernel-headers.x86_64 0 : 3.10.0-862.9.1.el7 패키지가 설치됩니다.

kernel-devel-3.10.0-327.el7.x86_64 패키지가 없습니다.

  1. 내 손님은 내가 일해야 kernel-devel-3.10.0-327.el7.x86_64

세부 정보 : 내 환경

  • bento / centos-7.2
  • 방랑 버전 : 2.0.4
  • 가상 박스 버전 : 5.2.16

출처


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.