Ubuntu 게스트에서 VirtualBox 공유 폴더를 마운트하는 중 오류가 발생했습니다


77

Windows 7 컴퓨터에서 게스트 OS로 Ubuntu 10이 있습니다. VirtualBox를 통해 공유를 설정하려고했지만 아무것도 작동하지 않습니다. 먼저 VirtualBox에서 공유를 만들어 Windows 폴더를 가리 킵니다. 그런 다음 Linux에서 드라이브를 마운트하려고 시도하지만 계속해서

/sbin/mount.vboxsf : 오류로 인해 마운트에 실패했습니다 : 프로토콜 오류

나는 이것에 대한 많은 해결책을 읽었지만 아무것도 작동하지 않는 것 같습니다. 나는 시도했다 :

  • mount.vboxsf 구문 사용
  • VBox 추가 재설치
  • 재부팅
  • 루트 계정으로 활성화 및 시도

VBox 공유 폴더에서 "Test"라는 공유를 만들었습니다. 그런 다음 우분투에서 "test2"라는 디렉토리를 만들었습니다. 그런 다음이 명령을 실행하려고했습니다.

sudo mount -t vboxsf 테스트 / mnt / test2

다른 아이디어가 있습니까?

답변:


90

공유 폴더 기능을 사용하려면 몇 가지 전제 조건 이 충족 되어야 합니다.

  • 게스트 추가 가 게스트 OS에 올바르게 설치되어 있는지 확인하십시오 .
  • 게스트 우분투의 사용자는 그룹 vboxsf에 있어야 공유에 액세스 할 수 있습니다.
  • Virtual Box의 설정 대화 상자를 사용하여 가상 머신에서 사용될 호스트의 디렉토리를 정의하십시오.

호스트 또는 게스트 OS에 따라 다음이 필요할 수도 있습니다.

  • /home/username나 같은 개인 폴더를 공유하지 마십시오My Documents
  • 특히 호스트 나 VM이 Windows 시스템 인 경우 공유 폴더 경로에 특수 문자 나 공백을 피하십시오.
  • 공유 및 탑재 지점에 다른 이름 사용
  • 게스트 OS에서 마운트 지점을 만듭니다 (HOME 디렉토리에서 가장 좋음).

공유 폴더 기능 테스트 는 호스트 (예 :)에서 공유 디렉토리를 작성하고 C:\myshare가상 상자 설정 (예 :)에서 게스트 시스템의 공유 폴더로 정의하고 share게스트 운영 체제 (예 :)에서 마운트 지점을 작성하고 마운트 mkdir /home/username/host하여 수행 할 수 있습니다. 게스트 OS에서 다음 명령을 사용하십시오.

sudo mount -t vboxsf -o uid=1000,gid=1000 share /home/username/host

여기서 -o 옵션을 사용하면 마운트에 액세스 할 수 있습니다 (그렇지 않으면 루트가 소유 함).

공유 폴더에 대한 자세한 내용은 Virtual Box 사용 설명서 도 참조하십시오 .

호스트와 게스트에서 Samba를 사용하여 네트워크를 통해 파일 또는 디렉토리를 공유 할 수도 있습니다.


4
이 모든 요구 사항을 충족했지만 여전히 오류가 발생한다고 생각합니다. 문제가 무엇인지 진단 할 수있는 방법이 있습니까?
skaz

1
문자열 리터럴 수준이 아니라 내 공유는 C : \ myshare 대신 C : \ test이며 VBox 4.0.4에 정의되어 있습니다. / home / [myusername] / test2에 폴더와 / mnt / test2에 폴더를 만들고이 두 폴더에서 정확하게 명령을 실행하면 동일한 오류가 반환됩니다.
skaz

1
당신의 도움을 주셔서 감사합니다! "test"와 "Test2"라는 단어가 같은 이름을 사용하는 것으로 간주된다는 것을 몰랐습니다. 이것은 문제를 해결했다!
skaz

2
'share'의 경우 어리석게도 sf_ [sharename]을 사용했는데, 그 이름으로 / media /에 마운트되고 VBox 자체 이름이 아닌 우분투 로컬 이름이 필요하다고 가정했기 때문에 sf_ [sharename]을 사용했습니다. 그러나 'sf_'접두사를 제거하면 문제가 해결되었습니다.
Astravagrant

1
@MichaelScheper 이것들은 권장 사항 일뿐입니다 -그것이 당신에게 효과적이라면, 모든 것이 좋습니다 .
Takkat

