본문 바로가기

설치

맥에서 VirtualBox를 이용한 외장하드로의 윈도우 설치

맥북을 쓰더라도 인터넷 쇼핑이나 은행을 이용하려면 윈도우가 아무래도 필요합니다. 제가 갖고 있는 맥북은 SSD 용량이 128GB 뿐이라 이 공간을 쪼개서 윈도우를 설치하기는 좀 부담스러운 용량입니다. 제가 갖고 있는 맥북은 USB 3.0 을 지원하므로 외장하드를 하나 사서 쓰려고 했는데, 너무나 거추장 스러워 Sandisk Z80 64G 짜리를 하나 구매하였습니다. 이 USB 메모리는 SSD 와 다름이 없는 성능을 보이고 있어 안성마춤이라 생각했습니다. USB 메모리를 예쁘게 꼽기 위해서 ㄱ 자로 꺽인 USB 3.0 지원 아답터를 하나 구했습니다.

Sandisk z80 에 대한 리뷰는 http://avenuel.tistory.com/1478 에 잘 나와있습니다.






USB 외장하드 또는 USB 메모리 (이하 외장하드)에 윈도우를 설치하는 방법은 크게 두가지 방법이 있습니다.

- 직접 외장하드로 부팅하는 방법과

- 가상머신을 이용한 방법

첫번째 방법, 외장하드로 직접 부팅하는 것은 윈도우 8부터 지원합니다. 윈도우7까지는 원칙적으로 USB 부팅을 지원하지 않습니다. 가능하게 하는 방법도 있는데, http://hoevirus.tistory.com/31 를 참고하세요.

두번째 방법은 맥을 부팅시켜 놓고, 패럴랠즈, VMWare 나 VirtualBox 를 이용해서 윈도우를 구동하는 방법입니다. 이 두가지 프로그램은 유료입니다. VirtualBox 는 무료이며 간단하게 쓰기에도 좋습니다. 속도면에서 다소 느리다고 하지만, 버전이 없되면서 성능도 향상되고 있습니다.


가상머신프로그램은 하드디스크를 지원함에 있어서 가상파일을 만들어서 사용하는 방법과 물리적인디스크를 사용하는 방법 등 두가지 방법을 사용할 수 있습니다. VMWare 에서는 메뉴를 통해서 물리하드디스크를 사용할 수 있도록 해 주지만, VirtualBox 에서는 물리적인 하드디스크를 직접 사용하는 것은 메뉴를 통해서는 불가능하며 터미날 상에서 command line 명령을 좀 써야 합니다.

외장하드를 물리적인 디스크로 직접 사용하면, 가상파일 (VDI, VMDK) 을 만들어서 가상머신을 사용하는 것보다 성능이 빠르다고 하지는 않습니다. 다만 외장하드를 다른 USB 에 붙여서 자료를 쉽게 공유할 수 있는 장점이 있습니다.  가능하면 USB 3.0 을 사용하시는 것을 권장합니다.


설치하기


맥북(매버릭스)에 USB 외장하드를 연결하고 이 물리 하드디스크를 VirtualBox 에서 하드디스크로 인식시켜 설치하는 방법입니다. 참고 사이트 : http://www.benzado.com/blog/post/366/virtualbox-external-drive


1. VirtualBox 를 맥북에 설치하고, 실행시킵니다. 그리고 새 가상 머신을 만듭니다.



2. 메모리 (RAM) 크기는 2GB 정도로 잡고,



3. 아직은 하드를 추가하지마세요. USB 외장 하드를 직접 붙여서 쓸 것입니다.



4. Windows7 을 위한 가상머신이 아래와 같이 만들어졌습니다.





VMDK 하드 드라이브 만들기


5. 이제 이상태로 두고, 터미날을 열어서 아래와 같은 작업을 해 주어야 합니다.

우선 mount 라고 쳐보면,


MacBook-Pro:~ pelecs$ mount

/dev/disk0s2 on / (hfs, local, journaled)

devfs on /dev (devfs, local, nobrowse)

map -hosts on /net (autofs, nosuid, automounted, nobrowse)

map auto_home on /home (autofs, automounted, nobrowse)

/dev/disk1s1 on /Volumes/NO NAME (msdos, local, nodev, nosuid, noowners)


마지막 /dev/disk1s1 이 외장하드디스크입니다. (FAT32 로 포맷)
ls -l /dev/disk* 라고 쳐보면 아래처럼 나오는데, disk0,1 은 하드디스크를 의미하며 s1, s2 가 붙은 놈들은 파티션입니다.

MacBook-Pro:~ pelecs$ ls -l /dev/disk*

brw-r-----  1 root  operator    1,   0  2  8 21:28 /dev/disk0

brw-r-----  1 root  operator    1,   1  2  8 21:28 /dev/disk0s1

brw-r-----  1 root  operator    1,   2  2  8 21:28 /dev/disk0s2

brw-r-----  1 root  operator    1,   3  2  8 21:28 /dev/disk0s3

brw-r-----  1 root  operator    1,   4  2  8 21:28 /dev/disk1

brw-r-----  1 root  operator    1,   5  2  8 21:28 /dev/disk1s1


1) disk1s1 파티션을 마운트 해지합니다.


MacBook-Pro:Windows7 pelecs$ diskutil umount /dev/disk1s1 

Volume NO NAME on disk1s1 unmounted


