[Mac] UTM ubuntu와 Mac OS 공유 폴더 생성

Ma_Seokjae·2024년 3월 13일
0
post-thumbnail

오늘은 가상 머신인 UTM ubuntu와 Mac OS 사이에서 작업물을 주고 받을 수 있는 공유 폴더 설정 방법에 대해서 소개해보도록 하겠습니다.

Mac에서 설정할 것들

1. Mac에서 UTM을 킨다

UTM을 키고 사용할 운영체제를 클릭하면 위에 보이시는 화면과 같이 보입니다. 여기서, 여러 항목들이 재생 버튼 아래에 나열되어 보이는데 그 중에서 '공유폴더'가 보입니다.

이 공유폴더 설정을 통해서 가상머신의 운영체제와 나의 mac os와 파일이나 여러 문서들을 공유할 수 있는 환경을 설정할 수 있습니다.

2. 공유폴더 옆에 있는 '탐색' 버튼 클릭

'탐색' 버튼을 클릭하면 현재 내 mac에서 공유하고 싶은 디렉토리를 설정할 수 있는데, 저는 '다운로드'를 선택해보도록 하겠습니다.

공유폴더 설정까지 마무리 했다면, 이제는 가상머신(ubuntu)를 실행시켜봅시다.


가상머신 환경(ubuntu)에서 설정할 것들

1. 터미널을 킨다

이와 같은 화면이 보인다면 다음 step!으로 넘어가보도록 하겠습니다.

2. 공유 폴더 생성

저는 root에 있는 Documents 안에 share라는 폴더를 생성했습니다. 이제 이 다음 단계를 통해 share 폴더에 권한을 주어 공유 폴더의 역할을 수행할 수 있도록 해줄겁니다.

명령어:

sudo mkdir /home/msj/Documents/share

3. 생성한 공유 폴더에 권한 부여

터미널에 보이는 명령어를 통해 전 단계에서 생성한 'share' 폴더에 mac의 '다운로드' 폴더와 공유할 수 있는 권한을 부여했습니다.

아래 명령어에 대한 정보를 좀 더 설명해드리도록 하겠습니다.

명령어:

sudo mount -t 9p -o trans-virtio share [마운트 포인트] -oversion=9p2000.L
  • sudo: 이 명령어는 "superuser do"의 약자로, 리눅스에서 관리자(루트) 권한으로 명령을 실행할 때 사용합니다. mount 명령어는 시스템의 주요 설정을 변경하는 작업이므로, 보통 관리자 권한이 필요합니다.
  • mount: 이 명령어는 리눅스에서 파일 시스템을 마운트할 때 사용됩니다. 파일 시스템을 마운트한다는 것은, 파일 시스템을 사용할 준비가 되었음을 시스템에 알리고, 사용자가 파일 시스템에 접근할 수 있도록 하는 것을 의미합니다.
  • -t 9p: 이 옵션은 마운트할 파일 시스템의 타입을 지정합니다. 여기서 9p는 Plan 9 파일 시스템(protocol)을 의미하며, 주로 가상화 환경에서 호스트와 게스트 간의 파일 공유에 사용됩니다.
  • -o trans-virtio: 여기서 -o는 추가 옵션을 지정할 때 사용됩니다. trans-virtio는 9p 파일 시스템이 virtio 방식으로 데이터를 전송하게끔 설정합니다. virtio는 가상화 환경에서 성능을 최적화하기 위해 고안된 인터페이스입니다.
  • share: 이 부분은 마운트할 대상의 이름 또는 식별자입니다. 이 경우, 가상 머신의 설정에서 지정한 공유 폴더의 이름이나 식별자가 됩니다.
  • 마운트 포인트: 마운트 포인트란, 파일 시스템이 실제로 사용자에게 보이는 위치를 의미합니다. 이 경로는 가상 머신 내에서 공유 폴더가 마운트되는 위치입니다.
  • -oversion=9p2000.L: 이 부분도 -o 옵션을 사용하여 추가 설정을 지정합니다. 여기서는 9p 파일 시스템의 버전을 9p2000.L로 설정합니다. 9p2000.L은 9p 프로토콜의 확장 버전으로, 보다 향상된 기능과 성능을 제공합니다.

여기서 간단히 소개하자면, 저 같은 경우에는 share 폴더를 만든 곳의 경로인 '/home/msj/Documents/share/'를 마운트 포인트로 설정했습니다.

[권한 설정 전]

[권한 설정 후]

이렇게 권한 설정 명령어를 실행하기 전 후의 폴더의 이미지를 비교해 보면 달라진 모습이 확인됩니다.


공유폴더 테스트

지금 가상머신 속 ubuntu의 share 폴더를 보면 mac의 다운로드 폴더가 비어있기 때문에 아무것도 없는 것이 확인됩니다.

이제 mac으로 돌아와서 다운로드 폴더에 test라는 임의의 테스트 용 파일을 담아보겠습니다.

과연, ubuntu에서도 해당 파일이 확인될까요?

네, ubuntu에서도 잘 확인이 되네요 :)


참고할 점!

UTM 재부팅할 때마다 공유 폴더를 수동으로 마운트 해야 합니다...

Why?
마운트 정보는 가상머신이 재부팅 될 때마다 초기화됩니다...

그렇기 때문에 생성한 share 폴더에 공유 권한을 부여해주는 명령어인 'sudo mount -t 9p -o trans-virtio share [마운트 포인트] -oversion=9p2000.L'를 재부팅할 때마다 다시 실행해주어야 합니다.

물론, 리눅스 시스템에서는 시스템 부팅 시 자동으로 특정 작업을 실행하도록 설정할 수 있지만 잘못 설정하면 시스템 부팅에 영향을 끼칠 수 있기 때문에 참고하시면 좋을 것 같습니다.


이제 Mac에서 UTM을 이용한 가상머신 환경과 파일들을 공유하는 방법에 대한 정리를 마무리 해보도록 하겠습니다.

긴 글 읽어주셔서 감사합니다 :)

profile
Why not change the code?

0개의 댓글

관련 채용 정보