步驟一:找到插入的USB隨身碟的編號,並將其卸載。因為掛載的磁區沒辦法被VirtualBox所使用,必須要卸載;但在macOS上面直接從圖示做eject的話,系統會把整個USB device從/dev/裡面拿掉,故只能夠用指令的方式做卸載
- diskutil list
在這邊我的USB隨身碟的編號是/dev/disk3,下面有兩個分割區
/dev/disk3s1 <= 這邊放一個FAT32的磁區
/dev/disk3s2 <= 這邊才是Ubuntu 16.04的系統放置區
- diskutil unmountdisk /dev/disk3
Unmount of all volumes on disk3 was successful
步驟二:修改這個USB device在 /dev下面的設備檔案權限。預設這些設備的使用者都是root,這樣會造成VirtualBox在使用的時候因為權限不足而無法製作虛擬硬碟。修
- sudo chown $(whoami) /dev/disk3*
步驟三:製作VMDK虛擬硬碟檔案,要注意此指令的虛擬硬碟檔案要用絕對路徑
- VBoxManage internalcommands createrawvmdk -filename /Users/your-username-here/Documents/usbdrive.vmdk -rawdisk /dev/disk3
RAW host disk access VMDK file /Users/your-username-here/Documents/usbdrive.vmdk created successfully
步驟四:再次卸載USB device。改完權限之後,macOS又會雞婆的把USB device重新掛載一次,故必須要再次卸載之後才能夠使用
- diskutil unmountdisk /dev/disk3
步驟五:設定步驟三的VMDK檔案為VirtualBox的開機硬碟。開啟VirtualBox,弄出一個新的虛擬機器,在Hard disk選擇的時找到下面選項
- Use an existing virtual hard disk file
參考資料
- VirtualBox - Booting From USB (MAC)
- 在 macOS 的 VirtualBox 上从 USB 启动:這個說明裡面有usbdrive.vmdk的內容,其實就是一個ASCII file,存放usb device上面的一些資訊
- Is it possible to Bootcamp Windows 8.1 using USB on Late 2011 MBP?
- How to do raw device access with VirtualBox?
沒有留言:
張貼留言