2) /dev/disk1 을 rawdisk 로 갖는 vmdk 파일을 만듭니다.


MacBook-Pro:Windows7 pelecs$ VBoxManage internalcommands createrawvmdk -filename Sandisk.vmdk -rawdisk /dev/disk1

RAW host disk access VMDK file Sandisk.vmdk created successfully.


여기서 만들어진 Sandisk.vmdk 가 가상머신에서 쓸 하드디스크입니다.


3) disk1 을 통째로 VirtualBox 가 사용할 것이므로, 아래 명령어로 /dev/disk1 에 권한 설정을 다시 합니다.


MacBook-Pro:Windows7 pelecs$ sudo chmod 666 /dev/disk1



가상머신에 하드디스크 추가하기


6. 이제 하드디스크를 추가할 차례인데요... 하드디스크 추가하기 버튼을 누르면....



7. 기존디스크를 선택합니다.



8. 이제, 아까 만든 Sandisk.vmdk 를 선택합니다.



9. 자주 아래와 같은 에러가 발생하는데, 이 때마다 아래 명령을 쳐 주어야 합니다.
일단은 좀 귀찮더라도, 윈도우 설치가 끝날때까지 자주 해주어야 할 수도 있습니다.

VirtualBox 에서 /dev/disk1 을 가지고 있다가 가상머신이 종료되거나 설정이 바뀌거나 하면 Mac 이 다시 disk1 을 마운트해서 그렇습니다. (이와 같은 Auto Mount 를 막는 방법은 아래 나와있습니다)


MacBook-Pro:Windows7 pelecs$ diskutil umount /dev/disk1s1 



10. 이제 하드디스크가 추가되었네요...



11. CD-ROM 에 윈도우 7설치 DVD iso 파일을 마운트시키고, (시작) 버튼을 누르면 아래와 같이 윈도우 설치가 시작됩니다.



12 여기까지 진행되었으면 부팅이 잘 된겁니다.



13. 키보드 종류를 PC/AT 101키 호환 키보드(종류 3) 으로 설정하면 Lshift + space 로 한영전환을 할 수 있습니다.



14. 디스크 설정 부분입니다. 64GB 가 FAT32 로 포맷되어있습니다. (드라이버 옵션(고급)을 선택합니다.)



15. 기존 파티션은 (삭제) 하고, (새로 만들기) 로 30GB 를 할당합니다. (용량은 알아서 정하시면 됩니다.)



16 아래와 같이 파티션이 만들어졌습니다.



17. WIndow를 설치할 위치를 디스크 0 파티션 2 로 지정하고 윈도우 설치를 시작합니다.



18. 설치가 다 되어가는 중입니다.



19. 설치 마무리 중이네요...



20. 부팅 후 디스크 관리자입니다. (외장하드가 완전히 로컬 하드디스크로 인식되네요)




Mac 에서 파티션에 대한 Auto Mount 금지시키기


21. 파티션 이름을 아래와 같이 바꾸어 줍니다.



22. 가상머신을 종료한 후, 몇가지 작업을 해 줍니다.


MacBook-Pro:Windows7 pelecs$ sudo vi /etc/fstab 명령으로 파일을 생성 또는 편집해서 아래 내용을 추가합니다.

LABEL=SYSTEM   none ntfs ro,noauto

LABEL=WINDOWS7 none ntfs ro,noauto


MacBook-Pro:Windows7 pelecs$ cat /etc/fstab  명령으로 내용을 확인할 수 있습니다.

LABEL=SYSTEM   none ntfs ro,noauto

LABEL=WINDOWS7 none ntfs ro,noauto


USB 외장하드가 설치되면 맥북은 자동적으로 마운트를 시도합니다. 위와 같이 fstab 을 설정하면 볼륨 레이블이 SYSTEM, WINDOWS7 으로 되어있는 경우는 자동으로 마운트 되지 않습니다.

마무리하기

23. 최종적으로 Guest Additions 을 설치합니다.



3D 같은 것은 사용할 생각이 없으므로, Direct3D Support 는 설치하지 않았습니다.


이제 외장하드는 VirtualBox 의 전용물이 되었습니다. 외장하드 남은 공간에 Linux 를 설치할 수도 있고, 데이터 저장용 파티션으로 사용할 수도 있습니다.


맥북을 리부팅하거나 USB 를 뺏다가 다시 연결하면 /dev/disk1 에 대한 Permission 이 다시 설정됩니다. 이 경우는 아래 명령으로 디스크에 대한 Permission 을 666으로 바꾸어 주고 VirtualBox 를 진행하면 됩니다.


$ sudo chmod 666 /dev/disk1


USB 외장저장장치가 연결될 때, /dev/disk1 이 생성되는데, 이 때 Permission 을 설정할 수 있는 부분이 있을 것 같은데, 아직은 잘 모르겠네요... 없을지도 모릅니다. :)


듀얼모니터를 사용해서 보조모니터에 윈도우7을 Full Screen 으로 띄운 사진입니다.



같은 방법으로 윈도우8도 설치할 수 있는데, 이러한 경우라면 부팅시 USB 로 직접 부팅할 수 있겠군요.

맥으로 부팅한 상태라면 VirtualBox 로 가상머신으로 부팅시킬 수 있을 겁니다. 하지만 라이센스 문제가 있지 않을까 생각됩니다.