화요일, 9월 27, 2016

VirtualBox Ubuntu 공유폴더 설정

VirtualBox를 사용하여 작업을 하다보면, Host와 상호작용할 일이 많다. 특히 파일을 공유해야 할 경우가 생기는데, 여러 방법 중 하나인 공유폴더 설정에 대해 알아보도록 하겠다.

이 과정은 VirtualBox의 게스트 확장 설치가 선행되어야 하므로, 게스트 확장 설치가 완료된 상태가 아니라면 먼저 아래의 링크를 참고하여 게스트 확장 설치를 진행해야 한다.


준비가 완료되었다면 우선 VirtualBox를 실행했을 때 나타나는 화면에서 원하는 Guest를 선택하고 하단의 공유폴더를 선택한다.
그러면 다음과 같은 화면이 나타나는데, 우측의 추가 버튼을 클릭한다.
이어서 뜨는 팝업창에 Host PC에서 공유 폴더로 사용할 폴더의 경로를 입력해주고, 자동 마운트 항목에 체크를 해준다. 이때, C:\share나 D:\share와 같이 비교적 간단한 경로에 폴더를 생성하길 권장한다. 경로의 길이가 길어지면 Protocol Error가 발생하곤 한다.
자동 마운트 옵션을 활성화했기 때문에 Guest PC를 부팅하고 파일 탐색기를 열면 Device 목록에 자동으로 공유 폴더 정보가 나타나는 것을 확인할 수 있다.
이제 사용자 계정에 권한 설정만 해주면 된다. 터미널을 열고 자신이 사용하는 사용자 계정을 username부분에 포함하여 다음 명령어를 입력하면 된다.
sudo usermod -aG vboxsf username
vboxsf는 VirtualBox에서 사용되는 파일시스템의 이름으로, 신경쓰지 않아도 된다.

여기까지 하면 Host PC와 Guest PC 사이의 공유 폴더 설정은 완료된 것이다. 그러나, 만약 자동으로 생성된 경로가 아닌, 다른 임의의 경로에 공유 폴더를 직접 만들고 싶다면 어떻게 해야 하는지 알아보자.

먼저 Guest PC를 구동시킨 다음 터미널에서 /mnt/share라는 디렉터리를 관리자 계정 권한으로 생성한다. 다른 경로와 디렉터리명을 사용하고 싶다면 이 부분을 임의대로 바꿔도 된다.
sudo mkdir /mnt/share
그 다음 관리자 계정 권한으로 vboxsf라는 파일시스템을 활용해 마운트를 한다.
sudo mount -t vboxsf share /mnt/share
share이라고 적힌 부분에는 Host에서 설정해둔 폴더 이름을 넣어주면 된다. 그런데, 만약 vboxsf가 알 수 없는 파일시스템이라며 오류 메시지가 뜰 경우에는 게스트 확장 설치가 제대로 되어 있지 않은 것이기 때문에 설치를 진행한 뒤 다시 시도하면 된다.

마운트가 완료되었다면 vim 에디터를 통해 test.txt라는 파일을 만들어보자.
저장한 뒤에 Host에서 공유 폴더로 지정해둔 경로(C:\share)에 가보면 정상적으로 파일이 공유되고 있음을 확인할 수 있다.
mount를 해제하고자 한다면, umount 명령어를 사용하면 된다.
umount /mnt/share
mount를 해제할 경우 해당 디렉터리에서는 기존에 동기화되어 있던 모든 파일과 디렉터리들이 없어지게 되지만, 실제 공유 폴더에는 여전히 모든 정보들이 보존된다.

댓글 2개:

  1. sudo usermode ..가 아니고 sudo usermod이군요.

    답글삭제
    답글
    1. 피드백 감사합니다! 반영하겠습니다^^

      삭제