15

나도이 문제를 만났다. 공유 폴더가 이미에 마운트되어 있음을 발견했습니다 /media/sf_share.

삭제하려고했지만 할 /media/sf_share수 없었습니다.

그래서 내 홈 디렉토리에서 공유 폴더 "share"를 삭제했습니다.

$ rm -r ~/share

그런 다음 다음과 같은 방법으로 루트 사용자로 전환하십시오.

$ sudo -i

root 사용자가 소유 한 / media / sf_share 폴더에 대한 소프트 링크 / 바로 가기를 작성하여 chown 명령으로 소프트 링크의 소유권을 수정하십시오. 루트 사용자에서 일반 사용자로 종료

# ln -s /media/sf_share /home/username/share
# chown username.username /home/username/share
# exit
logout

$ chmod 777 ~/share

공유 폴더를 통해 Windows의 파일을 볼 수 있습니다. 그리고 username은 vboxsf 그룹의 구성원이어야합니다.


감사 ! 당신이 옳았어요 ... 이미 / media / sf_sharename에 마운트
Laurent

1
CentOS 7을 사용하면 디렉토리가에 마운트되어 있음을 알았습니다 media/sf_sharename. 해당 디렉토리에 대한 심볼릭 링크를 만드는 것이 가능한 옵션 인 것 같지만 VirtualBox 사이트의 광고 / 문서화 된 절차와는 다릅니다. 이것에 대한 적절한 해결책이 있어야합니다!?!?
cartbeforehorse

11

문제없이 나를 위해 일한 것은 다음과 같습니다.

나는 실제로 내 user이름이 vboxsf 그룹 에 없다는 것을 알았습니다 . 다음 두 명령을 수행하면 그룹 정보를 얻는 데 도움이됩니다.

grep "vboxsf" /etc/group    
grep "saurav" /etc/group

그래서 다음 명령을 사용하여 vboxsf 그룹 에 saurav(me)를 추가했습니다 .

sudo usermod -a -G vboxsf saurav 

그런 다음 virtualbox를 다시 시작한 다음 .. 내 위치에서 뛰어 넘었습니다. : D : D 문제없이 정상적으로 작동했습니다.

그래도 문제가 있으면 의견을 말하십시오 ..


2
이것은 나를 위해 일했습니다. 감사합니다. 유형 만 있습니다 : 있어야합니다 sudo usermod -a -G vboxsf saurav(첫 번째 그룹은 사용자).
user673592

예 .. 잘못 입력했습니다. :) 지적 해 주셔서 감사합니다. 지금 수정 ..
Saurav Kumar

1
새로 할당 된 그룹을 얻기 위해 VB를 다시 시작할 필요는 없습니다. $ su-saurav가 트릭을 수행합니다.
Stephen Boston

2

나는 또한 설치와 많은 어려움을 겪고 interwebz에서 내가 생각해 낸 모든 것을 시도했지만 마침내 그것을 해결하기 위해 매우 이상한 해결책을 찾았습니다! 내 손님은 Ubuntu 13이고 호스트는 Windows 7입니다.

미디어 폴더로 변경하고 거기서부터 user@os:/media$ sudo mount -t vboxsf share /home/username/folder

그래, 그거야 그러나 나는 그것이 미디어 폴더에서 이루어지면 어떻게 작동하는지 이해하지 못합니다. 누군가 알고 있다면 아래에 친절하게 설명하십시오. 감사.

추신 /etc/rc.local: 시작할 때 자동 마운트를 수행하도록 편집 하면 작동하지 않습니다.


1
/etc/rc.local은 네트워크가 작동하기 전에 수행되므로 작동하지 않습니다.
Braiam

2
안녕하세요 브라이 암! 알고 반갑습니다. 불행히도 사람들은 자동 마운트를 위해 /etc/rc.local을 편집 할 것을 권장하는 수많은 사이트를 읽었습니다. 시작할 때 자동 마운트하는 올바른 방법이 무엇인지 알고 있습니까? 감사.
BringBackCommodore64

또한 / media에서만 작동한다는 것을 알았습니다. 아주 이상한. 방금 이것을 .profile에 추가했습니다 pushd media && sudo mount /media/<theshare> && popd.
Matt Greer

1

Windows 10에서 VirtualBox 5.1.20을 실행하고 GuestAdditions 5.1.20이 설치된 게스트 OS로 Ubuntu 16.04를 사용하면 명령 줄에서 공유 폴더를 마운트 할 수 없었습니다. 프로토콜 오류 및 sf_read_super_aux err = -22를 언급하여 마운트 명령이 실패했습니다.

