Linux에서 VirtualBox 공유 폴더를 마운트하는 절차는 무엇입니까?
다음 마운트 명령의 변형을 시도했지만 protocol error
다른 마운트 오류가 계속 발생합니다.
sudo mount -t vboxsf share /home/toto
Linux에서 VirtualBox 공유 폴더를 마운트하는 절차는 무엇입니까?
다음 마운트 명령의 변형을 시도했지만 protocol error
다른 마운트 오류가 계속 발생합니다.
sudo mount -t vboxsf share /home/toto
답변:
좋아, 이것은 조금 혼란 스러웠지만 마침내 무슨 일이 일어나고 있는지 깨달았습니다. 그래서 나는 2 센트를 다른 사람들에게 더 명확하게하고 미래에 언젠가 잊어 버릴 것이라는 희망으로 2 센트를 주기로 결정했습니다.
VM에서 만든 공유 이름을 사용하지 않고 대신 공유 이름이 wd 일 때 share 또는 vb_share를 사용 하여 잠시 혼란 스러웠습니다.
먼저 VM Box에 공유 디렉토리를 추가하십시오.
여기서 공유 이름을 지정하는 것은 VM 게스트 OS에 마운트 할 때 사용해야하는 이름입니다. 즉, 나는 나의 서쪽 디지털 여권 드라이브를 위해 나의 이름을 "wd" 라고 지었다 .
다음으로 guset OS에서 홈 디렉토리에서 마운트에 사용할 디렉토리를 만드십시오.
mkdir share
다음으로 터미널을 열고 다음을 복사하여 붙여 넣거나 입력하십시오. 장치- > 공유 클립 보드-> 양방향 에서 공유 클립 보드를 활성화 할 수 있습니다
sudo mount -t vboxsf wd ~/share/
이제 홈 디렉토리의 "share" 폴더를 사용하여 OS간에 파일을 복사 할 수 있습니다 .
도움이 되었기를 바랍니다!
sudo mount -t vboxsf -o rw,uid=1000,gid=1000 share ~/host
Linux 게스트가있는 VirtualBox의 경우 공유 폴더를 마운트하는 단계는 다음과 같습니다.
VirtualBox 호스트의 응용 프로그램 인 VirtualBox Manager를 사용하여 공유 할 호스트 폴더를 지정하십시오.
VirtualBox Guest Additions가 VirtualBox 게스트에 설치되어 있는지 확인하십시오.
Linux 게스트에서 mount 명령은 공유가 마운트 된 행을 표시해야합니다. 이것은로 표시됩니다 type vboxsf
. 문제는 마운트 지점이 원하는 위치에 있지 않을 수 있고 권한이 루트 전용이라는 것입니다. 기본 마운트 위치는입니다 /media/sf_
.
사용자 또는 그룹 ID를 그룹 1000
의 구성원으로 만들어 공유에 액세스 할 수 있습니다 vboxsf
. 파일 에서 vboxsf
줄 을 변경 하면 /etc/group
됩니다. 재부팅이 필요할 수 있습니다.
VBoxControl 명령을 사용하여 폴더가 마운트되는 위치를 변경할 수 있습니다. 게스트 추가가 설치되면 명령이 설치됩니다. 재부팅이 필요할 수 있습니다. 에서 예를 들어, 마운트 지점을 변경 /media/sf_...
하는 /home/toto/sf_...
버추얼 공유 폴더 guestproperty을 설정하려면 다음 명령을 사용합니다 :
sudo VBoxControl guestproperty 세트 / VirtualBox / GuestAdd / SharedFolders / MountDir / home / toto /
변경 사항을 확인하려면 get을 사용하십시오.
sudo VBoxControl guestproperty get /VirtualBox/GuestAdd/SharedFolders/MountDir
참고 문헌 :
sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf
type vboxsf
실행할 때 볼 수 없습니다 mount
! 도와주세요
발생할 때 :
mount: Protocol error
VirtualBox에서 폴더를 공유하려고 시도한 후 (예 :
$ sudo mount -o uid=1000,gid=1000 -t vboxsf D_DRIVE ~/host
이것은 마침내 나를 위해 일했다 :
$ sudo apt-get install virtualbox-guest-dkms
(내 설정 : Windows 7 호스트, 게스트 : Ubuntu 12.04,13.10,14.04; 현재 VBox 4.3.10 r93012를 실행 중)
게스트 OS에 가상 박스 추가를 설치합니다. 그런 다음 게스트 OS를 종료하십시오. 가상 상자에서 게스트 설정을 엽니 다. 그런 다음 공유 폴더를 추가하고 설정을 저장하십시오. 그런 다음 게스트 os를 시작하고 우분투의 경우 아래 명령을 실행하십시오. 현재 사용자를 vboxsf 그룹에 추가합니다.
sudo adduser $ USER vboxsf
게스트 OS를 재부팅하고 / media /로 이동하여 공유 폴더에 액세스하십시오.
Linux 또는 Mac OS X VirtualBox 게스트 내에서 VirtualBox Guest Additions를 설치 한 후 다음 명령을 사용하여 사용 가능한 VirtualBox 공유 폴더를 찾을 수 있습니다.
sudo VBoxControl sharedfolder list
게스트 내부의 홈 폴더에 VirtualBox 공유 폴더와 이름이 같은 폴더가 있으면 다음 쉘 스크립트를 사용하여 자동으로 마운트 할 수 있습니다.
#!/bin/sh
#-----------------------------------------------------------------------------
# Discover VirtualBox shared folders and mount them if it makes sense
#-----------------------------------------------------------------------------
if ! type VBoxControl > /dev/null; then
echo 'VirtualBox Guest Additions NOT found' > /dev/stderr
exit 1
fi
MY_UID="$(id -u)"
MY_GID="$(id -g)"
( set -x; sudo VBoxControl sharedfolder list; ) | \
grep '^ *[0-9][0-9]* *- *' | \
sed -e 's/^ *[0-9][0-9]* *- *//' | \
while read SHARED_FOLDER
do
MOUNT_POINT="$HOME/$SHARED_FOLDER"
if [ -d "$MOUNT_POINT" ]; then
MOUNTED="$(mount | grep "$MOUNT_POINT")"
if [ "$MOUNTED" ]; then
echo "Already mounted : $MOUNTED"
else
(
set -x
sudo mount -t vboxsf -o "nosuid,uid=$MY_UID,gid=$MY_GID" "$SHARED_FOLDER" "$MOUNT_POINT"
)
fi
fi
done
mkdir share
예 :).sudo mount -t vboxsf name_of_folder_linked ~/name_of_folder_guest/
설정 : VirtualBox 4.3.26, Win 7 SP1 호스트, Debian jessie 8.0 (안정된) 게스트.
VirtualBox Manager 의 장치 드롭 다운 메뉴 에서 공유 폴더 설정 ... 을 선택하십시오 .
나타나는 팝업 창의 폴더 목록 에서 시스템 폴더 를 선택한 다음 "새 공유 폴더 정의 추가"버튼 ( 폴더 목록 오른쪽에 녹색 "+"기호 아이콘이있는 파란색 폴더 )을 클릭하십시오.
결과 공유 추가 팝업 양식에서 폴더 경로 필드 에서 아래쪽 화살표 단추를 클릭 한 후 기타 를 선택하십시오 . 폴더 찾아보기 팝업 창이 나타납니다.
(제 경우에는 워크 스테이션에 다른 하드 드라이브를 추가하여 전용 공유에 사용하고 이미 NTFS로 포맷하고 볼륨 이름이 "share"인 "G :"로 마운트했습니다. 화살표를 클릭했습니다. 컴퓨터 옆에서 G : 드라이브를 선택한 다음 확인 버튼 을 클릭했습니다 .)
(귀하의 경우 공유하려는 폴더 또는 드라이브를 선택한 다음 확인 버튼 을 클릭해야 합니다.)
선택을하고 확인 버튼을 클릭하면 VirtualBox Manager가 공유 추가 양식 의 폴더 경로 및 폴더 이름 필드를 채 웁니다 . Folder Path (폴더 경로) 필드 는 그대로 두십시오. 그러나 원하는 경우 폴더 이름을 변경할 수 있습니다 . 나중에 기억하십시오.
업 완료 추가 공유 선택하여 양식을 만들기 영구 확인란을하지만 두십시오 자동 마운트 확인란의 선택이 취소 - 우리가 나중에 장착 돌볼 것입니다. (물론 폴더 나 드라이브를 읽기 전용으로 만들려면 계속해서 읽기 전용 상자를 선택하십시오.) 그런 다음 확인 버튼을 클릭하십시오 .
새로 구성된 점유율은 이제 아래의 항목으로 나타납니다 머신 폴더 에서 폴더 목록 . 확인 버튼을 클릭하십시오 .
부팅 (시작) 중에이 공유를 마운트하려면 데비안 jessie 게스트 설치에서 / etc / fstab에 마운트 정의 줄을 추가해야합니다. 이 편집은 루트 또는 sudo를 통해 수행해야합니다 (예 :
sudo nano /etc/fstab
(개인적으로 vi를 사용했지만 nano가 Debian jessie의 기본 편집기이므로 위의 예제에서 지정했습니다.)
소유권과 그룹을 개인 UID 및 GID로 설정하여 홈 디렉토리에이 공유를 마운트하기 위해 다음 정의를 / etc / fstab에 추가했습니다.
share /home/conib/share vboxsf comment=systemd.automount,uid=conib,gid=conib,noauto 0 0
"=", "."또는 ","문자 주위에는 공백이 없습니다.
/ etc / fstab 정의는 다음과 같은 형식입니다.
<Device> <Mount Point> <Type> <Options> <Dump> <Pass>
(정의의 필드 사이에는 공백이 있어야하고 필드 내에는 공백이 없어야합니다.)
"장치"필드는 VirtualBox Manager 추가 공유 를 통해 지정한 폴더 이름 으로 설정해야합니다 . 기본 "G_DRIVE"를 "share"로 변경했습니다.
"마운트 포인트"는 이미 존재하지만 비어 있어야하는 디렉토리 경로 사양입니다. (즉, 해당 디렉토리에 이미 존재하는 모든 것은 그 위에 마운트하는 것에 의해 숨겨 질 것입니다.) 내 홈 디렉토리에 "share"라는 빈 새 하위 디렉토리를 만들었습니다.
"유형"은 "vboxsf"입니다.
"옵션"(comment = systemd.automount, uid = conib, gid = conib, noauto)은 까다 로웠으며이 설정 작업에 약간의 문제가있었습니다.
다른 것으로 설정하고 싶지 않다면 "덤프"를 0으로 설정하십시오.
그리고 fsck가이 공유를 확인하는 것을 원하지 않기 때문에 "Pass"도 0으로 설정하십시오.
정의 행을 / etc / fstab에 추가하면 데비안 게스트를 재부팅하고 공유의 파일과 하위 폴더를 볼 수 있는지 확인하십시오.
HTH.