콘텐츠로 건너뛰기

버추얼박스 공유 폴더 설정하기

컴퓨터에 따라 다른 운영체제를 사용해야 하는 경우가 있다. 이를테면, 집에서는 우분투를 사용하지만 대한민국 웹 환경의 고질적인 문제 때문에 MS윈도를 사용해야 할 때가 있는가 하면, 반대로 사무실에서는 여러 프로그램을 사용해야 하는 등의 문제 때문에 MS윈도를 사용하여야 하나 상황에 따라 우분투를 사용해야 할 때가 있다. 이럴 때 단순한 작업을 위해 다른 운영체제로 재부팅해야 하는 번거로움이 있다. 시스템 내에 가상 시스템을 구축할 수 있는 프로그램이 여럿 있는데 이를 사용하면 시스템 내에서 제한적이나마 다른 운영체제를 사용할 수 있어 이러한 번거로움을 줄일 수 있다. 필자는 버추얼박스VirtualBox를 사용하는데, 버추얼박스 내에 가상 머신(게스트)을 사용할 때 특정 작업 후 자료를 원래 시스템(호스트)과 공유해야 하는 경우가 생기곤 한다.

본 글에서는 MS윈도 호스트에 우분투 게스트일 때와 우분투 호스트에 MS윈도 게스트일 때 각각 버추얼박스에서 공유 폴더를 설정하고 사용하는 방법을 소개한다.

MS윈도 호스트, 우분투 게스트

버추얼박스에서의 공유 폴더 설정

버추얼박스의 공유 폴더는 기본적으로 게스트 확장을 설치해야 사용할 수 있다. 따라서 작업에 앞서 게스트 확장을 설치한다.

호스트 시스템인 MS윈도의 버추얼박스에서 해당 가상 머신 설정의 공유 폴더 탭에 공유하려는 폴더를 추가하고, 폴더 경로와 이름을 입력한다. 이때 공유 폴더의 이름은 반드시 영문으로 입력하여야 한다. 본 글에서는 공유 폴더의 이름을 ‘WinXP’라고 설정하였다.

MS윈도용 버추얼박스에서 공유 폴더 설정
MS윈도용 버추얼박스에서 공유 폴더 설정

공유 폴더 마운트

버추얼박스에서 지정한 공유 폴더를 마운트할 디렉터리가 필요하므로 터미널에서 아래 코드를 실행해 해당 디렉터리를 생성하고 나서 공유 폴더를 마운트한다. 사용자 계정의 uid와 gid는 공유 폴더의 소유권을 지정하는 부분으로, cat /etc/passwd 명령어로 확인할 수 있으며 ‘uid=jaesung,gid=jaesung‘과 같이 실제 소유자 이름과 소유그룹의 이름을 입력해도 된다. dmode와 fmode‘는 공유 폴더의 디렉터리와 파일의 퍼미션을 지정하는 부분이다.

$ sudo mkdir -p /media/Windows
$ sudo mount -t vboxsf -o uid=1000,gid=1000,dmode=0755,fmode=0755 WinXP /media/Windows

두 번째 줄에서의 ‘WinXP‘는 공유 폴더의 이름과 같아야 하고, ‘/media/Windows‘는 윗 줄에서 생성한 디렉터리 경로와 같아야 한다.

정상적으로 마운트되었다면, 터미널에서 아래 코드를 실행했을 때 공유 폴더의 내용이 보여야 한다.

$ ls -l /media/Windows

/etc/rc.local 파일의 맨 아랫부분 ‘exit 0‘ 위에 ‘sudo mount -t vboxsf -o uid=1000,gid=1000,dmode=0755,fmode=0755 WinXP /media/Windows‘를 삽입하면 부팅할 때마다 공유 폴더가 해당 디렉터리에 자동으로 마운트된다. 터미널에서 아래 코드를 실행해 /etc/rc.local 파일을 열어 두 번째 줄 코드를 입력한다.

$ sudo gedit /etc/rc.local
sudo mount -t vboxsf -o uid=1000,gid=1000,dmode=0755,fmode=0755 WinXP /media/Windows

심볼릭 링크 생성

사용자의 홈 디렉터리에 공유 폴더로의 심볼릭 링크를 생성하려면 터미널에서 아래 코드를 실행한다.

$ ln -s /media/Windows ~/공유폴더

위 코드를 실행하면 사용자 홈 디렉터리의 ‘공유폴더‘ 디렉터리를 통해 공유 폴더에 접근할 수 있다.

마운트된 디렉터리와 심볼릭 링크의 내용
마운트된 디렉터리와 심볼릭 링크의 내용

우분투 호스트, MS윈도 게스트

버추얼박스에서의 공유 폴더 설정

버추얼박스의 공유 폴더는 기본적으로 게스트 확장을 설치해야 사용할 수 있다. 따라서 작업에 앞서 게스트 확장을 설치한다.

호스트 시스템인 우분투의 버추얼박스에서 해당 가상 머신 설정의 공유 폴더 탭에 공유하려는 폴더를 추가하고, 폴더 경로와 이름을 입력한다. 본 글에서는 공유 폴더의 이름을 ‘공유’라고 설정하였다.

우분투용 버추얼박스에서 공유 폴더 설정
우분투용 버추얼박스에서 공유 폴더 설정

네트워크 드라이브 연결

버추얼박스에서 지정한 공유 폴더는 네트워크로 연결되어 ‘내 네트워크 환경’에서 사용할 수 있다. 네트워크 주소는 ‘\\vboxsvr\공유‘다.

이렇게 연결된 공유 폴더는 네트워크 드라이브로 연결해 별도의 드라이브로도 사용할 수 있다. 작업 표시줄의 시작 > 실행(R)… 혹은 Win + R을 눌러 실행창에서 아래 코드를 실행하면 네트워크 드라이브로 연결된다.

net use e:\\vboxsvr\공유

e‘에는 할당하려고 하는 드라이브 명을 입력하고, ‘공유‘는 공유 폴더 이름과 같아야 한다. 이렇게 네트워크 드라이브를 연결하면 사용자가 지정한 드라이브 명을 통해 공유 폴더에 접근할 수 있다.

공유 폴더 활용 팁

떠돌이님의 블로그 ‘Open Sea‘의 ‘심볼릭 링크를 이용한 Virtualbox 공유 폴더 활용‘에 따르면, 호스트의 공유 폴더 내에 다른 디렉터리(e.g. 문서, 그림, 음악 등)의 심볼릭 링크를 만들면 게스트의 네트워크 드라이브 내에 해당 디렉터리가 실제 디렉터리와 같이 존재하고 작동한다. 자세한 내용은 관련 글을 참고한다.

기타 정보

테스트 환경

  • 운영체제1 MS Windows XP Professional K Service Pack 3
  • 운영체제2 우분투 8.10 인트레핏 아이벡스 i386
  • 커널2 Linux 2.6.27-11-generic
  • 기타 환경2 그놈 2.24.1
  • 프로그램1 VirtualBox 2.1.4 / 2.2.0
  • 프로그램2 그놈 터미널 2.24.1.1
  • 프로그램3 gedit 2.24.2
예전 리베로타운의 글을 복구한 게시물입니다.

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다