결국 나는 https://www.virtualbox.org/ticket/16670 "mount.vboxsf symlink broken"을 발견했다 . mount.vboxsf의 symlink를 수정하기 위해 해결 방법 중 하나를 수행했으며 모두 작동했습니다. 내 접근 방식은 다음과 같습니다.

mv /sbin/mount.vboxsf /sbin/mount.vboxsf-orig
ln -s /opt/VBoxGuestAdditions-5.1.20/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf

명령은 루트로 수행해야합니다. 따라서 우분투이기 때문에 루트로 명령을 수행하기 위해 각 줄의 시작 부분에 "sudo"를 추가했습니다. 리눅스의 다른 풍미에는 다른 방법이 있습니다.

따로, 2014 년 virtualbox의 티켓 # 12879 "손님 추가가 4.3.10 인 공유 폴더를 마운트 할 수 없습니다"에서 비슷한 심볼릭 링크 문제가보고되었으며 다음 달에 수정되었습니다.

2017-04-27


@ 던컨 : 좋은 지적. 티켓 제목에 문제가 설명되어 있지만 사용한 솔루션을 보여주기 위해 편집했습니다.
J Cumming

virtualbox.org/wiki/Changelog#v22의 가상 상자 v5.1.22에 대한 변경 로그 는 다음과 같이 말합니다.
J Cumming

2017-04-28에 릴리스 된 가상 상자 v5.1.22에 대한 변경 로그 ( virtualbox.org/wiki/Changelog#v22 )는이 버그 / 티켓 # 16670이 수정되었다고 말합니다. 나는 신이 난다!
J Cumming

왜 이것이 다운 보트인지 확실하지 않지만 Vbox 5.122를 사용하는 문제를 해결하는 데 도움이되었습니다
qodeninja

1

나에게는 거위라는 문제가 있었고 VirtualBox의 공유 폴더 목록에서 항목을 제거했다는 사실을 잊어 버렸습니다 (기계 → 설정 → 공유 폴더).

다른 누군가가 '프로토콜 오류'에 의해 비슷하게 오도 된 경우를 대비하여 여기에 던지고 있습니다.

: honk : 😉


1

위에서 언급 한 모든 것을 시도했지만 아무것도 효과가 없었습니다. Lats "Make Permanent"및 "Auto Mount"를 활성화하여 새 임시 폴더 "Shared"를 만들었습니다. 그런 다음 명령을 실행하십시오.

sudo mount -t vboxsf -o uid=1000,gid=1000 Shared /mnt/sharedvm

그것은 나를 위해 일했다. 이번에는 오류가 없습니다.


0

공유 폴더가 작동 중이고 호스트를 재부팅 한 후에는 그렇지 않았습니다.

공유 폴더의 이름을 Shared에서 Shared2로 변경하여 작동했습니다.

config.vm.synced_folder "/Users/username/Dropbox/Shared", "/Shared2"

무슨 일이 있었는지, 왜, 어떻게 고쳐야할지 전혀 몰랐습니다. Nix와 같이 전역 변경 가능 상태가없는 시스템에는 문제가 있습니다.


0

개인적으로 나는 같은 오류 메시지에 직면했으며 문제는 호스트 컴퓨터에있는 폴더와 관련하여 오타가 있었고 게스트 추가 덕분에 가상 컴퓨터 내에서 공유 폴더로 설정 한 사실과 관련이 있습니다.

올바른 명령은 다음과 같습니다.

sudo mount -t vboxsf -o uid=$UID,gid=$(id -g) shared_folder_located_in_host_machine path_to_mounting_folder_inside_the_virtual_machine

오류 메시지가 수정되었습니다.


0

나에게 그것은 잘못된 게스트 추가 버전이었습니다.

VirtualBox 5.8 / 무엇을 실행 한 랩톱 하나에서 VirtualBox 6.0이있는 다른 랩톱으로 전체 VM을 옮겼습니다. 공유 폴더 마운트를 제외한 모든 것이 작동했습니다.

방금 VM을 시작하고 클릭 Devices -> Insert Guest additions CD image...하고 지시를 따랐습니다. 이전 버전의 게스트 추가에 대한 내용은 약간 엉망 이었지만 제거하고 두 번째 시도에서 새 버전을 설치했습니다. 재부팅하고 작동합니다.

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